@page documentationGuide Documentation Guide



# Doxygen

The program called "doxygen" ([GitHub Page](https://github.com/doxygen/doxygen) and [Website](https://www.doxygen.nl/)) is what we're using to document our project and try to make things a bit simpler/easier not only for us, but also future projects or people looking at what we've done.

It simply uses a small configuration file at the root of the project `/Doxyfile` to store some settings, and the rest is through mainly Markdown files (`.md` or `.markdown`) and source code files.

It is setup (as of writing this) that someone can simply open the `/Doxyfile` in the GUI Wizard, click on the "Run" tab, then "Run doxygen", and everything will be updated... that's it.



# Updating Documentation

You need to have installed the program from either the GitHub page or website, then simply open the `/Doxyfile` within the GUI frontend or "Wizard".



# Important Notes

- Make sure that the `/Doxyfile` stays where it's at! It should be kept at the root directory (just to keep things simple)
- Make sure you use RELATIVE paths when changing configurations, or else when someone else tries running the `/Doxyfile`, they'll have to re-do all of them in order for it to start functioning again.
- **DO NOT** put any files into the `/Documentation` folder manually, as they **WILL BE DELETED** when doxygen is run.



## For Consistency

- Please make sure the internal names ("tags") of files are using "camelCase"
  - Example: for "@page documentationGuide Documentation Guide"
    "documentationGuide" is the name/tag used internally by doxygen.
    "Documentation Guide" is what shows up on the output documentation.

## Adding Images

Use this pattern/format:
@code
@image html "Documentation Guide.assets/Funny-Cat-Hidden.jpg"
@cond EXCLUDED
![img](Documentation Guide.assets/Funny-Cat-Hidden.jpg)
@endcond
@endcode

Which will output a single image that is both easily viewable in Doxygen, as well as Markdown viewers/editors.

@cond EXCLUDED
**Note: if you are reading this in a Markdown/text editor, do not include the '@code' and '@endcode' lines! Those are just to present it nicely for those reading in Doxygen pages. Please also switch to view the source code view if not already, that way you can see the code for the Markdown image.**
@endcond