Family Album is a fullstack website where users can create and review image collections from trips they've taken from either their phone or home computer, along with geotagging by location to be identified on a map. In order to review or create an album of images, you must have an account. This project was part of Colt Steele's web dev course on Udemy to build a Fullstack Campgrounds app.
- Users can create, edit, and remove albums
- Users can review albums, and edit or remove their review
- User profiles include more information on the user (full name, email, phone, join date), their albums, and the option to edit their profile or delete their account
- Search image collections by name or location
- Sort albums by highest rating, most reviewed, lowest price, or highest price
- Install mongodb
- Create a cloudinary account to get an API key and secret code to store images on their cloud service
- Create a .env file (or just export manually in the terminal) in the root of the project and add the following:
CLOUDINARY_CLOUD_NAME=='<name>'
CLOUDINARY_KEY=''<key>
CLOUDINARY_SECRET='<secret>'
git clone https://github.com/granam180/family-album.git
cd family-album
npm install
- Node.js - Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.
- express - Fast, unopinionated, minimalist web framework for Node.js
- Fly.io - Fly® is a platform for running full stack apps and databases close to your users
- MongoDB - a database for modern applications
- Mongoose - Elegant MongoDB® object modeling for Node.js
- ejs - Embedded JavaScript templating
Create a .env file (or just export manually in the terminal) in the root of the project and add the following:
DATABASEURL='<url>'
API_KEY=''<key>
API_SECRET='<secret>'
Run mongod
in another terminal and node app.js
in the terminal with the project.
Then go to localhost:3000.
To get google maps working check this out.