Skip to content

JoeMics/charter

 
 

Repository files navigation

Charter

A collaborate app to share maps and points of interest with others.

Built with Node.js, Express, Bootstrap 5.1, JQuery, EJS, PostgreSQL, CSS/ SASS, and hosted with Heroku

» View Live Demo «

📚 Introduction

Charter is a full-stack application that allows users to create maps and pin different points of interests on the area to share them around.

With millions of people staying indoors due to the pandemic, it's become harder for everyone to go around and find new interesting places. This is where Charter comes in and helps people recommend their favorite spots around the city, and provide their reviews on feedback on the spots. This makes it easier for people to simply search for spots near them and share them around.

🤝 Collaborators:

  • Adam Hirzalla (@adamhirzalla) - Back-end, database architecture & API
  • Joseph Micla (@JoeMics) - Front-end, Bootstrap UI/UX
  • Leon Zhou (@LeonXZhou) - GoogleMaps API Research

This app was created as part of our midterm project for Lighthouse Labs - Web Development Bootcamp. The goal was to create a full-stack application from start to finish in just one week.

⚛️ Stack and Tools

⭐ Features

  • Create your own sharable map
  • Add/edit/delete pins to an existing map
  • Favorite different maps to save them on your profile
  • Collaborate with different users on the same map
  • Customize your maps/pins

✨ Special Features:

  • Search for different maps by title or description
  • View users' profiles along with their maps/contributions/favorites
  • Customize your maps and pins by choosing different themes
  • Include pin information such as description and images to be viewed by other users

🛠 Installation

The project is live here, but if you would prefer a local installation:

  1. Clone or download this repository
    git clone https://github.com/adamhirzalla/charter
    
  2. Create a .env by using .env.example as a reference: cp .env.example .env
  3. Update the .env file with your correct local psql information
    • username: labber
    • password: labber
    • database: midterm
  4. Navigate to the project directory and install dependencies cd charter && npm i
  5. Fix to binaries for sass: npm rebuild node-sass
  6. Reset database: npm run db:reset

    Check the db folder to see what gets created and seeded

  7. Run the development server: npm run local

    Nodemon is used, so you should not have to restart your server

  8. Visit http://localhost:8000/ on your browser

📷 Screenshots

Home

Map View

Edit Pin

Profile

✔ Dependencies

🧾 Resources

About

LHL Project - Midterm project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 52.4%
  • EJS 40.8%
  • SCSS 6.6%
  • Other 0.2%