Developer Setup Guide¶
Overview¶
The FMTM can be divided into four parts:
- An API backend in FastAPI (code in:
src/backend
) - A desktop-based management frontend website in React (code in:
src/frontend
) - A mobile-based mapper frontend website in Svelte (code in:
src/mapper
) - Supporting services that tie everything together, such as ODK Central for collecting submission data, and an S3 service for storing files.
FMTM Backend¶
To view more details about the backend click here.
FMTM Frontend¶
To view more details about the frontend click here.
Prerequisites¶
- Stable internet connection.
- Git installed on your system.
- Docker and Docker Compose installed on your system.
See further details here
Setup: Repository Fork¶
1. Review documentation¶
Don't forget to review the Contribution guidelines and our Code of Conduct before contributing!
2. Fork the repository¶
Forking creates a copy of the repository in your own GitHub account. Go to the Field Mapping Tasking Manager repository and click the "Fork" button in the top right corner of the page.
3. Navigate to your working directory¶
Open a terminal and navigate to the directory you want to work in using the following command:
cd <work-dir>
Make sure to replace <work-dir>
with the name of your directory.
4. Clone the forked repository¶
Clone the forked repository to your local machine using the following command:
git clone https://github.com/<your-username>/fmtm.git
Make sure to replace <your-username>
with your GitHub username.
Setup: Running FMTM¶
See detailed instructions for this step here.
Setup: Contributing Code¶
1. Create a new branch¶
Create a new branch for your changes using the following command:
git checkout -b branch-name
Make sure to give your branch a descriptive name that reflects the changes you'll be making.
2. Make changes¶
Make your contribution, run tests where needed and save.
3. Add changes¶
Add the changes you've made using the following command:
git add <file-name>
Make sure you replace <file-name>
with the name of the file you made changes
to.
4. Commit and push¶
Once you've added changes, commit them to your local branch using the following command:
git commit -m "Add feature"
Make sure to write a descriptive commit message that explains the changes you've made. Then, push your changes to your forked repository using the following command:
git push origin branch-name
5. Submit a pull request¶
Go to your forked repository on GitHub and click the "Pull requests" tab, then click "Create pull request".
This will open a new pull request in the FMTM repository, where you can:
- Select the branch you wish to merge into
development
. - Describe your changes and request that they be merged into the main codebase.
That's it! You've now contributed to the Field Mapping Tasking Manager.
Help and Support¶
If you encounter any issues or need assistance while using FMTM, you can access the following resources:
- Check the FAQs.
- Message the team in the available slack channel: #field-mapping-tasking-manager
Happy coding!
The FMTM Developer Team