Estou tentando resolver um problema pessoal (que talvez voce tambem tenha) - Preciso de feedback
Recentemente decidi criar uma biblioteca open-source — tanto para exercitar a mente quanto para tentar agregar algo à comunidade. No começo, eu não tinha muita certeza do que desenvolver, então acabei optando por criar uma ferramenta de scaffolding.
O CRUDius é uma aplicação CLI que permite gerar uma API REST a partir de um arquivo JSON. Com isso, você já começa com um backend funcional, incluindo endpoints, relacionamento entre tabelas e conexão com o banco de dados previamente configurados.
Você pode estar pensando: “Tá, mas por que isso seria útil pra mim?”
E a resposta honesta é: talvez não seja, dependendo do seu contexto.
A ideia principal do CRUDius é agilizar a criação de MVPs. Se você tem uma ideia e não quer perder tempo copiando e colando código repetitivo para montar toda a base do projeto, o CRUDius gera essa estrutura inicial para você. Assim, você pode focar diretamente nas regras de negócio, que é onde o valor do produto realmente está.
Outro ponto importante é que o código gerado não segue a lógica de “vibe coding”. A proposta é entregar um código legível, organizado e fácil de entender, permitindo total liberdade para adaptar e modificar conforme o seu caso de uso.
Abaixo está um exemplo simples de um arquivo JSON com duas entidades (User e Post) e um relacionamento entre elas:
{
"generationConfigs": [
{
"entityName": "User",
"properties": [
{ "field": "id", "type": "number", "primary": true },
{ "field": "name", "type": "string", "searchable": true },
{ "field": "email", "type": "string", "unique": true }
]
},
{
"entityName": "Post",
"properties": [
{ "field": "id", "type": "number", "primary": true },
{ "field": "title", "type": "string", "searchable": true },
{ "field": "content", "type": "string" }
],
"relations": [
{
"type": "many-to-one",
"target": "User",
"foreignKey": "user_id"
}
]
}
]
}
Com esse único arquivo, o CRUDius consegue gerar:
As tabelas users e posts
O relacionamento entre elas
Endpoints CRUD completos
Estrutura base de controllers, providers/services e conexão com o banco
A partir disso, o desenvolvedor só precisa evoluir as regras de negócio conforme a necessidade do projeto.
O projeto ainda está em evolução, e feedbacks, críticas e contribuições são mais do que bem-vindos.
link do projeto:https://github.com/pedrovjesus/CRUDius