Skip to content

Latest commit

 

History

History
80 lines (46 loc) · 3.42 KB

CONTRIBUTING.md

File metadata and controls

80 lines (46 loc) · 3.42 KB

How to contribute?

That's amazing that you reached this section!

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.

1. Establish memphis dev environment

0. Join to Memphis discord channel

1. Install Golang

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 Memphis dependencies - enter the cloned directory and run

go get -d -v .

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

USER_PASS_BASED_AUTH="true" DEV_ENV="true" DOCKER_ENV="true" go run main.go

Frontend Contributions

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

2. Navigate to "ui_src" dir

3. Install dependencies by running npm install

4. Run the UI locally by running npm start

5. Start coding! Here are some "Good first issues"

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

Backend Contributions

Once you have established memphis dev environment, you can start coding.

Memphis backend opportunities are -

  1. Memphis Broker
  2. SDKs: Python, Go, Node.js, or future SDKs
  3. Memphis CLI

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

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. Helm deployment
  2. Terraform
  3. Docker
  4. DevOps Roadmap