A project created to host reviews of aquariums all over the US. Each aquarium can have multiple reviews including overall quality rating and jellyfish exhibit rating, as well as a gallery of user-uploaded photos. The reviews are only posted with permission but available to be viewed publicly by anyone. This site implements a custom JWT authentication mechanism without using any auth frameworks.
- Interactive Map with over 100 aquarium locations in the US
- JWT User authentication from scratch
- Verified users post reviews and photos of aquariums
- Backend: Express.js, Node.js
- Frontend: React.js
- Database: MongoDB
- Map API: MapBox SDK
- Cloud Image Hosting: Google Cloud Buckets, Multer
- Cloud Deployment: Google Cloud Run
- Updating npm packages
npm install
- Set up .env file
MONGO_URI=<Your MongoDB database URI> JWT_SECRET=<Your Base64 secret key for JWT> PROD_URL=<The URL of the deployed site>
- Compiling a build for deployment:
npm run build
- Running the site's Express.js server locally:
npm start
Designed by Theresa He-Cheng