Skip to content

RodoMark/mapple

Repository files navigation

MAPPLE

=========

Mapple is a mulitpage, full-stack app, that saves and manages maps and map locations with tags for a user. Maps are orgainzed by interest and can be edited, organized, and favorited.

Mapple is built using the LEAFLET.jsAPI with attribution to OpenStreetMap API, ES6 server side NodeJS, EXPRESS, CSS and SASS, and PostgreSQL and pg for DBMS

Screenshots

"Mapple" "Map" "Login"

Getting Started

  1. Create the .env by using .env.example as a reference: cp .env.example .env
  2. Update the .env file with your correct local information
  • username: labber2
  • password: labber2
  • database: midterm
  1. Install dependencies: npm i
  2. Fix to binaries for sass: npm rebuild node-sass
  3. In psql, run the command CREATE ROLE labber2 WITH SUPERUSER LOGIN PASSWORD 'labber2';
  4. Create the database: CREATE DATABASE midterm
  5. Install the table schema with \i db/schema/01_schema.sql
  • Then seed the database tables, in the following order:

    • \i db/seeds/01_users.sql
    • \i db/seeds/02_interests
    • \i db/seeds/03_mapss.sql
    • \i db/seeds/04_maps.sql
    • \i db/seeds/05_maps.sql
    • Check the db folder to see what gets created and seeded in the SDB
  • Check the db folder to see what gets created and seeded in the SDB

  1. Run the server: npm run local
  • Note: nodemon is used, so you should not have to restart your server
  1. Visit http://localhost:8080/

Warnings & Tips

  • Do not edit the layout.css file directly, it is auto-generated by layout.scss
  • Split routes into their own resource-based file names, as demonstrated with users.js and widgets.js
  • Split database schema (table definitions) and seeds (inserts) into separate files, one per table. See db folder for pre-populated examples.
  • Use the npm run db:reset command each time there is a change to the database schema or seeds.
    • It runs through each of the files, in order, and executes them against the database.
    • Note: you will lose all newly created (test) data each time this is run, since the schema files will tend to DROP the tables and recreate them.

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change

Dependencies

  • Node 10.x or above

  • NPM 5.x or above

  • PG 6.x

  • Bcrypt 5.0.0 or above

  • Body-parser 1.19.0 or above

  • Bootstrap 4.6.0 or above

  • Chalk 2.4.2 or above

  • Cookie-session 1.4.0 or above

  • Dotenv 2.0.0 or above

  • ejs 2.6.2 or above

  • Express 4.17.1 or above

  • Organ 1.9.1 or above

  • Node-sass-middleware 0.11.0 or above

  • Pg 6.4.2 or above

  • Pg-native 3.0.0 or above

About

See interesting things on maps with mapple.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •