Skip to content

jamal474/NoteracyApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Welcome to Noteracy 👋

Version Version

Description:

Noteracy is your all-in-one solution for seamless note-taking and organization. With Noteracy, we can:

  • Create Notes : Capture your thoughts, ideas, and to-dos with ease.
  • Update & Edit : Keep your notes up-to-date as your projects and tasks evolve.
  • Delete Notes : Remove what's no longer relevant or needed.
  • Search Functionality : Effortlessly find the notes you need with powerful search capabilities.

Google Account Integration : Sign in using your Google account for a smooth and secure experience.


Technologies Used:

Express.jsNodeJSMongoDBReactHTML5CSS3

  • Authentication using : Passport.js

Hosting:

The website is hosted on cyclic.sh


Design:

Database:

2 Models :

  • User: Stores everything about the user including displayName, firstName, lastName, profileImage, and createdAt.
  • Notes: Stores a single note instance for a user and includes details like user, title, body, and createdAt.

Server-Side :

Rest API :

  • Express server with 3 routes:
    • auth : Authentication route that checks if user already has an account in the platform. If not, it inserts a new user, using passportJS's passport-google-oauth20 strategy.
    • dashboard : Handles all the requests after login for notes view etc.
    • user : to confirm authentication status of user anytime.

Client-Side :

Front-end was made using React.js with react-router for routing and react-helmet for custom head.


Install

npm install

Usage

Build the React frontend

cd client | npm run build

Create a .env file

MONGODB_URI = ''
GOOGLE_CLIENT_ID = ''
GOOGLE_CLIENT_SECRET = ''
GOOGLE_CALLBACK_URL = 'http://localhost:5000/google/callback'

Fill in these details from your MongoDB Atlas connection and Google OAuth credentials.

Set http://localhost:5000/google/callback in redirect URI in google credential.

Run the server

npm run dev

The application will now be accessible from http://localhost:5000

Production

npm run start

Show your support

Give a ⭐️ if this project helped you!