Primăria Vatra
Un site public la nivel de bancă: 417 pagini fără nicio încălcare de accesibilitate și petiții online de la cetățeni.
- Client
- primariavatra.md
- Oraș
- Vatra, mun. Chișinău
- An
- 2026
- Status
- Funcționează

Provocarea
Primăria lucra pe WordPress cu pluginuri. Noul site trebuia să respecte legea: accesibilitate pentru persoanele cu dizabilități (HG 728/2023), publicarea deciziilor și a bugetului, termenele de răspuns la petiții conform Codului administrativ. Trebuiau migrate 166 de documente și sute de adrese vechi, iar angajații aveau nevoie de un panou de administrare sigur.
Soluția
Am proiectat un sistem din patru părți independente (site, API, panou de administrare, infrastructură) cu un contract OpenAPI unic. Am implementat macheta existentă 1:1 și am adăugat tot ce lipsea din ea: versiunea mobilă, stările, paginile juridice, căutarea. Panoul de administrare cu roluri, 2FA, revizii și postare automată pe Facebook l-am construit de la zero.
Rolul nostru: Designul site-ului nu ne aparține: macheta Figma am primit-o gata și am implementat-o 1:1. Munca noastră a fost arhitectura și dezvoltarea site-ului, a API-ului, a panoului de administrare și a infrastructurii. Designul panoului de administrare l-am făcut noi.
Ecranele proiectului
Ce am construit
Site public
- Știri, anunțuri, evenimente, servicii cu formulare, consiliul local, „Transparență”
- Registru de documente cu căutare și filtre după categorie și an
- Petiții cu număr de înregistrare și termen de răspuns conform legii
- Widget de accesibilitate conform HG 728/2023: contrast, font, cursor, navigare
- Trei limbi cu adrese localizate, RSS, căutare, hartă a site-ului
- Protecția formularelor cu ALTCHA, fără servicii terțe și fără cookie-uri
Panou de administrare
- Autentificare: parolă, 2FA obligatorie și coduri de rezervă
- 5 roluri și o matrice de permisiuni „tip de conținut × acțiune”
- Editor cu file RO/RU/EN și marcaje „lipsește traducerea”
- Istoric de versiuni cu comparare rând cu rând și revenire
- Publicare programată, previzualizare, ciorne care rezistă la reîncărcarea paginii
- Secțiunea de petiții: executori, termene, întârzieri, prelungire conform legii
- Postare automată a știrilor și evenimentelor pe Facebook, cu foto și video
API
- NestJS pe Fastify: 277 de operațiuni, 59 de tabele PostgreSQL
- Ciclul de viață al înregistrării: ciornă → verificare → publicare → arhivă
- Căutare full-text în trei limbi, tolerantă la greșeli de tastare
- Media: antivirus ClamAV, curățarea EXIF, reconstruirea PDF, video de până la 4 GB
- Sluguri RU conform GOST 7.79, redirecționări 301 automate la schimbarea adresei
Securitate și infrastructură
- Nivel OWASP ASVS L2: Argon2id, verificarea parolelor în bazele de scurgeri, CSRF, CSP strict
- Jurnal de audit doar cu adăugare: editarea e interzisă la nivelul bazei de date
- Docker, monitorizare Prometheus/Grafana/Loki, alerte în Telegram
- Backup-uri restic cu verificare lunară a restaurării
- ≈400 de teste API, 228 de teste pentru site, e2e în două viewporturi
Rezultatul
Primăria are propriul stack, fără dependență de WordPress: conținutul îl gestionează angajații prin panoul de administrare cu roluri și 2FA.
Cetățenii depun petiții online și primesc număr de înregistrare, iar termenele de răspuns sunt urmărite automat.
Site-ul trece auditul automat de accesibilitate axe pe toate cele 417 pagini, fără încălcări.
312 adrese vechi sunt redirecționate prin 301, iar documentele au fost migrate fără pierderi.
Publicările apar automat și pe pagina de Facebook a primăriei.
Stack
Integrări

Vrei la fel?
Spune-ne despre sarcină — în 24 de ore revenim cu soluția, termenele și planul de lansare.