Configurare proiect
Node.js + Express.js + Sequelize + SQLite
1. Generarea fișierului package.json
Fișierul package.json este un fișier esențial în proiectele JavaScript care acționează ca un manifest al proiectului, oferind informații despre acesta, cum ar fi numele, versiunea, autorul și licența, și definind dependențele necesare pentru rularea aplicației, atât cele pentru producție, cât și pentru dezvoltare.
De asemenea, conține scripturi care permit automatizarea sarcinilor, cum ar fi pornirea serverului, construirea proiectului sau rularea testelor, și alte setări utile, cum ar fi punctul de intrare al aplicației sau link-ul către repository-ul proiectului.
Ne asigurăm că ne aflăm cu terminalul în locul în care vrem să generăm backend-ul și adăugăm manual folderul "server", după care ne mutăm cu terminalul în acel folder.
Tastăm următoare comandă în terminal, care va genera un fișier package.json:
npm init
După ce rulăm comanda, trebuie să trecem printr-o serie de întrebări opționale la care putem răspunde dacă ne dorim, dacă nu apăsăm enter până la capăt.

2. Adăugarea librăriilor necesare
Ne mutăm cu mouse-ul din nou în terminal și tastăm următoarea comandă care ne va ajuta să instalăm toate librăriile de care vom avea nevoie pe parcurs:
Descrierea librăriilor:
bcrypt – Criptează parolele și le verifică sigur folosind hashing.
cors – Permite sau restricționează accesul cross-origin la server.
dotenv – Încarcă variabile de mediu din fișier
.env.express – Framework minimalist pentru construirea serverelor și API-urilor Node.js.
jsonwebtoken – Creează și verifică token-uri JWT pentru autentificare securizată.
morgan – Middleware pentru logarea cererilor HTTP în server.
sequelize – ORM pentru gestionarea bazelor de date SQL cu Node.js.
3. Generarea cheilor de environment
Pasul 1. În cadrul folderului server adăugăm fișierul .gitignore, care va conține următoarele linii:
Pasul 2. În cadrul folderului server aăugăm fișierul de .env pentru a stoca configurări sensibile și variabile de mediu separat de codul sursă, cum ar fi parole, chei API, portul serverului sau string-ul de conexiune la baza de date.
Fișierul .gitignore este necesar pentru a exclude fișierul .env din controlul versiunilor, deoarece acesta conține informații sensibile precum parole, chei API sau string-uri de conexiune la baza de date.
Dacă .env ar fi urcat în repository, aceste date ar putea fi vizibile public sau accesibile altor dezvoltatori fără permisiune, creând riscuri de securitate.
Prin includerea lui în .gitignore, păstrăm codul sursă partajabil și sigur, iar fiecare mediu de dezvoltare sau producție poate avea propriile variabile configurate independent.

4. Configurare server
În cadrul folderului server, adăugăm un nou fișier care se numește index.js și care va avea următorul conținut:
Descriere cod folosit
const app = express();-> Creează o instanță a serverului Express.dotenv.config();-> Încarcă variabilele definite în fișierul.envînprocess.env.const PORT = process.env.PORT || 3000;-> Setează portul serverului: folosește valoarea din.envsau 3000 ca fallback.app.use(morgan('dev'))-> Adaugă Morgan ca middleware pentru logarea cererilor în format “dev” (scurt și detaliat pentru dezvoltare).app.use(cors());-> Activează CORS pentru toate rutele serverului, permițând accesul de pe alte domenii.app.use(express.json());-> Activează parsarea automată a cererilor cu body JSON, astfel încâtreq.bodysă fie disponibil.app.get('/', (req, res) => { ... })-> Definește o rută GET la/care răspunde cu un JSON{ message: 'Hello' }.app.listen(PORT, () => { ... })-> Pornește serverul pe portul specificat și afișează un mesaj în consolă când serverul rulează.
5. Generarea unui nou script
Mergem în cadrul fișierului package.json, și la secțiunea scripts adăugăm o nouă linie pe lângă cea de test:
Descriere script:
dev– este numele scriptului pe care îl poți rula cunpm run dev.node index.js– pornește fișierul principalindex.jsfolosind Node.js.--watch– spune Node.js să monitorizeze fișierul (și fișierele importate de el) pentru modificări. Dacă detectează vreo schimbare în cod, Node.js repornește automat aplicația.
6. Pornire server
Ne mutăm cu mouse-ul în terminal și rulăm scriptul pe care abia l-am generat:
Dacă totul este în regulă și serverul pornește, ar trebui să vedem mesajul "Server successfully started on port 3000":

Deoarece în cadrul fișierului index.js am setat ca dacă apelăm API-ul la adresa http://localhost:3000/ să primim un obiect cu cheia "message" și valoarea "Hello", putem merge în browser la acea adresa să testăm și noi și ar trebui să vedem acest răspuns:

Last updated