Gerador de dados fake multi-linguagem (Python, Delphi/Pascal, C#)
Project description
FKR CLI - Gerador de Dados Fake Multi-Linguagem
Gerador de dados fake inteligente que suporta Python, Delphi/Pascal e C#.
📝 Sobre o Projeto
FKR é um gerador de dados fake open source que facilita a criação de dados de teste para desenvolvimento. Com suporte a múltiplas linguagens e formatos, é ideal para popular bancos de dados, criar fixtures e testar aplicações.
Instalação
pip install -e .
Uso
# Gerar JSON (padrão)
fkr classes/pessoa.py:Pessoa -c 10
# Gerar SQL
fkr classes/Pessoa.pas:TPessoa -c 100 --format sql --table pessoas
# Gerar CSV
fkr classes/Usuario.cs:Usuario -c 50 --format csv
Features
- ✅ Suporte a Python (.py), Delphi/Pascal (.pas), C# (.cs)
- ✅ Formatos de saída: JSON, SQL, CSV
- ✅ 100+ campos mapeados automaticamente
- ✅ IDs inteligentes (UUID para string, serial para int)
- ✅ Classes customizadas retornam null
- ✅ Providers personalizados para ERP
Sintaxe
fkr <arquivo>:<classe> -c <count> --format <json|sql|csv> --table <nome>
Opções:
-c, --count: Número de registros a gerar (padrão: 1)-f, --format: Formato de saída (json, sql, csv) (padrão: json)-t, --table: Nome da tabela SQL (padrão: nome da classe em minúsculas)
Exemplos
# Python
fkr models/user.py:User -c 100 --format sql --table users
# Delphi
fkr units/Pessoa.pas:TPessoa -c 50 --format csv
# C#
fkr Entities/Product.cs:Product -c 200 --format json
O arquivo de saída será gerado no mesmo diretório do arquivo de entrada.
🤝 Contribuindo
Contribuições são bem-vindas! Este é um projeto open source e você pode:
- 🐛 Reportar bugs
- 💡 Sugerir novas features
- 🔧 Adicionar novos parsers (Java, Go, TypeScript, etc.)
- 📚 Melhorar a documentação
- ➕ Adicionar novos providers no
PROVIDER_MAP
Como Contribuir
- Fork o projeto
- Crie uma branch para sua feature (
git checkout -b feature/NovoParser) - Commit suas mudanças (
git commit -m 'Adiciona parser para Java') - Push para a branch (
git push origin feature/NovoParser) - Abra um Pull Request
Adicionando um Novo Parser
Para adicionar suporte a uma nova linguagem:
- Crie um novo parser em
parsers/implementando a interfaceParser - Adicione o parser no
ParserFactoryemparsers/parser_factory.py - Teste com classes reais da linguagem
Exemplo:
# parsers/java_parser.py
from interfaces.parser import Parser
from typing import Dict, Type
class JavaParser(Parser):
def parse(self, file_path: str, class_name: str) -> Dict[str, Type]:
# Implementação do parser
pass
def get_supported_extensions(self) -> list[str]:
return ['.java']
📄 Licença
Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.
🌟 Autor
Desenvolvido com ❤️ pela comunidade open source.
Gostou do projeto? Deixe uma ⭐ no repositório!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file fkr_cli-1.0.0.tar.gz.
File metadata
- Download URL: fkr_cli-1.0.0.tar.gz
- Upload date:
- Size: 12.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cd5a293d534d298bcc779a67118f7f460cf2526fad06d7ee75b88f45b54360f5
|
|
| MD5 |
227ec84e1d7471c0e7e0bc3216838f40
|
|
| BLAKE2b-256 |
b5c54e6b5604ee4dcb0ee4db01667ec9bc25fff0127072779d08c1254e29f1ec
|
File details
Details for the file fkr_cli-1.0.0-py3-none-any.whl.
File metadata
- Download URL: fkr_cli-1.0.0-py3-none-any.whl
- Upload date:
- Size: 15.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
086c09ac95e77d93e9f1f1f195e9fdffeefc54e2ce82f6146ad4e55f97ab6641
|
|
| MD5 |
1c36b07e8fe47524cc1484b212d3efd4
|
|
| BLAKE2b-256 |
164f19b8e975dda234b3afa3b9108a0cb45b421166bc19ed91228183dc11b994
|