{"id":29720459,"url":"https://github.com/i2h3/blobber","last_synced_at":"2026-05-20T07:33:05.383Z","repository":{"id":304992025,"uuid":"1021554767","full_name":"i2h3/blobber","owner":"i2h3","description":"A command-line tool to generate random binaries on macOS written in Swift.","archived":false,"fork":false,"pushed_at":"2025-07-17T15:22:13.000Z","size":5,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-10-23T06:30:43.800Z","etag":null,"topics":["command-line-tool","macos"],"latest_commit_sha":null,"homepage":"","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/i2h3.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"zenodo":null}},"created_at":"2025-07-17T15:16:26.000Z","updated_at":"2025-07-17T15:22:17.000Z","dependencies_parsed_at":"2025-07-17T21:05:29.894Z","dependency_job_id":"c2504f23-30bb-4560-91ea-690f24b62ac8","html_url":"https://github.com/i2h3/blobber","commit_stats":null,"previous_names":["i2h3/blobber"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/i2h3/blobber","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/i2h3%2Fblobber","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/i2h3%2Fblobber/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/i2h3%2Fblobber/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/i2h3%2Fblobber/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/i2h3","download_url":"https://codeload.github.com/i2h3/blobber/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/i2h3%2Fblobber/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33250371,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-20T04:48:54.280Z","status":"ssl_error","status_checked_at":"2026-05-20T04:48:10.851Z","response_time":356,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["command-line-tool","macos"],"created_at":"2025-07-24T13:13:18.961Z","updated_at":"2026-05-20T07:33:05.361Z","avatar_url":"https://github.com/i2h3.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Blobber\n\nA fast, memory-efficient command-line tool for generating files filled with random data. Perfect for testing, benchmarking, and creating test datasets of any size.\n\n## Features\n\n- 🚀 **Fast Generation**: Efficiently creates files of any size using chunked processing\n- 💾 **Memory Efficient**: Uses only 1MB of RAM regardless of output file size\n- 📏 **Flexible Size Formats**: Supports bytes, KB, MB, GB with intuitive syntax\n- 📊 **Progress Tracking**: Shows progress for large files (\u003e10MB)\n- 🔒 **Cryptographically Secure**: Uses `arc4random_buf()` for high-quality random data\n- 🍎 **macOS Optimized**: Built specifically for macOS 15+ with modern APIs\n\n## Installation\n\n### Building from Source\n\n```bash\ngit clone https://github.com/yourusername/blobber.git\ncd blobber\nswift build -c release\n```\n\nThe binary will be available at `.build/release/blobber`.\n\n### Using Swift Package Manager\n\n```bash\nswift run blobber [output-path] [size]\n```\n\n## Usage\n\n### Basic Syntax\n\n```bash\nblobber \u003coutput-path\u003e \u003csize\u003e\n```\n\n### Size Formats\n\nBlobber supports multiple size formats:\n\n- **Bytes**: `1024`, `2048`\n- **Kilobytes**: `500kb`, `1.5k`\n- **Megabytes**: `100mb`, `2.5m`\n- **Gigabytes**: `5gb`, `1.2g`\n\n### Examples\n\n```bash\n# Create a 1KB test file\nblobber test.bin 1kb\n\n# Create a 100MB file for performance testing\nblobber large-test.dat 100mb\n\n# Create a 2GB file (with progress indicator)\nblobber huge-dataset.bin 2gb\n\n# Create a file with exactly 1024 bytes\nblobber precise.bin 1024\n```\n\n## Use Cases\n\n- **Performance Testing**: Create large files to test I/O performance\n- **Storage Testing**: Generate files of specific sizes for filesystem testing\n- **Dummy Data**: Create placeholder files for application testing\n- **Benchmarking**: Generate consistent test datasets for benchmarking tools\n- **Development**: Create mock files for testing file handling logic\n\n## Requirements\n\n- macOS 15.0 or later\n- Swift 6.1 or later\n\n## Technical Details\n\n### Memory Usage\n\nBlobber processes files in 1MB chunks, ensuring constant memory usage regardless of output file size. This means you can generate a 10GB file using only ~1MB of RAM.\n\n### Random Data Quality\n\nUses macOS's `arc4random_buf()` function, which provides cryptographically secure random numbers suitable for testing scenarios where data quality matters.\n\n### Performance\n\nTypical performance on modern macOS systems:\n- Small files (\u003c10MB): Instant\n- Large files (100MB-1GB): Progress indicator with real-time updates\n- Very large files (\u003e1GB): Sustained write speeds limited primarily by storage device\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## Acknowledgments\n\n- Built with [Swift Argument Parser](https://github.com/apple/swift-argument-parser)\n- Inspired by the need for a simple, efficient file generation tool on macOS\n- @i2h3 originally wrote such tool multiple times by hand in different forms and this project was different in the way that she mostly used GitHub Copilot in agent mode to implement it as an exercise how she can leverage AI in daily work\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fi2h3%2Fblobber","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fi2h3%2Fblobber","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fi2h3%2Fblobber/lists"}