{"id":25158281,"url":"https://github.com/gbburleigh/quick-seeders","last_synced_at":"2025-04-03T12:41:08.120Z","repository":{"id":274070616,"uuid":"921493951","full_name":"gbburleigh/quick-seeders","owner":"gbburleigh","description":"Generate realistic test data quickly with Quick-Seeders, a Python library offering a wide range of data types and schema definitions. Control data variance, probabilities, and output formats, including SQL. Simplify your data seeding process and improve testing efficiency.","archived":false,"fork":false,"pushed_at":"2025-02-21T23:57:33.000Z","size":61,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-22T00:26:36.544Z","etag":null,"topics":["data","dataset","faker","generator","python","seeder","sql","test"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gbburleigh.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-24T03:43:33.000Z","updated_at":"2025-02-21T23:57:37.000Z","dependencies_parsed_at":"2025-01-24T18:32:35.114Z","dependency_job_id":null,"html_url":"https://github.com/gbburleigh/quick-seeders","commit_stats":null,"previous_names":["gbburleigh/quick-seeders"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gbburleigh%2Fquick-seeders","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gbburleigh%2Fquick-seeders/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gbburleigh%2Fquick-seeders/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gbburleigh%2Fquick-seeders/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gbburleigh","download_url":"https://codeload.github.com/gbburleigh/quick-seeders/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247005341,"owners_count":20868017,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["data","dataset","faker","generator","python","seeder","sql","test"],"created_at":"2025-02-09T01:49:36.486Z","updated_at":"2025-04-03T12:41:08.114Z","avatar_url":"https://github.com/gbburleigh.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Quick-Seeders\n\nA Python package for generating realistic test data with a simple, flexible API.\n\n## Installation\n\n```bash\npip install quick-seeders\n```\n\n## Features\n\n- Generate realistic test data with minimal setup\n- Support for 40+ data types including:\n  - Basic types (text, numbers, booleans)\n  - Personal data (names, emails, phones)\n  - Dates and times (with flexible format support)\n  - Geographic data (addresses, coordinates)\n  - Financial data (currency, credit cards, IBANs)\n  - Internet data (URLs, IPs, user agents)\n  - And many more!\n- Export to multiple formats (JSON, CSV, SQL)\n- Probability-based null values\n- Flexible date/time range specifications\n- Schema-based or direct generator usage\n\n## Quick Start\n\n### Using Schema Definition\n\n```python\nfrom seeder import Seeder\n\n# Define your schema\nschema = [\n    {\n        \"name\": \"id\",\n        \"type\": \"integer\",\n        \"min\": 1,\n        \"max\": 1000\n    },\n    {\n        \"name\": \"first_name\",\n        \"type\": \"name\"\n    },\n    {\n        \"name\": \"email\",\n        \"type\": \"email\",\n        \"email_type\": \"company\"\n    },\n    {\n        \"name\": \"hire_date\",\n        \"type\": \"datetime\",\n        \"start_date\": \"2020-01-01\",\n        \"end_date\": \"today\"\n    }\n]\n\n# Generate data\nseeder = Seeder()\ndata = seeder.seed(schema, count=100)\n\n# Export to different formats\nseeder.to_json('employees')\nseeder.to_csv('employees')\nseeder.to_sql('insert_employees', 'employees')\n```\n\n### Using Direct Generators\n\n```python\nfrom seeder import Seeder\nfrom seeder.types import ID, Name, Email, Date\n\nseeder = Seeder()\ndata = seeder.seed([\n    ID('id'),\n    Name('first_name'),\n    Email('email', email_type='company'),\n    Date('hire_date', start_date='-30d', end_date='today')\n], count=100)\n```\n\n## Advanced Features\n\n### Date/Time Formatting\n\nSupport for multiple date/time formats and relative times:\n\n```python\nfrom seeder.types import Datetime, Date, Time\n\n# ISO format\ndt1 = Datetime('timestamp', \"2024-03-14T09:00:00\", \"2024-03-14T17:00:00\")\n\n# Date only\ndt2 = Date('date', \"2024-03-14\", \"2024-03-15\")\n\n# Keywords\ndt3 = Datetime('current', \"today\", \"now\")\n\n# Relative times\ndt4 = Datetime('recent', \"-1h\", \"now\")  # Last hour\ndt5 = Date('past_week', \"-7d\", \"today\")  # Last 7 days\n```\n\n### Probability-Based Null Values\n\nControl the probability of generating null values:\n\n```python\nfrom seeder.types import Text, Number\n\n# 50% chance of being null\ntext = Text('description', probability=50)\n\n# 80% chance of having a value\nnumber = Number('score', probability=80)\n```\n\n## Available Types\n\n### Basic Types\n- Text\n- Int\n- Number\n- Bool\n- Null\n- Enum\n\n### Personal Information\n- Name\n- Email\n- Phone\n- Address\n\n### Dates and Times\n- Date\n- Datetime\n- Time\n- Timestamp\n- TimeZone\n- DayOfWeek\n\n### Geographic\n- Country\n- State\n- City\n- Zip\n- LatitudeLongitude\n\n### Internet\n- Website\n- URL\n- IPAddress\n- UserAgent\n- SocialMediaHandle\n- MACAddress\n\n### Financial\n- Currency\n- CreditCardNumber\n- IBAN\n- BIC\n\n### Identifiers\n- ID\n- UUID\n- SKU\n- ISBN\n- ISBN13\n- EAN\n- Hash\n\n### Text Content\n- Sentence\n- Paragraph\n- LoremIpsum\n\n### Business\n- JobTitle\n- CompanyDepartment\n\n## Type Options\n\n### Common Parameters\nAll types accept these basic parameters:\n- `name`: The column name for the generated data\n- `probability`: Chance of generating a value vs null (0-100)\n\n### Type-Specific Parameters\n\n#### Date/Time Types\n```python\nDatetime(name, start_date=\"1970-01-01\", end_date=\"today\")\nDate(name, start_date=\"1970-01-01\", end_date=\"today\")\nTime(name, start_time=\"00:00:00\", end_time=\"23:59:59\")\n```\n\n#### Text Types\n```python\nText(name, min_length=10, max_length=100)\nSentence(name, nb_words=6, variable_nb_words=True)\nParagraph(name, nb_sentences=3, variable_nb_sentences=True)\n```\n\n#### Number Types\n```python\nInt(name, min_value=0, max_value=99999)\nCurrency(name, symbol=\"$\", min_value=0, max_value=1000)\n```\n\n#### Email Types\n```python\nEmail(name, email_type=\"safe\")  # Types: safe, free, company\n```\n\n## Export Formats\n\n### JSON Export\n```python\nseeder.to_json('filename')  # Creates filename.json\n```\n\n### CSV Export\n```python\nseeder.to_csv('filename')  # Creates filename.csv\n```\n\n### SQL Export\n```python\nseeder.to_sql('filename', 'table_name')  # Creates filename.sql\n```\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n## License\n\nThis project is licensed under the MIT License - see the LICENSE file for details.\n```\n\nWould you like me to add any additional sections or make any adjustments to the formatting?","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgbburleigh%2Fquick-seeders","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgbburleigh%2Fquick-seeders","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgbburleigh%2Fquick-seeders/lists"}