Ever wondered what exactly your carbon footprint is. Or have you wondered if its really worth taking the train over the bus or an Uber.
CarbonPal is an website for tracking carbon emissions due to travel. A user can enter their vehicles, modes of transportation and trips and find out how much carbon they are emitting. Additionally they will be able to learn about the different emissions from alternative modes of transportation.
The application will store Users, Lists and Items
- users can have multiple vehicles and trips (via references)
- each trip can have a vehicle in the mode of transportation category (via reference)
An Example User:
{
username: "carbonCrusher",
hash: // a password hash,
trips: // an array of references to trip documents,
vehicles: // an array of references to vehicle documents,
}
An Example Vehicle:
{
user: // a reference to a User object
name: "Chevy Volt 2014",
company: "Chevrolet",
model: "Volt",
year: 2014
MPG: 35,
electric: false,
hybrid: true,
createdAt: // timestamp
}
An Example Trip:
{
user: // a reference to a User object
name: "trip to work",
modeOfTransportation: "Bus",
distance: 3.5,
duration: 15,
numPassengers: 2
createdAt: // timestamp
emissions: 30.2
}
page for creating a new vehicle
page for showing creating a new trip
page for viewing statistics about carbon emissions
page for viewing summary of user's carbon usage
- as non-registered user, I can register a new account with the site
- as a user, I can log in to the site
- as a user, I can create a trip and track the carbon related emissions
- as a user, I can view all of the trips that I have created
- as a user, I can add a vehicle to use for future logged trips
- as a user, I can view summary statistics about my carbon emission
- as a user, I can learn about ways to reduce carbon emissions
- (2 points) Using Bootstrap
- I'm going to use Bootstrap to design the CSS of my website
- I will need to learn how Bootstrap works
- (3 points) Use External APIs
- I plan to use Google maps API to help track user routes
- I plan to use other APIs to help provide additional carbon emission statistics such as CoolClimate API
(3 points) Perform Client Side Form Validation with JavascriptI plan to use form validation for login and entry for fields related to created vehicles and trips, I have already found some relevant information here
- (2 points) Deploying on Heroku
- (2 points) Using MongoDB-Atlas as database
9 points total out of 8 required points
- Form Validation
- Google Maps API - (add link to source code that was based on this)
- CoolClimate API