Skip to content

djantche/object-test-backend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Backend NestJS + MongoDB

API NestJS avec MongoDB, upload d'images via Supabase Storage et evenements realtime via Socket.IO.

Prerequis

  • Node.js 20+
  • MongoDB Atlas
  • Supabase project

Installation

npm install
cp .env.example .env

Sous PowerShell (Windows), utilisez:

Copy-Item .env.example .env

Configurez .env avec vos credentials Supabase et MongoDB Atlas.

Variables attendues:

  • DATABASE_URL
  • SUPABASE_URL
  • SUPABASE_ANON_KEY
  • PORT (optionnel, default 3001)
  • SUPABASE_BUCKET (optionnel, default objects)

Verification rapide

npm run build

Lancement en dev

npm run start:dev

Swagger

  • UI: http://localhost:3001/api/docs
  • Le schema OpenAPI documente les routes objects, les payloads multipart et les erreurs courantes.

Endpoints

  • GET / -> status simple JSON
  • POST /objects -> cree un objet (multipart/form-data: title, description, image)
  • GET /objects -> liste des objets tries par createdAt descendant
  • GET /objects/:id -> details d'un objet
  • DELETE /objects/:id -> supprime l'objet et son image de Supabase Storage

Realtime

Connexion Socket.IO sur le meme host/port:

  • object_created
  • object_deleted

Uploads

Les images sont stockees dans Supabase Storage (bucket objects par defaut, configurable via SUPABASE_BUCKET) et accessibles via des URLs publiques Supabase.

Architecture

  • src/objects/objects.module.ts - Feature module
  • src/objects/objects.controller.ts - HTTP routes
  • src/objects/objects.service.ts - Business logic
  • src/objects/objects.schema.ts - MongoDB schema (Mongoose)
  • src/objects/objects.gateway.ts - WebSocket events
  • src/objects/file-storage.service.ts - Supabase Storage integration
  • src/objects/dto/create-object.dto.ts - Input validation

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors