NotesAI

Welcome to NotesAi 👋

Version

About

NotesAI is the best place to jot down quick thoughts, or to save longer notes from your classes

Install

npm install

Run tests

npm run test

Author

:silhouette: Lewis Silvia Erhan Vitali

Show your support

Give a ⭐️ if this project helped you!

Site directory

Page Description
Login/Register Responsive pages that allow users to login and register
Notes Main site page where users can view all their notes through AI summaries with random questions dynamically rendered based on those notes.
Notes/:id Users can view their note with options to highlight text for definition and quiz themselves on said note. link to update note is also found here.
Note Users can create a new note at which point an AI summary is generated along with a title if none is provided. If accesed via update button then fields will be
prepopulated.

Required software & accounts

Installation

  1. To get the repository set up on your computer, open your terminal and move into your desired directory using the cd command.
  2. From the Code button copy the HTTPS/SSH key and run the command git clone followed by the key you copied.
  3. Run npm install to install the necessary dependencies.
  4. Create a new instance with Elephant SQL (or another PostgreSQL site) and copy the instance link created.
  5. In the root folder create a .env file and add the following lines:
  • VITE_chatGPT_KEY=

Make sure there are no spaces between the content on each line and ensure you don't add any commas or any other punctuation at the end of each line.

Libraries

Usage

Login/Register page:

When users first go to the site they are greeted with the landing page from which they are directed to either register or login. If the user doesn't have an account to begin with they are able to create an account.


Registering redirects to the login page when successful and Login redirects to the notes page.


Main page:

The notes page displays all user notes along with questions based on said notes, navigation seen above changes dynamically based on the current page.


Viewing items:

When a user clicks on an note on the main page they are redirected to the individual note page. The notes details are displayed here along with buttons that allow the user to utilise AI to understand and question themselves on their note.




Creating a note:

The create note page allows users to create add their own note to the application with at which point the AI generates a summary and title if none is provided. This page dynamically adds the contents of a note if accesed with the update button the note page.