Skip to content

azharmateen/service-forge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Service Forge

Built with Claude Code

Stop configuring Docker services from scratch. Service Forge auto-detects your project's needs and generates production-ready Docker Compose configs in seconds.

$ service-forge init
Scanning ./my-project...

Detected services:
  postgres:  Python package 'asyncpg' in requirements.txt
  redis:     URL pattern found in .env.example
  rabbitmq:  Node package 'amqplib' in package.json

Configuring services: postgres, redis, rabbitmq
Created docker-compose.yml
Created .env.forge

$ service-forge up
Starting all services... done.

$ service-forge status
┌──────────┬────────────┬───────────────────┐
│ Service  │ Status     │ Ports             │
├──────────┼────────────┼───────────────────┤
│ postgres │ Up (healthy) │ 0.0.0.0:5432    │
│ redis    │ Up (healthy) │ 0.0.0.0:6379    │
│ rabbitmq │ Up (healthy) │ 0.0.0.0:5672    │
└──────────┴────────────┴───────────────────┘

Why Service Forge?

  • Auto-detection - scans .env, requirements.txt, package.json, Django settings, Rails configs
  • 11 services - Postgres, MySQL, Redis, MongoDB, RabbitMQ, Elasticsearch, MinIO, Memcached, NATS, MailHog, Jaeger
  • Health checks - every service template includes Docker health checks
  • Connection strings - auto-generates .env.forge with DATABASE_URL, REDIS_URL, etc.
  • Zero config - sane defaults for dev: usernames, passwords, ports, volumes

Install

pip install service-forge

Requires Docker and Docker Compose installed on your system.

Commands

Command Description
service-forge init Scan project, generate docker-compose.yml
service-forge up [services...] Start services
service-forge down [-v] Stop services (optionally remove volumes)
service-forge restart [services...] Restart services
service-forge status Show service status table
service-forge logs [service] [-f] View/follow logs
service-forge detect Show auto-detected services
service-forge env [-o file] Print/write connection strings
service-forge list List all available service templates

Supported Services

Service Image Default Port Connection String
postgres postgres:16-alpine 5432 postgresql://forge:forge_secret@localhost:5432/forge_db
mysql mysql:8.0 3306 mysql://forge:forge_secret@localhost:3306/forge_db
redis redis:7-alpine 6379 redis://:forge_secret@localhost:6379/0
mongodb mongo:7 27017 mongodb://forge:forge_secret@localhost:27017
rabbitmq rabbitmq:3-management 5672, 15672 amqp://forge:forge_secret@localhost:5672/
elasticsearch elasticsearch:8.13.0 9200 http://localhost:9200
minio minio/minio:latest 9000, 9001 http://localhost:9000
memcached memcached:1.6-alpine 11211 localhost:11211
nats nats:2-alpine 4222, 8222 nats://localhost:4222
mailhog mailhog/mailhog 1025, 8025 localhost:1025 (SMTP)
jaeger jaegertracing/all-in-one 16686, 4317 http://localhost:4317 (OTLP)

License

MIT

About

Record, replay, and diff WebSocket sessions for debugging.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages