You can contribute to Fe!
If you find problems with Fe you can report them to the development team on the project Github.
You are also welcome to work on existing issues, especially any tagged
good first issue on the project issue board.
We always appreciate improvements to the project documentation. This could be fixing any bugs you find, adding some detail to a description or explanation or developing a new user guide.
To add to the docs you can fork the Fe Github repository and make updates in the
/docs directory. You can build and serve locally using
mdbook build && mdbook serve. Then, when you are happy with your changes you can raise a pull request to the main repository.
You are also welcome to work on Fe itself. There are many opportunities to help build the language, for example working on the compiler or the language specification, adding tests or developing tooling.
It is a good idea to connect with the existing Fe community to find out what are the priority areas that need attention and to discuss your idea in context before putting time into it. You can find Fe developers on the Discord or you can use the Github issue board.
Please note that there has been a substantial amount of work done on the
fe-v2branch of the repository that includes breaking changes. When merged
fe-v2will revert new contributions based on
To make your work v2 ready you can build off the
fe-v2branch. It is recommended to seek out issues tagged
v2in the Github Issue board.
We appreciate help answering questions on the Discord and other platforms such as Stack Exchange or Twitter.
Please note that this project has a Code of Conduct. By participating in this project — in the issues, pull requests, or Discord channel — you agree to abide by its terms.
To report an issue, please use the Github issue board. When reporting issues, please mention the following details:
- Fe version.
- your operating system.
- the steps required to reproduce the issue
- actual vs expected behaviour
- any error messages or relevant logs
- the specific source code where the issue originates
The appropriate place for technical discussions about the language itself is the Fe Discord.
Your commit messages should be concise and explain the changes made. Your pull request description should explain why the changes were made and list the specific changes. If you have to pull in changes from
master to your fork (e.g. to resolve merge conflicts), please use
git rebase rather than
New features should be accompanied by appropriate tests.
Finally, please make sure you respect the coding style for this project.
Thank you for contributing to Fe!