Skip to main content

Universal AWS resource browser for local emulators

Project description

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

stackport-0.1.5.tar.gz (239.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

stackport-0.1.5-py3-none-any.whl (231.1 kB view details)

Uploaded Python 3

File details

Details for the file stackport-0.1.5.tar.gz.

File metadata

  • Download URL: stackport-0.1.5.tar.gz
  • Upload date:
  • Size: 239.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for stackport-0.1.5.tar.gz
Algorithm Hash digest
SHA256 394ca3f526ba806d0df9470970571c65ac6d8eb53fb6f46e42b91b18fc953506
MD5 20ca14b31b64a0c3dca904b3127769ec
BLAKE2b-256 88b54d7e898eaf009eef1513188966cd8b451b03dad3d8e837da72c38be7f84c

See more details on using hashes here.

Provenance

The following attestation bundles were made for stackport-0.1.5.tar.gz:

Publisher: release.yml on DaviReisVieira/stackport

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file stackport-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: stackport-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 231.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for stackport-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 a154947631dac6ed5e7236ad61b9e88fea1babb8052533c379ee270afb836f81
MD5 6453eb4a6580af0d7a5a723fbe322082
BLAKE2b-256 0f713344682d5ff99a658a7b7ebd715a19a0b656882a54c9d0a514c82059bcff

See more details on using hashes here.

Provenance

The following attestation bundles were made for stackport-0.1.5-py3-none-any.whl:

Publisher: release.yml on DaviReisVieira/stackport

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page