Impactify - Web - Bihor - Lucrari 2025 Nationala

Informatii generale

Descriere

Impactify este o platformă completă pentru organizarea și participarea la evenimente, oferind o experiență seamless atât pentru organizatori cât și pentru participanți. :rocket:

Feature-uri ale platformei:

  • :date: Creare și gestionare evenimente: Organizează evenimente cu configurări flexibile și înregistrare participanți (gratuit sau contra cost)
  • :busts_in_silhouette: Sistem de echipă: Acordă permisiuni membrilor pentru gestionarea evenimentului și scanarea codurilor QR pentru verificarea participanților
  • :control_knobs: Widget Timeline interactiv: Elementul de bază al platformei - adaugă widget-uri modulare pentru o experiență dinamică:
    • :bar_chart: Poll-uri interactive
    • :loudspeaker: Announcements pentru informații importante
    • :memo: Conținut Markdown pentru documentație detaliată
    • :wrench: Arhitectură extensibilă pentru noi tipuri de widget-uri
  • :movie_camera: Live Stream integrat: Embed-uri YouTube/Twitch pentru evenimente hibride
  • :speech_balloon: Chat în timp real: Comunicare instantanee între participanți și organizatori în timpul evenimentului
  • :globe_with_meridians: API public complet: Sistem de chei de acces pentru integrări cu aplicații terțe, documentat cu OpenAPI/Swagger

Internationalizare și accesibilitate

  • :first_quarter_moon: Mod Light/Dark
  • :globe_showing_europe_africa: Interfață internaționalizată folosind i18n routing. Limbi disponibile: Română și Engleză
  • :wheelchair_symbol: Design accesibil conform standardelor moderne

Ecosistem de dezvoltare

Pentru a facilita integrarea cu platforma, am dezvoltat:

  • :package: impactify-sdk: SDK TypeScript pentru Node.js, oferind acces typesafe la API-ul public
  • :robot: MCP Server în Go: Interfață pentru LLM-uri să interacționeze cu platforma (optimizat pentru Claude 4)
  • :books: Documentație completă: Disponibilă la docs.impactify.ro

Tehnologii

Frontend:

  • :high_voltage: Next.js: Framework-ul principal pentru dezvoltarea aplicației, oferind performanță și flexibilitate
  • :artist_palette: Shadcn UI: Colecție de componente UI moderne pentru o interfață consistentă
  • :dashing_away: Tailwind CSS: Framework CSS utilitar pentru stilizare rapidă și eficientă
  • :sparkles: Framer Motion: Biblioteca pentru animații fluide și interactive

Backend:

  • :link: tRPC: Soluția folosită pentru a conecta frontend-ul cu backend-ul într-un mod eficient și typesafe
  • :file_cabinet: Prisma: ORM pentru interacțiunea cu baza de date
  • :elephant: PostgreSQL: Baza de date relațională pentru stocarea evenimentelor, participanților și widget-urilor
  • :high_voltage: Redis: Storage în memorie pentru chat-ul live al evenimentelor

Servicii third-party:

  • :credit_card: Stripe: Integrat pentru procesarea plăților și gestionarea înregistrărilor la evenimente
  • :world_map: Mapbox: Utilizat pentru afișarea locației evenimentelor pe hartă
  • :outbox_tray: Uploadthing: Serviciu pentru gestionarea upload-urilor (thumbnail-uri evenimente)

Develop, Test, Deploy! :rocket:

Am scris Unit Tests folosind Vitest :test_tube: și End-to-End Tests folosind Playwright :performing_arts: pentru a asigura funcționalitatea completă a platformei.

Procesul de testare este automatizat folosind un pipeline de Continuous Integration prin intermediul GitHub Actions :counterclockwise_arrows_button: împreună cu Testcontainers și Docker :spouting_whale:.

Pentru deployment, folosesc Railway :locomotive: pentru toate serviciile utilizate în cadrul proiectului, cu deployment automat la fiecare push pe branch-ul production după trecerea cu succes a tuturor testelor. :white_check_mark:

Cerinte sistem

Pentru utilizarea platformei:

  • Browser modern (Google Chrome, Mozilla Firefox, Safari, etc.)
  • Conexiune la internet

Pentru dezvoltare:

  • MacOS, Linux sau Windows, cu cel puțin 8GB RAM, recomandat 16GB
  • Node.js 24.x
  • Go 1.24.x
  • Docker
  • Orice editor de text (VS Code, IntelliJ IDEA, etc.)

Realizatori

Paul-Gabriel Tal

  • Scoala: Colegiul Național “Samuil Vulcan”
  • Clasa: 12
  • Judet: Bihor
  • Oras: Beiuș

Screenshots