An open API service indexing awesome lists of open source software.

https://github.com/muradisazade777/notenest

A clean and minimal Python backend for creating, reading, updating, and deleting notes. Data is stored in a local JSON file. Built with Flask, this project is perfect for learning RESTful API design and file-based persistence.
https://github.com/muradisazade777/notenest

api backend backend-api json libary modules python service token

Last synced: 7 months ago
JSON representation

A clean and minimal Python backend for creating, reading, updating, and deleting notes. Data is stored in a local JSON file. Built with Flask, this project is perfect for learning RESTful API design and file-based persistence.

Awesome Lists containing this project

README

          

# ๐Ÿงพ NoteNest
**NoteNest** is a lightweight and modular Python backend for managing notes via RESTful APIs. Built with Flask and powered by JSON file storage, it offers a clean and scalable foundation for note-taking applications, prototypes, or backend learning projects.
---

## ๐Ÿš€ Features

- ๐Ÿง  Create, read, update, and delete notes via RESTful endpoints
- ๐Ÿ“ Stores data locally in a structured `notes.json` file
- ๐Ÿงฉ Modular architecture with clear separation of models, services, and utilities
- ๐Ÿ” Easy to test and extend with new features or database integrations
- ๐Ÿงช Optional unit tests for core logic.

---

## ๐Ÿ“ Project Structure

```bash
NoteNest/
โ”œโ”€โ”€ app.py # Flask server and route registration
โ”œโ”€โ”€ notes.json # Local JSON file for storing notes
โ”œโ”€โ”€ models/ # Note schema and data structure
โ”‚ โ””โ”€โ”€ note.py
โ”œโ”€โ”€ services/ # Business logic: create, read, update, delete
โ”‚ โ””โ”€โ”€ note_service.py
โ”œโ”€โ”€ utils/ # JSON file helpers: read/write operations
โ”‚ โ””โ”€โ”€ file_handler.py
โ”œโ”€โ”€ tests/ # Unit tests (optional)
โ”‚ โ””โ”€โ”€ test_notes.py
โ”œโ”€โ”€ requirements.txt # Python dependencies
```
๐Ÿ“ก API Endpoints
POST /notes
Create a new note.

Request:
```
json
{
"title": "First Note",
"content": "This is my first note"
}
```
Response:
```
json
{
"id": 1,
"title": "First Note",
"content": "This is my first note"
}
```
GET /notes
Retrieve all notes.

Sample Response:
```
json
[
{
"id": 1,
"title": "First Note",
"content": "This is my first note"
}
]
```
** GET /notes/
** Retrieve a specific note by ID.
** PUT /notes/
** Update an existing note.
** DELETE /notes/
** Delete a note by ID.

---
โš™๏ธ Getting Started
1. Clone the repository
```bash
git clone https://github.com/yourusername/notenest.git
cd notenest
3. Install dependencies
bash
pip install -r requirements.txt
4. Run the server
bash
python app.py
Server will start at http://localhost:5000
```
๐Ÿง  Technologies Used
Python 3.x

Flask

JSON file storage

๐Ÿ“Œ Notes
This project is ideal for:

Backend learners exploring RESTful APIs

Quick prototyping without database setup

Extending into full-stack apps with React, Vue, or mobile frontends.

โœจ Author
Murad โ€” Full-stack developer & system architect GitHub: @MuradIsazade777