Skip to content

Introduction

StackPort is an open-source web console for AWS. Point it at a local emulator such as MiniStack, Floci, LocalStack or Moto, or at a real AWS account, and it shows you what is running there: buckets, tables, queues, functions, secrets and more, across 35 services.

It ships as a single Docker image or a pip install, and talks to your endpoint over the standard AWS API with boto3. There is nothing to install inside the emulator and nothing emulator-specific to configure.

When you build against an emulator, it is easy to lose track of what you actually created. Did the queue get the message? Did the table get the item? Is the function deployed with the right environment? The usual answer is another round of aws --endpoint-url ... commands.

StackPort gives you a console for that instead: a dashboard of every service with live resource counts, and dedicated views for the services you touch most. It started as a web UI pull request to MiniStack, and the MiniStack maintainers suggested it would be more useful as a standalone tool that works with any emulator. That is what it became.

  • Dashboard for 35 AWS services. Each service is probed concurrently and the counts update live over a WebSocket.
  • 13 dedicated service views: S3, DynamoDB, Lambda, SQS, SNS, EC2, IAM, RDS, KMS, Step Functions, CloudWatch Logs, CloudWatch Metrics and Secrets Manager. Every other service gets a searchable resource table with a JSON detail view.
  • Write operations where they help: upload to S3, edit DynamoDB items, invoke Lambda, send and receive SQS messages, publish to SNS, start Step Functions executions, start and stop EC2 instances, manage secrets and log groups. See Service Browsers for the full list.
  • Guided lessons. Hands-on AWS tutorials that run inside the console against your own emulator, and check your real resource state as you go. See Guided lessons.
  • Real AWS and multiple endpoints. Switch between emulators and accounts from the top bar, each with its own region and credentials. Turn on read-only mode to block every write at the server.
  • CLI for scripts and CI: stackport status, list, describe and export. See CLI Commands.
  • Keyboard shortcuts, light and dark themes, favorites, deep links to resources, and JSON or CSV export.

StackPort is a Python FastAPI backend that serves a React and TypeScript frontend built with the Cloudscape Design System, the same component library the AWS console uses. The backend calls your endpoint with boto3. The browser talks to the backend over REST and a WebSocket.

┌──────────────────────────────┐
│ React + Cloudscape UI │ browser
├──────────────────────────────┤
│ FastAPI + uvicorn │ REST API + WebSocket
├──────────────────────────────┤
│ boto3 │ AWS SDK
├──────────────────────────────┤
│ MiniStack · Floci · │ any AWS-compatible endpoint
│ LocalStack · Moto · AWS │
└──────────────────────────────┘

Settings come from environment variables. Endpoints you add in the UI and your lesson progress are saved under ~/.stackport (see STACKPORT_DATA_DIR).