Taking care of our pets is a lot of work! Use this app to keep track of all the tasks necessary to keep your furry, feathered, & scaley friends happy & healthy.
Link to project: myPetPal
To avoid signing up, you may log in with the following credentials:
- Email: [email protected]
- Password: testtest
Feel free to play around and submit an issue should you find any.
Client: JavaScript, EJS, Bootstrap CSS
Server: Node, Express, MongoDB
Dependencies: bcrypt, connect-mongo, date-fns, dotenv, ejs, express, express-flash, express-session, method-override, mongodb, mongoose, morgan, nodemon, passport, passport-local, validator
- Secure login with Passport Auth
- Add multiple pets & assign tasks to pets
- View tasks by date
- Responsive for desktop & mobile
Install with npm
npm init
npm install bcrypt connect-mongo date-fns dotenv ejs express express-flash express-session method-override mongodb mongoose morgan nodemon passport passport-local validator
To run this project, you will need to add the following environment variables to your .env
file in /config/.env
PORT: <port>
(can be any port, ex: 3000)
DB_STRING: <your database uri>
- Implemented a date view so users can view tasks for specific dates
- Added ARIA roles
- Resolved icon issues
Planned Features & Improvements:
- Add monthly calendar view for tasks color-coded for each pet and/or type of task
- Increase accessibility by adjusting color contrast, ensuring that all buttons have names & titles, etc.
- Enable marking tasks complete from All Tasks page
- Fix current date view - should not show an option to 'Go to current date'
- Reproduce and fix an error where an edited pet is duplicated
- Clean and minimize css and js files
- Add template partials
We learned about the importance of branching, version control best practices, and resolving conflicts when merging pull requests. We also learned how important good communication is for successful app development as a team.
What else we learned: Bootstrap classes, working with date formats and comparing to database values, sorting tables