An express server providing back-end functionality for https://github.com/bravint/spontaneously-nomadic-client.
Uses: Node | Express | Prisma | PostgreSQL | TypeScript
I wanted this server to reflect everything I have learnt over the course of my 6 months at Boolean UK as well as to explore using TypeScript and third party npm packages - getting familar with parsing documentation and looking for solutions to problems and bugs I encountered.
MVP completed : 2 week project with 3 day sprints
see upcoming features to see where I will take this project next!
Add abilty to have friends / followers to the server and client
- Passport.js, bcrypt, jsonwebtoken : handles user authentication
- Joi : validate requests to the server
- Prisma : ORM to abstract SQL database requests
- PostgreSQL : database to store client data
- TypeScript : add type-checking to JavaScript
- As a user I want be able to place pins/markers on a map of the world to mark places I have been to
- As a user I want be able to rate these places in order to track whether I like places
- As a user I want to be able to add places I would like to visit in the future
- As a user I want be able to create an account in order to save a list of places and my ratings
- As a user I want be able to see ratings for places that other users have visited
Prisma schema was derived from the following ERD:
Install dependencies: npm install
Start server: npm run dev
Optional: Compile .ts files to /dist folder: npm build