Informatii generale
- Categorie: Web
- Judetul: Timiș
- Surse: GitHub - mihai888nextlab/synaro · GitHub
- Homepage: https://synaro.tech
Descriere
Synaro este o platformă web pentru developeri care acoperă ciclul de la idee la proiect rulabil: generare din limbaj natural, medii Docker izolate, workspace (editor, terminal, preview), chat AI pe codebase și agenți autonomi pentru automatizare. ![]()
Pe lângă UI, platforma expune API public, SDK TypeScript (@synaro/sdk) și MCP, astfel încât proiectele și agenții pot fi controlați și din unelte externe (CLI, scripturi, Cursor / LLM-uri).
Tehnologii
Feature-uri ale platformei
Proiecte din limbaj natural: descrii ce vrei să construiești; Synaro generează structură, config și cod de start. Runtime-uri suportate: Node.js, Python, Go, Nginx, Ubuntu sau detectare automată.
Import proiect: clone din GitHub sau upload folder local, apoi lucrul continuă în același workspace.
Medii Docker per proiect: fiecare proiect are container propriu — provisionare, start/stop, preview live (proxy local în dezvoltare; subdomain prin Traefik în producție).
Workspace: file tree, editor (Monaco), chat AI pe fișiere, terminal în container (xterm.js), preview al aplicației și download arhivă.
Task-uri AI pe proiect: flux clarificare → ANALYZING → GENERATING → APPLYING. Modificările pe repo sunt validate și aplicate prin ai-orchestration-service(Kimi / Moonshot).
Colaborare: invitații pe proiect cu token și dată de expirare.
Agenți: agenții nu depind de un container de proiect. Se creează și gestionează din /agents(nume, system prompt, tool-uri, model, cron, MCP, memorie, enable/disable). Pot rula la cerere sau pe schedule și lasă istoric de run-uri cu pașii ReAct vizibili în UI.
Tool-uri built-in:
web_search— căutare web (Brave Search)http_get/http_post— cereri HTTP pe URL-uri publice (cu protecție SSRF)list_files/read_file/write_file/delete_file— workspace de fișiere al agentuluiremember/recall— memorie key/value pe agentlist_projects/get_project/start_project/stop_project— control proiecte Synarorun_agent— delegare către un alt agent- tool-uri din servere MCP configurate pe agent
finish— marchează răspunsul final
Ciclu run (ReAct): trigger din UI / API / SDK / CLI / cron → PENDING → RUNNING (gândire → tool call → observation → pas următor) → DONE / FAILED / CANCELLED. Dacă un server MCP cere autentificare, run-ul trece în NEEDS_INPUT, utilizatorul trimite credențialele și execuția continuă.
Vizibilitate: timeline pe /agents/{id}/runs/{runId}, widget last run pe dashboard, indicatori în header pentru run-uri active; email opțional la finalizare.
Dashboard personalizabil: layout pe grid (react-grid-layout), drag-and-drop, widget-uri (KPI, showcase proiecte/agenți, activity, shortcuts, last run, API keys), salvat per utilizator.
Autentificare și cont: email/parolă, OAuth Google/GitHub (NextAuth), verificare email, reset parolă (Resend), settings (profil, securitate, sesiuni) și generare chei API.
Căutare globală pe proiecte, agenți și activitate din shell-ul aplicației.
Voce: input STT și output TTS (ElevenLabs, cu fallback browser).
API public: autentificare cu chei sk_live_…, documentat OpenAPI; operații pe proiecte, task-uri AI, agenți, run-uri, memory; ~120 req/min/cheie.
Internationalizare și accesibilitate
Mod Light / Dark / System
Interfață internaționalizată. Limbi disponibile: Română și Engleză
Design accesibil; teste a11y cu Playwright și axe-core
Ecosistem de dezvoltare
Pentru a facilita integrarea cu platforma:
@synaro/sdk: SDK TypeScript pentru Node.js (≥ 18) — client tipizat pentru /api/v1(proiecte, task-uri, agenți, run-uri, memory) și CLIsynaro(npx synaro me, deploy,agents run, etc.)
MCP Server Synaro: tool-uri pentru LLM-uri / Cursor — create proiect, deploy, logs, agenți, status
Agenți ca clienți MCP: pe lângă MCP-ul platformei, fiecare agent poate avea mcpServersproprii;agent-runnerîncarcă tool-urile la runtime (inclusiv fluxul NEEDS_INPUT pentru auth)
Documentație: synaro.tech/documentation (EN + RO) — overview, agenți, API public, SDK
Tehnologii
Frontend
Next.js: framework principal (Pages Router, React 19)
Shadcn UI / Radix UI: componente UI
Tailwind CSS: stilizare utilitară
Framer Motion: animații
Recharts, react-grid-layout: grafice și dashboard
Monaco Editor, xterm.js: editor și terminal în browser
Backend
Fastify + Zod: microservicii tipizate
project-service— lifecycle / metadata proiecteenvironment-service— Docker, fișiere, terminal WebSocket, gitai-orchestration-service— task-uri AI pe codebaseexecution-manager— start/stop proces app, loguriagent-service— CRUD agenți, trigger, memory, webhooksagent-runner— buclă ReAct, catalog tool-uri, MCP runtime, scheduler cronmcp-server— bridge MCP → API Synaro
Prisma: ORM
PostgreSQL: bază de date (utilizatori, proiecte, agenți, run-uri)
Docker: runtime izolat per proiect
NextAuth.js: autentificare (sesiuni, OAuth, adapter Prisma)
Servicii third-party
Moonshot / Kimi: LLM pentru proiecte și agenți
Brave Search: căutare web pentru agenți (web_search)
Resend: email (verificare, reset parolă)
ElevenLabs: STT / TTS (opțional)
Traefik: reverse proxy și TLS în producție (*.synaro.tech)
Develop, Test, Deploy! 
Unit tests cu Jest
(app) și Vitest (SDK); End-to-End cu Playwright
; a11y cu axe-core.
CI prin GitHub Actions
(lint, Jest, SDK build/test, Playwright, a11y), cu Docker
pentru Postgres și microservicii.
Deploy pe VPS cu Docker Compose + Traefik, după trecerea testelor. ![]()
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 20.x sau mai nou
- Docker
- Orice editor de text (VS Code, Cursor, IntelliJ IDEA, etc.)
Realizatori
Cristi Stiegelbauer
- Scoala: Liceul Teoretic “Grigore Moisil”
- Clasa: 10
- Judet: Timiș
- Oras: Ghiroda
Mihai Gorunescu
- Scoala: Liceul Teoretic “Grigore Moisil”
- Clasa: 11
- Judet: Timiș
- Oras: Dumbravita
Screenshots


