MCPcopy Index your code
hub / github.com/poundifdef/smoothmq

github.com/poundifdef/smoothmq @v0.2.3 sqlite

repository ↗ · DeepWiki ↗ · release v0.2.3 ↗
132 symbols 307 edges 16 files 7 documented · 5%
README

SmoothMQ

SmoothMQ is a drop-in replacement for SQS with a much smoother developer experience. It has a functional UI, observability, tracing, message scheduling, and rate-limiting. SmoothMQ lets you run a private SQS instance on any cloud.

Survey!

I'd love your feedback on the direction of this project! https://forms.gle/m5iMjcA5Xvp685Yw8

Getting Started

SmoothMQ deploys as a single go binary and can be used by any existing SQS client.

Running

This will run a UI on :3000 and an SQS-compatible server on :3001.

$ go run . server

Connecting

This works with any SQS client in any language.

Python

import boto3

# Simply change the endpoint_url
sqs = boto3.client("sqs", ..., endpoint_url="http://localhost:3001")
sqs.send_message(QueueUrl="...", MessageBody="hello world")

Celery works seamlessly:

app = Celery("tasks", broker_url="sqs://...@localhost:3001")

UI

The UI lets you manage queues and search individual messages.

Dashboard UI

Extension points exported contracts — how you extend this code

TenantManager (Interface)
(no doc) [1 implementers]
models/tenant.go
Queue (Interface)
(no doc) [1 implementers]
models/queue.go

Core symbols most depended-on inside this repo

String
called by 14
models/message.go
getQueue
called by 9
queue/sqlite/sqlite.go
GetTenant
called by 8
models/tenant.go
Delete
called by 8
models/queue.go
NewSQSError
called by 7
protocols/sqs/errors.go
Shutdown
called by 4
models/queue.go
sign
called by 4
protocols/sqs/sigv4.go
Error
called by 4
protocols/sqs/errors.go

Shape

Method 63
Struct 47
Function 19
Interface 2
TypeAlias 1

Languages

Go100%

Modules by API surface

protocols/sqs/models.go23 symbols
queue/sqlite/sqlite.go21 symbols
protocols/sqs/sqs.go17 symbols
models/queue.go15 symbols
dashboard/dashboard.go13 symbols
config/config.go11 symbols
models/message.go7 symbols
protocols/sqs/sigv4.go6 symbols
tenants/defaultmanager/manager.go4 symbols
cmd/smoothmq/tester/tester.go4 symbols
protocols/sqs/errors.go3 symbols
models/tenant.go3 symbols

Dependencies from manifests, versioned

github.com/alecthomas/kong-yamlv0.2.0 · 1×
github.com/andybalholm/brotliv1.0.5 · 1×
github.com/aws/aws-sdk-go-v2v1.30.1 · 1×
github.com/aws/aws-sdk-go-v2/configv1.27.23 · 1×
github.com/aws/aws-sdk-go-v2/credentialsv1.17.23 · 1×
github.com/aws/aws-sdk-go-v2/feature/ec2/imdsv1.16.9 · 1×
github.com/aws/aws-sdk-go-v2/internal/configsourcesv1.3.13 · 1×
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2v2.6.13 · 1×
github.com/aws/aws-sdk-go-v2/internal/iniv1.8.0 · 1×
github.com/aws/aws-sdk-go-v2/service/internal/accept-encodingv1.11.3 · 1×
github.com/aws/aws-sdk-go-v2/service/internal/presigned-urlv1.11.15 · 1×

For agents

$ claude mcp add smoothmq \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact