☁️ Marmar AWS
Internal AWS service management tool
Overview
Marmar AWS is a web-based dashboard for managing AWS services without needing direct CLI access or AWS Console login. It provides a unified interface for common operations across multiple AWS accounts via credential profiles.
Services
| Service | Description |
|---|---|
| 🔥 Lambda | Invoke Lambda functions with custom payloads, view execution results |
| 📦 Batch | Submit AWS Batch jobs with parameters |
| 📨 SQS | Send messages to SQS queues |
| 🪣 S3 | Browse, upload, download, delete objects. Generate presigned URLs |
| 🌐 CloudFront | Create cache invalidations for CloudFront distributions |
| 🚀 ECS | Force new deployments, generate ECS Exec commands |
| 📖 Commands | Saved command/script reference |
Features
- Multi-profile — Store multiple AWS credential profiles, switch between accounts/regions
- CLI generation — Every action can generate the equivalent AWS CLI command with a copy button
- Persistent state — Form fields are saved to localStorage, survives page refresh
- Role-based access — Admin users can manage profiles, view audit logs, manage users
- Audit logging — All dispatched actions are logged for traceability
- Code editors — JSON/Shell inputs use CodeMirror with syntax highlighting
Tech Stack
- Frontend — SvelteKit 2, Svelte 5 (runes), CodeMirror 6
- Backend — SvelteKit server routes, Bun runtime
- Database — SQLite (via
DB_PATH) - Auth — JWT-based (jose), role-based access control
- AWS — AWS SDK v3 (Lambda, Batch, SQS, S3, CloudFront, ECS)
Setup
cp .env.example .env # configure JWT_SECRET, DB_PATH
bun install
bun run dev # development at localhost:5173
bun run build && bun run start # productionEnvironment Variables
| Variable | Description |
|---|---|
JWT_SECRET | Secret key for signing JWTs (min 32 chars) |
JWT_EXPIRY | Token expiration duration (e.g. 1h, 7d) |
PORT | Server port (default 3000) |
DB_PATH | Path to SQLite database file |
PRESIGN_LIFETIME | Default S3 presigned URL expiry in seconds |