nodejs-hw

Notes API

REST API для керування нотатками, побудований на Node.js, Express та MongoDB (Mongoose).

Стек технологій

Вимоги

Встановлення

npm install

Змінні оточення

Створіть файл .env у корені проєкту:

PORT=3000
NODE_ENV=development
MONGODB_URL=mongodb://localhost:27017/notes-api

Запуск

# режим розробки (з nodemon)
npm run dev

# продакшн
npm start

API ендпоїнти

Метод Маршрут Опис
GET /notes Отримати всі нотатки
GET /notes/:noteId Отримати нотатку за ID
POST /notes Створити нову нотатку
PATCH /notes/:noteId Оновити нотатку за ID
DELETE /notes/:noteId Видалити нотатку за ID

Модель нотатки

{
  "title": "string (required)",
  "content": "string",
  "tag": "Work | Personal | Meeting | Shopping | Ideas | Travel | Finance | Health | Important | Todo"
}

Структура проєкту

src/
├── controllers/
│   └── notesControllers.js   # Логіка обробки запитів
├── db/
│   └── connectMongoDB.js     # Підключення до MongoDB
├── middleware/
│   ├── errorHandler.js       # Глобальний error handler
│   ├── logger.js             # HTTP логер (pino)
│   └── notFoundHandler.js    # 404 handler
├── models/
│   └── note.js               # Mongoose схема нотатки
├── routes/
│   └── notesRoutes.js        # Маршрути Express
└── server.js                 # Точка входу