Create an application that can be used to write, save, and delete notes. This application will use an express backend and save and retrieve note data from a JSON file.
-
The application frontend has already been created, it's your job to build the backend and connect the two.
-
The following HTML routes should be created:
-
GET
/notes
- Should return thenotes.html
file. -
GET
*
- Should return theindex.html
file
-
-
The application should have a
db.json
file on the backend that will be used to store and retrieve notes using thefs
module. -
The following API routes should be created:
-
GET
/api/notes
- Should read thedb.json
file and return all saved notes as JSON. -
POST
/api/notes
- Should receive a new note to save on the request body, add it to thedb.json
file, and then return the new note to the client. -
DELETE
/api/notes/:id
- Should receive a query parameter containing theid
of a note to delete. This means you'll need to find a way to give each note a uniqueid
when it's saved. In order to delete a note, you'll need to read all notes from thedb.json
file, remove the note with the givenid
property, and then rewrite the notes to thedb.json
file.
-
AS A user, I want to be able to write and save notes
I WANT to be able to delete notes I've written before
SO THAT I can organize my thoughts and keep track of tasks I need to complete
For users that need to keep track of a lot of information, it's easy to forget or be unable to recall something important. Being able to take persistent notes allows users to have written information available when needed.
Application should allow users to create and save notes.
Application should allow users to view previously saved notes.
Application should allow users to delete previously saved notes.
One of the most important skills to master as a web developer is version control. Building the habit of committing via Git is important for two reasons:
-
Your commit history is a signal to employers that you are actively working on projects and learning new skills.
-
Your commit history allows you to revert your codebase in the event that you need to return to a previous state.
Follow these guidelines for committing:
-
Make single-purpose commits for related changes to ensure a clean, manageable history. If you are fixing two issues, make two commits.
-
Write descriptive, meaningful commit messages so that you and anyone else looking at your repository can easily understand its history.
-
Don't commit half-done work, for the sake of your collaborators (and your future self!).
-
Test your application before you commit to ensure functionality at every step in the development process.
We would like you to have well over 200 commits by graduation, so commit early and often!
You are required to submit the following:
-
The URL of the deployed application
-
The URL of the GitHub repository
© 2019 Trilogy Education Services, a 2U, Inc. brand. All Rights Reserved.