LogoLogo
CloudDiscordGitHub
  • 👉Getting Started
    • Introduction
    • Quick start
    • Learn by example
    • Case studies
    • How to contribute?
  • ⭐Memphis Broker
    • Architecture
    • Key concepts
      • Message broker
      • Station
      • Producer API
      • Consumer API
      • Consumer Group
      • Storage and Redundancy
      • Security/Authentication
      • Scaling
      • Ordering
      • Dead-letter Station (DLS)
      • Delayed messages
      • Data exchange
      • Idempotency (Duplicate processing)
      • Failover Scenarios
      • Troubleshooting process
      • Connectors
    • Best practices
      • Producer optimization
      • Compression
    • Memphis configuration
    • Comparisons
      • NATS Jetstream vs Memphis
      • RabbitMQ vs Memphis
      • AWS SQS vs Memphis
      • Apache Kafka vs Memphis
      • Apache Pulsar vs Memphis
      • ZeroMQ vs Memphis
      • Apache NiFi vs Memphis
    • Privacy Policy
  • ⭐Memphis Schemaverse
    • Overview
    • Getting started
      • Management
      • Produce/Consume
        • Protobuf
        • JSON Schema
        • GraphQL
        • Avro
    • Comparison
    • KB
  • 📦Open-Source Installation
    • Kubernetes
      • 1 - Installation
      • 2 - Access
      • 3 - Upgrade
      • Terraform
        • Deploy on AWS
        • Deploy on GCP
        • Deploy on DigitalOcean
      • Guides
        • Deploy/Upgrade Memphis utilizing predefined secrets
        • Monitoring/Alerts Recommendations
        • Production Best Practices
        • NGINX Ingress Controller and Cloud-Agnostic Memphis Deployments
        • Migrate Memphis storage between storageClass's
        • Expanding Memphis Disk Storage
        • Scale-out Memphis cluster
        • TLS - Deploy Memphis with TLS Connection to Metadata Frontend
        • TLS - Memphis TLS websocket configuration
        • TLS - Securing Memphis Client with TLS
        • Installing Memphis with an External Metadata Database
    • Docker
      • 1 - Installation
      • 2 - Access
      • 3 - Upgrade
    • Open-source Support
  • Client Libraries
    • REST (Webhook)
    • Node.js / TypeScript / NestJS
    • Go
    • Python
    • Kotlin (Community)
    • .NET
    • Java
    • Rust (Community)
    • NATS
    • Scala
  • 🔌Integrations Center
    • Index
    • Processing
      • Zapier
    • Change data Capture (CDC)
      • Debezium
    • Monitoring
      • Datadog
      • Grafana
    • Notifications
      • Slack
    • Storage tiering
      • S3-Compatible Object Storage
    • Source code
      • GitHub
    • Other platforms
      • Argo
  • 🗒️Release notes
    • KB
    • Releases
      • v1.4.3 - latest/stable
      • v1.4.2
      • v1.4.1
      • v1.4.0
      • v1.3.1
      • v1.3.0
      • v1.2.0
      • v1.1.1
      • v1.1.0
      • v1.0.3
      • v1.0.2
      • v1.0.1
      • V1.0.0 - GA
      • v0.4.5 - beta
      • v0.4.4 - beta
      • v0.4.3 - beta
      • v0.4.2 - beta
      • v0.4.1 - beta
      • v0.4.0 - beta
      • v0.3.6 - beta
      • v0.3.5 - beta
      • v0.3.0 - beta
      • v0.2.2 - beta
      • v0.2.1 - beta
      • v0.2.0 - beta
      • v0.1.0 - beta
Powered by GitBook
LogoLogo

Legal

  • Terms of Service
  • Privacy Policy

All rights reserved to Memphis.dev 2023

On this page
  • Why should you become a contributor?
  • Getting started
  • 1. Establish a local memphis environment
  • 2. You are

Was this helpful?

  1. Getting Started

How to contribute?

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

Last updated 11 months ago

Was this helpful?

Why should you become a contributor?

"Working on Memphis OS project helped me earn many of the skills I later used for my studies in university and my actual job. I think working on open-source projects helps me as much as it helps the project!"

Contributing to open source can be a rewarding way to learn and increase your experience.

Whether it’s coding, user interface design, graphic design, docs, or writing content, if you’re looking for practice, there’s a task for you on an open-source project.

Getting started

1. Establish a local memphis environment

0. Join to Memphis channel

1. Install

2. Fork Memphis

3. Clone the forked repo to your local station

4. Run a local "memphis-metadata" db using docker

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

5. Install broker dependencies - enter the cloned directory and run

go get -d -v .

6. Run the broker in debug mode (If you're using vscode, click F5) or run via terminal via:

DEV_ENV="true" DOCKER_ENV="true" ANALYTICS="false" go run main.go

2. You are

Frontend Contributions

2. Navigate to "ui_src" dir

3. Install dependencies by running npm install

4. Run the UI locally by running npm start

6. Once done - push your code and create a pull request to merge your updates with memphis main repo

Backend Contributions

Once your Memphis' local dev environment is ready, you can start coding!

Memphis backend options are -

  1. Memphis Broker

  2. Client libraries

  3. Support/add more protocols

Data Engineer

As a data engineer, it would be great to get your feedback, potential use cases, QA, and push memphis to the limit in terms of data workloads would be an amazing contribution, as at the end of the day, you are our champion!

DevOps

As a DevOps engineer, you can find multiple paths of contribution

1. The source files of the UI can be found in a directory called ״״

5. Start coding! Here are some

Grab a , and once done - push your changes and open a "pull request"

DevOps

👉
discord
Golang
broker
ui_src
"Good first issues"
Memphis CLI
"Good first issue"
Helm deployment
Terraform
Docker
Roadmap
Frontend Developer
Backend Developer
Data Engineer
DevOps