Skip to content

mamitrkr/thecloud

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mini AWS 🚀

To build the world's best local-first cloud simulator that teaches cloud concepts through practice.

✨ Features

  • Compute: Docker-based instance management (Launch, Stop, Terminate, Stats)
  • Storage: S3-compatible object storage (Upload, Download, Delete)
  • Block Storage: Persistent volumes that survive instance termination
  • Networking: VPC with isolated Docker networks
  • Identity: API Key authentication
  • Observability: Real-time CPU/Memory metrics and System Events

🚀 Quick Start

# 1. Clone & Setup
git clone https://github.com/PoyrazK/Mini_AWS.git
cd Mini_AWS
make run

# 2. Test health
curl localhost:8080/health

# 3. Get an API Key
cloud auth create-demo my-user

# 4. Launch an instance with port mapping
cloud compute launch --name my-server --image nginx:alpine --port 8080:80

# 5. Create and attach a volume
cloud volume create --name my-data --size 10
cloud compute launch --name db --image postgres --volume my-data:/var/lib/postgresql/data

# 6. View instance statistics
cloud compute stats my-server

# 7. View recent events
cloud events list

🏗️ Architecture

  • Backend: Go (Clean Architecture)
  • Database: PostgreSQL (pgx)
  • Infrastructure: Docker Engine (Containers, Networks, Volumes)
  • CLI: Cobra (command-based) + Survey (interactive)

📚 Documentation

🎓 Getting Started

Doc Description
Development Guide Setup on Windows, Mac, or Linux
Roadmap Project phases and progress
Future Vision Long-term strategy and goals

📖 How-to Guides

Guide What you'll learn
Storage Guide Upload, download, and manage files
Networking Guide Port mapping and accessing services

🔧 Reference

Reference Contents
CLI Reference All commands and flags
Database Guide Schema, tables, and migrations

🏛️ Architecture

Doc Description
Architecture Overview System design and patterns
Backend Guide Go service implementation
Infrastructure Docker and deployment

📊 KPIs

  • Time to Hello World: < 5 min
  • API Latency (P95): < 200ms
  • CLI Success Rate: > 95%

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Go 97.4%
  • Shell 2.2%
  • Makefile 0.4%