Contributing to the DroneEngage Wiki
Welcome to the DroneEngage Ardupilot Wiki! We encourage contributions to improve our documentation for DroneEngage, a cloud-based platform for Ardupilot drone operations. This guide explains how to contribute to the wiki, hosted at https://github.com/DroneEngage/droneengage_ap_wiki.
The DroneEngage project includes repositories like droneengage_communication, droneengage_mavlink, droneengage_camera, and droneengage_webclient_react. This wiki focuses on user and developer documentation, and your contributions help make it clearer and more comprehensive.
Overview
You can contribute by: - Fixing typos or improving clarity in existing pages (e.g., Getting Started, DroneEngage FAQ). - Adding new topics, such as tutorials or troubleshooting guides. - Updating outdated content, like binary versions in DroneEngage Installation. - Suggesting improvements via GitHub Issues.
No contribution is too small! Whether you’re a drone enthusiast or a developer, your input is valuable.
Prerequisites
GitHub Account: Create one at https://github.com.
Git: Install Git on your computer (https://git-scm.com/downloads).
Docker: Install Docker to test changes locally (https://docs.docker.com/get-docker/).
Text Editor: Use any editor (e.g., VS Code, Notepad++) to edit reStructuredText (RST) files.
RST Knowledge: Familiarity with RST syntax is helpful (see RST Primer).
Contribution Steps
Fork the Repository: - Go to https://github.com/DroneEngage/droneengage_ap_wiki. - Click Fork to create a copy under your GitHub account.
Clone Your Fork: - Run in your terminal:
$ git clone https://github.com/YOUR_USERNAME/droneengage_ap_wiki.git $ cd droneengage_ap_wiki
Create a Branch: - Create a new branch for your changes:
$ git checkout -b my-contribution
Edit RST Files: - Navigate to the docs/ folder (or wherever RST files are stored). - Edit existing files (e.g., de-faq.rst, de-install-unit.rst) or create new ones. - Follow RST syntax and reference existing files for style (e.g., use de_mavlink Configuration File for cross-links). - Example: To add a new FAQ, edit de-faq.rst and add a numbered entry.
Test Changes Locally: - Build the wiki using Docker:
$ ./docker.create.sh $ ./docker.run.sh
Output appears in the ./build folder. Open the generated index.html in a browser to preview.
Ensure links (e.g., Drone-Engage Glossary) and formatting work correctly.
Commit and Push: - Commit your changes:
$ git add . $ git commit -m "Add new FAQ entry about camera setup" $ git push origin my-contribution
Submit a Pull Request: - Go to your fork on GitHub. - Click Compare & pull request. - Describe your changes clearly (e.g., “Updated FAQ with camera troubleshooting”). - Submit to the main branch of DroneEngage/droneengage_ap_wiki.
Respond to Feedback: - Maintainers may request changes. Update your branch and push new commits if needed.
Testing Changes
To ensure your changes render correctly: - Run the Docker scripts to build the wiki (see DroneEngage Development Topics for related build info). - Check for broken links or formatting errors in the ./build folder. - If adding code blocks (e.g., JSON in de_comm config.module.json Configuration File), verify syntax.
Contribution Ideas
Fix Typos: Improve clarity in pages like What is Drone-Engage ? or de_mavlink Configuration File.
Add Tutorials: Create guides for features like swarm operations (Drone-Engage Advanced) or SITL (Simulation using SITL).
Update Binaries: Keep installation instructions current (e.g., reference https://cloud.ardupilot.org/downloads/RPI/Latest/).
Expand FAQ: Add questions to DroneEngage FAQ based on user feedback.
Contact
For questions or ideas, open an issue at https://github.com/DroneEngage/droneengage_ap_wiki/issues or email team@ardupilot.org. Join our community to help improve DroneEngage for everyone!