How to contribute?
A manual for the new community members!
That's amazing that you reached this page!
Memphis is and always will be open-source and community-driven. Our community is our power.

Why you should become a contributor?

"Working on [Memphis] 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, teach, and build experience in just about any skill you can imagine.
Whether it’s coding, user interface design, graphic design, writing, or organizing, if you’re looking for practice, there’s a task for you on an open source project.

You are

Frontend developer
Backend developer
Data Engineer
DevOps
QA

0. Join to Memphis discord channel

1. Establish a dev environment

The UI is written in React, therefore you would need node.js and npm installed on your local machine.
Let's start by forking the UI repo.
Now clone it
git clone https://github.com/<username>/memphis-ui.git
Run the broker using this docker in the background
curl -s https://memphisdev.github.io/memphis-docker/docker-compose-dev-ui.yaml -o docker-compose.yaml && \
docker compose -f docker-compose.yaml -p memphis up
Install dependencies
npm install
Run the UI
npm start

2. Start with a "Good first issue"

3. Grab more tasks from the Open Tasks Board

0. Join to Memphis discord channel

1. Establish a dev environment

The backend components of Memphis are written in Go and node.js, therefore you would need Go compiler, node.js, and vscode IDE installed.
There are several components you can work on:
Let's start by forking the desired repo.
Now clone it.
For example -
git clone https://github.com/<username>/memphis.py.git

2.1. For working over the broker

Run the following docker command
curl -s https://memphisdev.github.io/memphis-docker/docker-compose-dev-broker.yaml -o docker-compose.yaml && \
docker compose -f docker-compose.yaml -p memphis up
Install dependecies
go get -d -v .
go install -v .
Click F5 to enter debug mode

2.2. For working over the CLI

Start a local Memphis cluster over docker
curl -s https://memphisdev.github.io/memphis-docker/docker-compose-dev-ui.yaml -o docker-compose.yaml && \
docker compose -f docker-compose.yaml -p memphis up

3. Start with a "Good first issue"

4. Grab more tasks from the Open Tasks Board

0. Join to Memphis discord channel

1. Establish a dev environment

The backend components of Memphis are written in Go and node.js, therefore you would need Go compiler, node.js, and vscode IDE installed.
There are several components you can work on:
Let's start by forking the desired repo.
Now clone it.
For example -
git clone https://github.com/<username>/memphis.py.git

2.1. For working over the broker

Run the following docker command
curl -s https://memphisdev.github.io/memphis-docker/docker-compose-dev-broker.yaml -o docker-compose.yaml && \
docker compose -f docker-compose.yaml -p memphis up
Install dependecies
go get -d -v .
go install -v .
Click F5 to enter debug mode

2.2. For working over the CLI

Start a local Memphis cluster over docker
curl -s https://memphisdev.github.io/memphis-docker/docker-compose-dev-ui.yaml -o docker-compose.yaml && \
docker compose -f docker-compose.yaml -p memphis up

3. Start with a "Good first issue"

4. Grab more tasks from the Open Tasks Board

Soon...

Soon...

Merge your changes

Create a new branch (from the "staging" branch) for your fix.
git checkout -b branch-name-here staging
Commit and Push your changes
git add .
git commit -m "[issue-fix/feature] <Description of what you did>"
git push
The "push" will create a pull request in the source repo you forked.
Describe exactly what you did and mention (using a hashtag) the issue/feature related to your PR
and that's it!

Write about it

Like this for example

Get a sweet swag pack!

We will reach out for delivery address :)