Problema
Orice echipă Rails ajunge la același moment. O parte din produs are nevoie de un admin și opțiunile nu sunt grozave. Ori generezi scaffolding și cheltuiești următorii doi ani întreținând cod pe care nimeni nu l-a scris intenționat. Ori tragi în proiect un framework care devine propriul lui ecosistem, cu propriile upgrade-uri, convenții și bug-uri.
Am vrut o a treia opțiune: descrie admin-ul pe care îl vrei, lasă gem-ul să-l randeze, păstrează escape hatch-ul deschis.
Abordare
- Configurare, nu generare. Resursele Avo sunt clase Ruby care descriu fields, acțiuni, filtre și permisiuni. Fără generare de cod = fără cod generat de întreținut.
- Rails-native, Hotwire-first. Avo folosește Turbo și Stimulus pentru ca interacțiunile să fie rapide fără SPA. O echipă Rails nu trebuie să învețe un stack frontend nou ca să-l extindă.
- Escape hatch gratuit. Fiecare resursă Avo se mapează pe un controller Rails normal dedesubt. Dacă depășești un ecran, cobori în Rails fără să rescrii.
- Părțile plictisitoare by default. Auth, roluri, filtre, căutare, export CSV. Orice admin are nevoie de ele. Avo le include ca nimeni să nu le reinventeze.
- Suprafață mică, feature-uri adânci. Un DSL. Default-uri opinionate. Dacă ai nevoie să suprascrii, suprascrii în Ruby normal, nu într-un limbaj de template nou.
Rezultat
- Avo a fost livrat ca gem open-source pentru Rails. Încă întreținut activ la avohq.io.
- Am terminat YC Startup School ca echipă.
- A crescut într-un ecosistem real cu plugin-uri, documentație și o comunitate de echipe Rails care îl folosesc în producție.
Note de stack
Ruby on Rails în core. Hotwire (Turbo + Stimulus) pentru interacțiunile panoului. Tailwind pentru styling ca echipele să poată restiliza fără să învețe un design system dedicat. PostgreSQL pentru app-urile peste care rulează. Tot lucrul e proiectat ca un inginer Rails senior să poată citi sursa și să se simtă acasă într-o oră.