This document details the steps and other important information on how to contribute to FreshPresence. Feel free to skip sections if you believe you're already set.
- Basic knowledge of Zig
- Basic knowledge of the Discord RPC API
- Zig (We target the latest Mach Nominated Zig Version)
- Git
- Any text editor
In order to use Git you must set up your configuration, this should ideally match your GitHub account's name and email.
You can use GitHub Desktop or the IDE of your choice to help you with this! Or if you're more technically inclined, follow the CLI instructions below.
This will modify the global config, which will allow you to contribute to multiple projects with the same name and email with ease.
$ git config --global user.name Your Name
$ git config --global user.email you@example.com
It's almost time to clone FreshPresence! Create a fork by pressing the "Fork" button at the base of this repository.
Afterwards, open a terminal to your working directory and clone the new fork using Git.
This is usually done with the following command:
$ git clone https://github.com/<YOUR_USERNAME>/FreshPresence
Now, open the folder/workspace/solution with the IDE you chose. Explore the codebase, experiment, and have fun!
To run the software in Debug mode, simply write:
$ zig build run
To compile for a specific platform, you can append -Dtarget=TARGET
to the build invocation, eg. zig build -Dtarget=x86_64-linux-gnu
To compile a release build, you can append -Doptimize=ReleaseSmall
. the possible options are Debug
, ReleaseSmall
, ReleaseFast
, ReleaseSafe
. Our builds are compiled with ReleaseSmall, but for test builds Debug or ReleaseSafe are preferred!
Make sure to add the upstream FreshPresence repository as the "upstream" remote using your IDE or GitHub Desktop. Happy hunting!