My Solar Garden - Frontend
My Solar Garden is an impact driven app here to support you in helping to keep our planet thriving. By signing up with My Solar Garden, you will be able to track your garden's health and, eventually, how much carbon is it offsetting.
My Solar Garden can give you daily updates as to how much moisture and light it's receiving. It will also provide innovative ideas on how to keep your garden healthy and thriving to continue to make a positive impact on our environment.
We want to live in balance with the diversity of our environment. It all starts with healthy soil, and that's what we will help you learn how to cultivate. It starts with one person. That person, is you.
🥉 3rd place winner at Turing's Demo Competition. Take a look at our presentation.
For access to all the repos that make up the Service Oriented Architecture of this application please visit our origanization page.
https://solar-garden-fe.herokuapp.com/
-
Versions
- Rails 5.2.4.3
- Ruby 2.5.3
-
Fork and clone the repository and then run the following commands:
bundle
(if this fails, try tobundle update
and then retry)rails db:create && rails db:migrate
-
Obtain Google OAuth credentials
-
Visit https://console.developers.google.com/ and create a new project
-
Select the project and on the left click OAuth consent screen, choose external, click create, and proceed with the required fields (if a field is not required you can skip it)
-
Click on Credentials on the left then click '+Create Credentials' at the top. Choose OAuth client ID, choose Web application, and under Authorized redirect URIs if you plan on testing Google OAuth with localhost you will want to include:
-
http://localhost:3000/auth/google_oauth2/callback
-
Click Create and you should receive a Client ID and Client secret. These will go in your application.yml file as:
-
GOOGLE_CLIENT_ID: '< your ID >'
-
GOOGLE_CLIENT_SECRET: '< your ID >'
-
rails s
- You should be able to access the app via http://localhost:3000/
- My Solar Garden's Front End repository does not have a database that holds any sort of information. Any and all information that is depicted on the My Solar Garden FE repo is gained through API connections to the My Solar Garden BE Repo. With this being said, My Solar Garden FE Repo uses an empty database for testing purposes.
- Clone the My Solar Garden FE repo
- My Solar Garden FE connects to the Back End Repository via the the Backend Heroku App
- In the terminal while
CD'd
into the FE repo, runbundle exec rspec
. This will run all of the tests within the FE repository
- Consume two or more external APIs
- Build APIs that return JSON responses
- Use an external OAuth provider to authenticate users
- Refactor code for better code organization/readability
- Utilize a Service-Oriented Architecture with a front-end, a back-end, and at least two microservices
- Implement a production-quality user interface using Bootstrap or other common CSS styling framework
- Optimize your application using at least one of the following
- Database indexing
- Eager loading
- Caching
- Background workers
- AJAX requests
- Practice good project management by using project boards, participating in daily stand-ups and team retros
- Utilize quality workflow practices: small commits, descriptive pull requests, and code reviews
- Write thorough, understandable documentation
- Alex Desjardins
- Angela Guardia
- Danielle Coleman
- Daniel Lessenden
- Drew Williams
- Eric Hale
- Hashim Gari
- Leah Riffell
- Logan Riffell
- Luke Hunter James-Erickson
- Nico Rithner
- Norma Lopez
- Roberto Rodriguez