Skip to content

ppuskar/shopping-cart

Repository files navigation

A shopping cart application with Handlebars as the UI, REST API in Node.js and MongoDB as the datastore.

Development / Run
-----------------

Start the app locally (when not using Docker):

```bash
npm start
```

Docker (recommended)
--------------------

This project includes a `docker-compose.yml` that runs the app and a MongoDB service. To start both services:

```bash
docker-compose up -d
```

Seeding
-------

On container start the DB will be seeded automatically from `seed/init-mongo.js` (skips seeding if products already exist).

Important Routes
----------------

- **Home**: `/` (GET)
- **User Signup**: `/user/signup` (GET form, POST to create account)
- **User Signin**: `/user/signin` (GET form, POST to authenticate)
- **User Profile**: `/user/profile` (GET — requires authentication)

Static assets are served from `/stylesheets/*` (e.g. `/stylesheets/style.css`).

Notes
-----
- The app mounts the user routes under `/user`, so redirects and links must reference that prefix (for example the signup form posts to `/user/signup`).
- CSRF protection is enabled and requires forms to include the hidden `_csrf` field (the views already provide this).

A shopping cart application with Handlebar as UI, restAPI in nodeJS and mongoDB as datastore.

To launch, open terminal and fire

npm start

Npte: The rest endpoints are developed around mongoDB are backing store.

About

A POC to learn NodeJS with mongoDB as data store.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors