Skip to main content

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#.

License: MIT Python

📝 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

  1. Fork o projeto
  2. Crie uma branch para sua feature (git checkout -b feature/NovoParser)
  3. Commit suas mudanças (git commit -m 'Adiciona parser para Java')
  4. Push para a branch (git push origin feature/NovoParser)
  5. Abra um Pull Request

Adicionando um Novo Parser

Para adicionar suporte a uma nova linguagem:

  1. Crie um novo parser em parsers/ implementando a interface Parser
  2. Adicione o parser no ParserFactory em parsers/parser_factory.py
  3. 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fkr_cli-1.0.0.tar.gz (12.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fkr_cli-1.0.0-py3-none-any.whl (15.9 kB view details)

Uploaded Python 3

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

Hashes for fkr_cli-1.0.0.tar.gz
Algorithm Hash digest
SHA256 cd5a293d534d298bcc779a67118f7f460cf2526fad06d7ee75b88f45b54360f5
MD5 227ec84e1d7471c0e7e0bc3216838f40
BLAKE2b-256 b5c54e6b5604ee4dcb0ee4db01667ec9bc25fff0127072779d08c1254e29f1ec

See more details on using hashes here.

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

Hashes for fkr_cli-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 086c09ac95e77d93e9f1f1f195e9fdffeefc54e2ce82f6146ad4e55f97ab6641
MD5 1c36b07e8fe47524cc1484b212d3efd4
BLAKE2b-256 164f19b8e975dda234b3afa3b9108a0cb45b421166bc19ed91228183dc11b994

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page