Install Nocturnal with npm or yarn
npm install
or
yarn add
Client:
- Axios
- Prop-Types
- React Hook Form
- React Icons
- React Router Dom
- React Toastify
- Styled Components
- Styled System
- Yup
- Create an account
- Login
- Create Journal
- Create notes
- List Journals
- Click on a Journal
- List notes
- List the note content
- Logout
- Shows loader when is loading request's
- Input validations
- Toasts with user informations
- Responsive web app: mobile, tablet and desktop
To complete this assessment, you will need to write a simple React web app, using the code from this repo as starter.
The purpose of this assessment is to assess your skills and approach to composing a simple web app given an API feed. We will also assess the generated HTML, CSS, and JS output.
This assessment is expected to take about 3-5 hours.
Your goal is to implement a simple React application, where users will be able to create journals.
Although its a very basic exercise, we will be looking for simple, well-designed, well-commented and clear code in the submission.
The user of this react application should be able to create an account, login and create a journal and on the journal create notes.
- Create an account
- Login.
- Create Journal.
- Create notes.
- List Journals.
- Click on a Journal.
- List notes.
- List the note content.
API can be launched using npm start. You will need to run npm install once you starting working on the project to install dependencies.
Endpoint | Result |
---|---|
/auth/login | Login |
/auth/signup | Sign up |
/journals/entries/:id | List all journals from user |
-
post => '/auth/login', user.login'
-
post => '/auth/signup', user.signup'
-
get => '/journals/entries/:id', journal.getEntries'
-
get => '/journals/:id', journal.getJournal'
-
post => '/journals/', journal.create' title : String
-
post => '/journals/entry/:id', journal.addEntry' {content,title} : Object
-
put => '/journals/entry/:id', journal.updateEntry' {content,title} : Object
-
put => '/journals/:id', journal.updateJournal' title : String