Skip to content

DaviReisVieira/stackport

Repository files navigation

StackPort — Universal AWS Resource Browser

StackPort

Universal AWS resource browser for local emulators. Built to work with MiniStack, and also compatible with LocalStack, Moto, or any AWS-compatible endpoint.

CI PyPI Version Docker Pulls Docker Image Size License Python GitHub stars

Screenshots

Dashboard — Service overview with resource counts and health status StackPort Dashboard

DynamoDB Browser — Generic resource table with search, pagination, and detail view DynamoDB Resources

S3 Browser — File browser with folder navigation and object preview S3 Browser

Features

  • Browse and inspect resources across 35 AWS services
  • S3 file browser with folder navigation, search, pagination, and download
  • Dashboard with service health, resource counts, and auto-refresh
  • Single Docker image, zero AWS dependencies
  • Works out of the box with MiniStack's default port (4566)

Quick Start

With MiniStack (recommended)

# Start MiniStack
pip install ministack && ministack

# Start StackPort
pip install stackport
stackport
# Open http://localhost:8080

Docker Compose (MiniStack + StackPort)

This example uses MiniStack as the emulator, but you can swap it for LocalStack, Moto, or any AWS-compatible endpoint — just update AWS_ENDPOINT_URL.

curl -O https://raw.githubusercontent.com/DaviReisVieira/stackport/main/examples/docker-compose.yml
docker compose up -d
# Open http://localhost:8080

Docker (standalone)

docker run -p 8080:8080 -e AWS_ENDPOINT_URL=http://host.docker.internal:4566 davireis/stackport

Other emulators

StackPort works with any AWS-compatible endpoint — just set AWS_ENDPOINT_URL:

# LocalStack
AWS_ENDPOINT_URL=http://localhost:4566 stackport

# Moto
AWS_ENDPOINT_URL=http://localhost:5000 stackport

# Any custom endpoint
AWS_ENDPOINT_URL=http://my-emulator:4566 stackport

Configuration

Variable Default Description
AWS_ENDPOINT_URL http://localhost:4566 Target AWS endpoint (MiniStack default)
AWS_REGION us-east-1 AWS region
AWS_ACCESS_KEY_ID test AWS access key
AWS_SECRET_ACCESS_KEY test AWS secret key
STACKPORT_PORT 8080 StackPort server port
STACKPORT_SERVICES (35 services) Comma-separated services to probe
LOG_LEVEL INFO Python log level (DEBUG shows healthcheck logs)

Supported Services (35)

ACM, API Gateway, AppSync, Athena, CloudFormation, CloudFront, Cognito (IDP + Identity), DynamoDB, EC2, ECR, ECS, ElastiCache, EFS, ELB, EMR, EventBridge, Firehose, Glue, IAM, Kinesis, KMS, Lambda, CloudWatch Logs, CloudWatch Monitoring, RDS, Route 53, S3, Secrets Manager, SES, SNS, SQS, SSM, Step Functions, WAFv2

S3 has a dedicated file browser. All other services use the generic resource table with detail view.

Development

git clone https://github.com/DaviReisVieira/stackport.git
cd stackport
pip install -e .
cd ui && npm install && npm run dev

See CONTRIBUTING.md for full details.

License

MIT

About

Universal AWS resource browser for MiniStack, LocalStack, Moto, and any AWS-compatible endpoint

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors