{"id":46801986,"url":"https://github.com/shivambh/asobi","last_synced_at":"2026-03-10T06:02:58.508Z","repository":{"id":304303878,"uuid":"998770004","full_name":"ShivamBh/asobi","owner":"ShivamBh","description":"CLI tool to easily setup a loadbalanced EC2 server for development/testing.","archived":false,"fork":false,"pushed_at":"2025-12-02T14:37:24.000Z","size":252,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-12-05T12:29:39.870Z","etag":null,"topics":["alb","aws","cli","cli-tool","devops","devtool","ec2","typescript"],"latest_commit_sha":null,"homepage":"https://github.com/ShivamBh/asobi","language":"TypeScript","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/ShivamBh.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-06-09T08:13:51.000Z","updated_at":"2025-12-02T14:37:27.000Z","dependencies_parsed_at":"2025-08-06T15:15:58.805Z","dependency_job_id":null,"html_url":"https://github.com/ShivamBh/asobi","commit_stats":null,"previous_names":["shivambh/asobi"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/ShivamBh/asobi","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ShivamBh%2Fasobi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ShivamBh%2Fasobi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ShivamBh%2Fasobi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ShivamBh%2Fasobi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ShivamBh","download_url":"https://codeload.github.com/ShivamBh/asobi/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ShivamBh%2Fasobi/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30326878,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-10T05:25:20.737Z","status":"ssl_error","status_checked_at":"2026-03-10T05:25:17.430Z","response_time":106,"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":["alb","aws","cli","cli-tool","devops","devtool","ec2","typescript"],"created_at":"2026-03-10T06:02:57.543Z","updated_at":"2026-03-10T06:02:58.494Z","avatar_url":"https://github.com/ShivamBh.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Asobi 🚀\n\n\u003e **Work In Progress** - A CLI tool for developers to quickly spin up load-balanced EC2 servers for development/testing on AWS.\n\n## Disclaimer\n\n⚠️ **This tool is designed for development and testing environments, not production use.** It creates resources that may incur AWS charges.\n\n## What is Asobi?\n\nAsobi is a developer-friendly CLI tool that automates the creation of AWS infrastructure for development environments. It creates load-balanced EC2 instances, VPCs, security groups, and other necessary resources so you can focus on your code instead of infrastructure setup. It does so using the AWS SDK.\n\n## Features\n\n- 🏗️ **Quick Infrastructure Setup** - Create VPC, subnets, security groups, and load balancers with a single command\n- ⚡ **Fast Development Environments** - Spin up load-balanced servers for easy testing/development\n- 🗑️ **Easy Cleanup** - Tear down all resources with one command\n- 🔧 **Flexible Configuration** - Support for different application types and custom configurations\n- 🏷️ **Resource Tagging** - All resources are properly tagged for easy identification and cost tracking\n\n## Prerequisites\n\n- Node.js (v16 or higher)\n- AWS CLI configured with appropriate credentials\n- AWS account with permissions to create EC2, VPC, IAM, and ELB resources\n\n## Installation\n\n\u003e The project is not yet published on NPM.\n\n```bash\n# Clone the repository\ngit clone https://github.com/ShivamBh/asobi.git\ncd asobi\n\n# Install dependencies\npnpm install\n\n# Build the project\npnpm build\n\n# Install globally (optional)\nnpm install -g .\n```\n\n## Quick Start\n\n```bash\n# Initialize a new asobi project\nasobi init\n\n# Create a new application\nasobi create\n\n# List all applications\nasobi ls\n\n# Check application status\nasobi status \u003capp-name\u003e\n\n# Delete an application\nasobi delete \u003capp-name\u003e\n```\n\n## Usage\n\n### Initialize a Project\n\n```bash\nasobi init\n```\n\nCreates a `.asobi` directory with configuration files in your current directory.\n\n### Create an Application\n\n```bash\n# Create an empty application\nasobi create\n\n# Create with a specific codebase path\nasobi create --path ./my-app\n\n# Create a load-balanced web service\nasobi create --type load-balanced-web-service --path ./my-app\n```\n\n### Application Types\n\n- **`empty`** - Basic infrastructure without application deployment\n- **`load-balanced-web-service`** - Load-balanced web service\n\n### List Applications\n\n```bash\n# List all applications\nasobi ls\n\n# Get details for a specific application\nasobi ls \u003capp-name\u003e\n```\n\n### Delete Applications\n\n```bash\nasobi delete \u003capp-name\u003e\n```\n\nRemoves all AWS resources associated with the application.\n\n## Configuration\n\nAsobi uses a local configuration file at `.asobi/asobi.json` to track your project settings and deployed resources.\n\n### AWS Credentials\n\nAsobi will automatically detect AWS credentials from:\n\n1. Environment variables (`AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`)\n2. AWS CLI profiles\n3. Interactive prompts if credentials are not found\n\n## Architecture\n\nAsobi creates the following AWS resources:\n\n- **VPC** with public and private subnets\n- **Internet Gateway** for public internet access\n- **NAT Gateway** for private subnet internet access\n- **Security Groups** with appropriate rules\n- **Application Load Balancer** (for load-balanced services)\n- **EC2 Instances** with auto-scaling groups\n- **IAM Roles** and instance profiles\n- **Route Tables** for proper networking\n\n## Development Status\n\n🚧 **This project is currently in active development**\n\n### What's Working\n\n- ✅ Basic CLI structure\n- ✅ AWS service integrations (EC2, VPC, IAM, ALB)\n- ✅ Infrastructure creation and rollback\n- ✅ Configuration management\n- ✅ Resource tagging\n\n### What's In Progress\n\n- 🔄 Application deployment and code synchronization\n- 🔄 Status checking and monitoring\n- 🔄 Error handling and retry mechanisms\n- 🔄 Multi-region support\n- 🔄 Default VPC use, or VPC of user's choosing(AWS has a limit of 5 VPCs per region)\n\n### What's Planned\n\n- 📋 Support for deploying application code to the EC2 instance\n- 📋 Custom domain and SSL certificate management\n- 📋 Environment variable management\n- 📋 Better CLI status logging\n- 📋 Updated docs with examples\n- 📋 Manual delete paths for resources if the CLI fails to delete or rollback\n- 📋 Lots of tests :(\n\n## Contributing\n\nThis is a work-in-progress project. Contributions are welcome!\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## Support\n\nIf you encounter any issues or have questions:\n\n1. Check the [Issues](https://github.com/yourusername/asobi/issues) page\n2. Create a new issue with detailed information about your problem\n3. Include AWS region, error messages, and steps to reproduce\n\n---\n\n**Made with ❤️ for developers who just want a running server on AWS without dealing with AWS**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshivambh%2Fasobi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fshivambh%2Fasobi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshivambh%2Fasobi/lists"}