MCPcopy Index your code
hub / github.com/superstreamlabs/memphis

github.com/superstreamlabs/memphis @v1.4.4 sqlite

repository ↗ · DeepWiki ↗ · release v1.4.4 ↗
9,039 symbols 64,352 edges 439 files 3,172 documented · 35% 58 cross-repo links
README

Please pay attention that Memphis.dev is no longer supported officially by the Superstream team (formerly Memphis.dev) and was released to the public.

">Github (4)

Discord Code Of Conduct GitHub release (latest by date)

**[Memphis.dev](https://memphis.dev)** Is The First Data Streaming Platform Designed For Backend Developers To Build Event-driven And Real-time Features Faster Than Ever.

20 About

Before Memphis came along, handling ingestion and processing of events on a large scale took months to adopt and was a capability reserved for the top 20% of mega-companies. Now, Memphis opens the door for the other 80% to unleash their event and data streaming superpowers quickly, easily, and with great cost-effectiveness.

🚀 Getting Started

Tutorials | Videos

☸ Kubernetes

helm repo add memphis https://k8s.memphis.dev/charts/ --force-update && \
helm install my-memphis memphis/memphis --create-namespace --namespace memphis

🐳 Docker Compose

curl -s https://memphisdev.github.io/memphis-docker/docker-compose.yml -o docker-compose.yml && \
docker compose -f docker-compose.yml -p memphis up

✨ Key Features v1.4.4

20 Production-ready message broker in under 3 minutes

20 Easy-to-use UI, CLI, and SDKs

20 Data-level observability

20 Dead-Letter Queue with automatic message retransmit

20 Schemaverse - Embedded schema management for produced data (Protobuf/JSON/GraphQL/Avro)

20 Functions for real-time processing

20 Graph visualization

20 Storage tiering

20 SDKs: Node.JS, Go, Python, Typescript, NestJS, REST, .NET, Kotlin

20 Kubernetes-native

20 Community driven

End-to-end Observability "Feel" your producers, consumers, and records
Screenshot 2023-09-29 at 10 17 01
Quickly analyze system health using a graph overview Never lose a message with automatic dead-letter
Screenshot 2023-09-29 at 10 17 12
Save up 96% storage costs with Storage tiering Increase data quality with schemas
Screenshot 2023-09-29 at 10 17 58 Screenshot 2023-09-29 at 10 16 40

Public case studies

Network diagram

memphis.dev Architecture

SDKs supported features

Feature Go Python JS .NET Java Rust
Connection :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark:
Disconnection :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark:
Create a station :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x: :white_check_mark:
Destroy a station :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x: :white_check_mark:
Retention :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x: :white_check_mark:
Retention values :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x: :white_check_mark:
Storage types :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x: :white_check_mark:
Create a new schema :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x: :x:
Enforce a schema Protobuf :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x: :x:
Enforce a schema Json :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x: :construction: (WIP)
Enforce a schema GraphQL :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x: :x:
Enforce a schema Avro :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x: :x:
Detach a schema :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x: :x:
Produce :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark:
Add headers :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x: :white_check_mark:
Async produce :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x: :white_check_mark:
Message ID :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: ? :white_check_mark:
Destroy a producer :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: Partial :white_check_mark:
Consume :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark:
Context to message handler :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x: Not Applicable
Ack a message :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark:
Nack a Message :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x: :x:
Send a message to dead-letter :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x: :x:
Get message time sent :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x: :x:
Fetch :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x:
Message delay :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x: :white_check_mark:
Get Headers :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x: :white_check_mark:
Get message sequence number :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark:
Destroying a Consumer :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x: :white_check_mark:
Check if broker is connected :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark:
Consumer prefetch :white_check_mark: :white_check_mark: :x: :white_check_mark: :x: :white_check_mark:
Schema deserialization :white_check_mark: :white_check_mark: :white_check_mark: :white_check_mark: :x: :x:

👉 Use-cases

  • Async task management
  • Real-time streaming pipelines
  • Data ingestion
  • Cloud Messaging
  • Services (microservices, service mesh)
  • Event/Data Streaming (observability, analytics, ML/AI)
  • Queuing
  • N:N communication patterns
  • Ingest Grafana Loki logs at scale

Support 🙋‍♂️🤝

Have any questions ❓

We welcome you to our discord server with your questions, doubts and feedback.

Create a bug 🐞 report

If you see an error message or run into an issue, please create bug report. This effort is valued and it will help all Memphis{dev} users.

Submit a feature 💡 request

If you have an idea, or you think that we're missing a capability that would make development easier and more robust, please Submit feature request.

If an issue❗with similar feature request already exists, don't forget to leave a "+1". If you add some more information such as your thoughts and vision about the feature, your comments will be embraced warmly :)

Contributing

Memphis.dev is an open-source project.

We are committed to a fully transparent development process and appreciate highly any contributions.

Whether you are helping us fix bugs, proposing new features, improving our documentation or spreading the word - we would love to have you as part of the Memphis.dev community.

Please refer to our Contribution Guidelines and Code of Conduct.

Contributors ✨

Thanks goes to these wonderful people ❤:

License 📃

Memphis is open-sourced and operates under the "Memphis Business Source Licen

Extension points exported contracts — how you extend this code

Logger (Interface)
Logger interface of the NATS Server [6 implementers]
server/log.go
DeleteBlock (Interface)
Interface for DeleteBlock. These will be of three types: 1. AVL seqsets. 2. Run length encoding of a deleted range. 3. L [2 …
server/store.go
Authentication (Interface)
Authentication is an interface for implementing authentication [2 implementers]
server/auth.go
ChaosMonkeyController (Interface)
Support functions for "chaos" testing (random injected failures) [1 implementers]
server/jetstream_chaos_test.go
SubjectTransformer (Interface)
SubjectTransformer transforms subjects using mappings This API is not part of the public API and not subject to SemVer [1 …
server/subject_transform.go
HybridLogPublishFunc (FuncType)
** added by Memphis HybridLogPublishFunc is a function used to publish logs
logger/log.go
WAL (Interface)
(no doc) [2 implementers]
server/raft.go
JWTChanged (FuncType)
JWTChanged functions are called when the store file watcher notices a JWT changed
server/dirstore.go

Core symbols most depended-on inside this repo

Fatalf
called by 7238
server/log.go
Shutdown
called by 2508
server/server.go
Close
called by 2206
server/accounts.go
Errorf
called by 2076
server/log.go
Unlock
called by 1891
server/memphis_handlers.go
Lock
called by 1503
server/memphis_handlers.go
Error
called by 1303
server/client.go
Fatalf
called by 1101
test/test.go

Shape

Function 5,030
Method 3,066
Struct 835
TypeAlias 59
Interface 29
FuncType 18
Class 2

Languages

Go95%
TypeScript5%

Modules by API surface

server/jetstream_test.go325 symbols
server/filestore.go255 symbols
server/raft.go227 symbols
server/accounts.go223 symbols
db/db.go222 symbols
server/jetstream_cluster.go213 symbols
server/mqtt_test.go203 symbols
server/consumer.go194 symbols
server/client.go191 symbols
server/stream.go184 symbols
server/server.go175 symbols
server/mqtt.go161 symbols

Dependencies from manifests, versioned

github.com/Microsoft/go-winiov0.6.1 · 1×
github.com/allegro/bigcache/v3v3.1.0 · 1×
github.com/aws/aws-sdk-go-v2v1.18.0 · 1×
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstreamv1.4.10 · 1×
github.com/aws/aws-sdk-go-v2/configv1.18.22 · 1×
github.com/aws/aws-sdk-go-v2/credentialsv1.13.21 · 1×
github.com/aws/aws-sdk-go-v2/feature/ec2/imdsv1.13.3 · 1×
github.com/aws/aws-sdk-go-v2/feature/s3/managerv1.11.64 · 1×
github.com/aws/aws-sdk-go-v2/internal/configsourcesv1.1.33 · 1×
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2v2.4.27 · 1×
github.com/aws/aws-sdk-go-v2/internal/iniv1.3.34 · 1×
github.com/aws/aws-sdk-go-v2/internal/v4av1.0.25 · 1×

For agents

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

⬇ download graph artifact