Full-stack notes management application.
Backend: Java (Spring Boot)
Frontend: React
Database: runs in Docker
Make sure you have Docker installed, then run:
docker-compose up --build- Frontend → http://localhost:3000
- Backend API → http://localhost:8081
To stop:
docker-compose downMake sure both the backend and the frontend dev server are running, then:
# Open the directory with the frontend part
cd ./notemanager-app
# Open Cypress interactive runner
npm run cypress:open
# Run headlessly (CI)
npm run cypress:runTests are located in cypress/e2e/notes.cy.js and cover:
- Viewing the notes list
- Switching language
- Creating a note
- Validation (empty title)
- Editing a note
- Deleting a note
Get all notes:
curl http://localhost:8081/notesCreate a note:
curl -X POST http://localhost:8081/notes \
-H "Content-Type: application/json" \
-d '{"title": "My Note", "content": "Hello world"}'Update a note:
curl -X PUT http://localhost:8081/notes/1 \
-H "Content-Type: application/json" \
-d '{"title": "Updated Title", "content": "Updated content"}'Delete a note:
curl -X DELETE http://localhost:8081/notes/1NoteManager/ ← Java Spring Boot backend
├── notemanager-app/ ← React frontend
├── docker-compose.yml ← runs everything together
└── README.md
| Method | URL | Description |
|---|---|---|
| GET | /notes |
Get all notes |
| GET | /notes/{id} |
Get note by ID |
| POST | /notes |
Create a note |
| PUT | /notes/{id} |
Update a note |
| DELETE | /notes/{id} |
Delete a note |