/notes-frontend

Notes web app using react

Primary LanguageJavaScriptMIT LicenseMIT

Notes

Node.js CI

react-version react-version npm version express version mongoose version passport version chai-http version

follow follow

Introduction

The simplest way to keep notes!

Manage your notes. Add, view, edit or delete them easily.

This repository contains the code for the front end of Notes. Refer the express app for back end side (RESTful API using Express and Node).

:(

Getting started

These instructions will get you a copy of the project up and running on your local machine for development.

Prerequisites

  1. Node.js - a JavaScript runtime
  2. Git - for cloning and version control

Installing

  • Clone the repository

    git clone https://github.com/siddheshkothadi/notes-frontend
    
    cd notes-frontend
    
  • Install the dependencies

    npm install
    
  • After all the dependencies are installed, start the website on localhost:3000

    npm start
    

    NOTE: Do not forget to set up the back end server and make sure that you are running it on localhost:5000 !

Built With

  • Front end
    • React : A Javascript library for building beautiful user interfaces
      • React Hooks : For using state and other react features without writing a class
  • Back end
    • Node.js : A Javascript runtime
    • Express : Web framework for Node.js
    • MongoDB Atlas : Global cloud database service for modern applications
    • Mongoose : Elegant and simple MongoDB object modeling for Node.js
    • Passport : For authentication using Google OAuth 2.0
    • Mocha and Chai : For end-to-end testing

Demonstration

demonstration gif

React component tree

          App
          / \
         /   \
    Header   Dashboard
                /\
               /  \
         Textbox   Notes
         (To Add   (Contains 
          a Note)      Notes)

TODO

  • Add tests for front end using Jest
  • Setup CI

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Contact

You can contact me directly on Twitter or via email at siddhesh.kt@gmail.com