CAR ASSISTANT (CA) is a Node/Express/MongoDB full stack application. This app helps users manage and plan their vehicle's auto repairs.
The idea was created to put into practice many concepts previously reviewed and full- CRUD data operations. CA was ideated to solve a real life problem, that many car ownwers have to deal with.
- AAU, Log into my account, so I can access to the app.
- AAU, I can create a new appointment by entering the information on a page that has a form and submitting it.
- AAU, I want to see a list of all the appointments I’ve made.
- AAU, I want to see a button for details for every car appointment.
- AAU, Once I click “+”, I want to be able to see my appointment details.
- AAU, I want to be able to eliminate appointments.
- AAU, I want to create a service in my car’s appointment page. Filling a form so it can select the type of service I want (price included).
- AAU, I want to be able to edit a service in my cars appointment page with an “Edit” button. I can have multiple services per appointment.
- AAU, I want to be able to access each view via a navigation bar at the top of the page with links to: ALL APPOINTMENTS, ADD APPOINTMENT.
- Reviewed project requirements.
- Brainstorming session with colleages.
- Created an ER diagram.
- Wrote user stories.
- Designed wireframes in Illustrator.
- Created a trello board with all goals to complete.
- Wrote code for UI.
- Wrote code for functionality, feature by feature.
- Tested its functionality.
The appointment schema contains many characteristics of the vehicle, and it is the main model for this app.
This model has different functionalities, using CRUD
Find the deployed app:
Method | URL |
---|---|
GET | "/" |
GET | "auth/google" |
GET | "oauth2callback" |
GET | "/logout" |
Method | URL |
---|---|
GET | "/new" |
GET | "/" |
GET | "/:id" |
POST | "/" |
DELETE | "/:id" |
Method | URL |
---|---|
GET | "/appointments/:id/services/new" |
GET | "/services/:id/edit" |
POST | "/appointments/:id" |
PUT | "/services/:id" |
- Node.JS
- JavaScript
- EJS
- Express.JS
- MongoDB
- Mongoose
- HTML
- CSS
- Adobe Illustrator (All images were designed in Illustrator for personal preference).
- Add a "Priority" feature.
- Create a new identity called Providers.
- Make Providers real time information integrate with CA application.
- Add a third party API: google maps, to search for closest providers, and provide location acuracy.
- Improve dropdown menus.
- Add a feature to allow users to rate providers, and services.