Contributing

Got questions? Live chat with us in Slack
Anything you contribute, the Mage team and community will maintain. We’re in it together!
- Projects to contribute to
- Set up development environment
- Debugging
- Backend server
- Front-end app
- Push code change
Projects to contribute to
If you’re looking for cool projects to ship, check out the following:
GitHub issues | Small to medium complexity projects |
Roadmap | Small to large complexity projects |
Set up development environment
- Create a new project:
./scripts/init.sh [project_name]
- Run the below script to build the Docker image and run all the services:
./scripts/dev.sh [project]
- Open your browser and go to http://localhost:3000.
You can find more information about setting up your local environment for development here.
Errors
Permission denied
If you get an error relating to permission denied when trying to execute a script, it might have something to do with SELinux.
Two or more containers are trying to mount the same volume. With SELinux it’s not possible without
the z
option.
For more information about using the z
option,
read Docker’s documentation.
Debugging
Instead of using breakpoint()
, add the following line to your code where you
want a debug:
import pdb; pdb.set_trace()
Attach to running container to use debugger. To get the container ID, run
docker ps
and look in the NAMES
column.
docker attach [container_id]
Backend server
Contributing to the backend server
Front-end app
Contributing to the frontend client
Push code change
- Fork the Mage github repo: https://github.com/mage-ai/mage-ai
- Create a branch in your forked repo and commit your changes
- Create a pull request
- Tag Mage team members for PR review (@wangxiaoyou1993, @dy46, @johnson-mage, @tommydangerous)