Informatii generale
- Categorie: Web
- Judetul: Botoșani
- Surse: GitHub - bogdanwebdeveloper/adnex2024: Pentru olimpiada InfoEducatie 2024
- Homepage: http://adnex.lme.ro
Descriere
Proiectul nostru este o aplicație web care permite utilizatorilor să își creeze conturi și să gestioneze anunțuri personale. Funcționalitățile principale includ:
Creare conturi: Utilizatorii pot crea conturi noi pe platformă.
Postare anunțuri: Utilizatorii pot posta anunțuri (Ads) direct pe site.
Resetare parolă: În cazul în care utilizatorii își uită parola, aceștia o pot reseta prin intermediul unui link primit pe email.
Ștergere anunțuri: Utilizatorii au opțiunea de a șterge anunțurile postate anterior.
Mod Design: Utilizatorul poate alege dintre Dark Mode si Light Mode.
Pentru a asigura securitatea și validitatea acțiunilor, utilizatorii trebuie să își verifice adresa de email prin introducerea unui cod primit pe email. Această metodă de verificare ajută la prevenirea activităților frauduloase și la menținerea integrității platformei.
Tehnologii
Tehnologii Utilizate:
Front-end: Svelte, SvelteKit, Tailwind CSS
Back-end: Node.js, SvelteKit
Limbaje de Programare: JavaScript/TypeScript
Baza de Date: MongoDB, Prisma
Funcționalități Principale:
Creare și gestionare conturi utilizator: Utilizatorii pot crea conturi, posta anunțuri, reseta parola și șterge anunțuri.
Verificare prin email: Acțiunile utilizatorilor sunt validate printr-un cod trimis pe email pentru a asigura securitatea.
Algoritmi și Gestionarea Datelor:
Algoritmi: Implementăm algoritmi de adăugare, ștergere și căutare în arbori binari de căutare, utilizând Prisma pentru gestionarea bazei de date.
Arhitectura Datelor: Folosim MongoDB pentru stocarea datelor și JSON pentru structuri de date, asigurând o gestionare eficientă și flexibilitate în manipularea datelor.
Structura Codului și Modularitate:
Organizare: Codul este organizat în directoare dedicate și module logice pentru o mai bună gestionare și întreținere.
Componente Reutilizabile: Componentele Svelte sunt modularizate și reutilizabile, iar logica de afaceri este izolată în servicii și middleware.
Scalabilitate și Performanță:
Scalabilitate: Beneficiem de scalabilitate ridicată datorită componentelor Svelte și Tailwind CSS, împreună cu URL-uri dinamice, asigurând o creștere eficientă a aplicației la nivel mare.
Testare: Testăm aplicația folosind Postman în stadiul de dezvoltare, iar performanța este optimizată de tehnologiile noastre, Svelte și Prisma, care oferă o experiență rapidă și eficientă utilizatorilor.
Interacțiune și Design:
Design Responsive: Aplicația noastră are un design estetic și responsive, adaptat pentru diverse dispozitive, de la PC-uri și laptopuri la telefoane, tablete și TV-uri.
Navigabilitate Intuitivă: Am implementat o bară de navigare intuitivă pentru a facilita navigarea utilizatorilor pe site-ul nostru.
Interacțiune Accesibilă: Asigurăm acces facil prin paradigme de interacțiune tradiționale (mouse și tastatură) și naturale (tactile pe ecranele tactile).
Securitate:
Protecție Împotriva Atacurilor: Aplicația este protejată împotriva atacurilor de tip SQL Injection datorită utilizării MongoDB în loc de baze de date SQL.
Măsuri de Securitate: Implementăm măsuri stricte de validare a datelor de intrare, gestionare a erorilor și verificări suplimentare pentru a asigura securitatea aplicației. Prevenim și corectăm datele eronate sau malițioase de utilizator prin verificări riguroase și teste extinse.
Originalitate și Inovație:
Tehnologii Avansate: Utilizarea tehnologiilor moderne și avansate precum Svelte, SvelteKit, Prisma și MongoDB oferă o experiență de dezvoltare și utilizare de înaltă calitate, cu performanță ridicată și o arhitectură scalabilă.
Eficiență și Performanță: Prin combinarea Svelte și Prisma, aplicația beneficiază de o performanță excepțională, cu timp de încărcare rapid și actualizări reactive, oferind utilizatorilor o experiență fluidă și plăcută.
Design și Navigabilitate: Aplicația se remarcă prin designul său responsive, adaptându-se la diverse dispozitive și oferind o bară de navigare intuitivă, ceea ce facilitează utilizatorilor să găsească și să acceseze conținutul dorit.
Securitate Avansată: Prin folosirea MongoDB și implementarea unor măsuri stricte de securitate, aplicația este protejată împotriva unor atacuri comune precum SQL Injection, asigurând confidențialitatea și integritatea datelor utilizatorilor.
Testare și Întreținere Riguroasă: Testarea extinsă a aplicației în stadiul de dezvoltare și implementarea unor practici de întreținere și gestionare a codului curat și organizat asigură funcționarea corectă și fiabilitatea pe termen lung a aplicației.
Cerinte sistem
Browser Web Compatibil:
Google Chrome (versiunea 88 sau mai recentă)
Mozilla Firefox (versiunea 85 sau mai recentă)
Microsoft Edge (versiunea 88 sau mai recentă)
Safari (versiunea 14 sau mai recentă)
Browserele trebuie să aibă JavaScript activat.
Sistem de Operare:
Windows 10 sau mai recent
macOS 10.14 (Mojave) sau mai recent
Linux (distribuții moderne care suportă browserele compatibile)
iOS 14 sau mai recent (pentru dispozitive mobile Apple)
Android 10 sau mai recent (pentru dispozitive mobile Android)
Conexiune la Internet:
Conexiune stabilă la internet (broadband recomandat).
Hardware:
Minimum 4GB RAM (8GB RAM recomandat pentru o experiență optimă)
Procesor dual-core la 2GHz sau mai rapid
Realizatori
Bogdan Baiceanu
- Scoala: Colegiul National Mihai Eminescu
- Clasa: 11
- Judet: Botoșani
- Oras: Botosani
Denis Matei Vesel
- Scoala: Colegiul National “Mihai Eminescu”
- Clasa: 11
- Judet: Botoșani
- Oras: Trusesti