https://github.com/th92rodr/notebook
Web application to take your notes.
https://github.com/th92rodr/notebook
docker express mongodb nodejs rest-api
Last synced: 3 months ago
JSON representation
Web application to take your notes.
- Host: GitHub
- URL: https://github.com/th92rodr/notebook
- Owner: th92rodr
- Created: 2019-09-20T02:19:37.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2023-03-03T00:44:15.000Z (over 3 years ago)
- Last Synced: 2025-01-21T23:13:12.654Z (over 1 year ago)
- Topics: docker, express, mongodb, nodejs, rest-api
- Language: JavaScript
- Homepage:
- Size: 6.65 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Notebook 📝
## Stack
- API Server:
/
- SPA App (Web Frontend):
- API Architeture: `REST`
- Database: 
## How To Run
### API Server
- Go to `server` directory:
```
cd server
```
- Run `docker-compose`:
```sh
docker-compose up
```
### SPA App (Web Frontend)
- Go to `web` directory:
```
cd web
```
- Install project dependencies:
```
npm i
```
- Start app:
The app will be running on port `3000`.
```
npm start
```
## Dependencies
### API Server
- **`express`**
Fast, unopinionated, minimalist web framework for node.
https://www.npmjs.com/package/express
- **`mongoose`**
ODM for MongoDB. It's a MongoDB object modeling tool designed to work in an asynchronous environment. Provides a straight-forward, schema-based solution to model your application data. It includes built-in type casting, validation, query building, business logic hooks and more.
https://www.npmjs.com/package/mongoose
- **`body-parser`**
Parse incoming request bodies in a middleware before the app's handlers. Able to parser requests in JSON format.
https://www.npmjs.com/package/body-parser
- **`jsonwebtoken`**
An implementation of JSON Web Tokens.
https://www.npmjs.com/package/jsonwebtoken
- **`bcrypt`**
A library to help you hash passwords.
https://www.npmjs.com/package/bcrypt
- **`dotenv`**
Dotenv is a zero-dependency module that loads environment variables from a .env file into process.env. Storing configuration in the environment separate from code is based on The Twelve-Factor App methodology.
https://www.npmjs.com/package/dotenv
- **`express-validator`**
An express.js middleware for validator.
https://www.npmjs.com/package/express-validator
- **`helmet`**
Helmet helps you secure your Express apps by setting various HTTP headers.
https://www.npmjs.com/package/helmet
- **`morgan`**
HTTP request logger middleware for node.js.
https://www.npmjs.com/package/morgan
- **`redis`**
A high performance Node.js Redis client.
https://www.npmjs.com/package/redis
### Web Frontend
- **`react`**
React is a JavaScript library for creating user interfaces.
https://www.npmjs.com/package/react
- **`react-dom`**
This package serves as the entry point to the DOM and server renderers for React. It is intended to be paired with the generic React package, which is shipped as react to npm.
https://www.npmjs.com/package/react-dom
- **`react-router-dom`**
DOM bindings for React Router.
https://www.npmjs.com/package/react-router-dom
- **`styled-components`**
Visual primitives for the component age. Use the best bits of ES6 and CSS to style your apps without stress.
https://www.npmjs.com/package/styled-components