Skip to content

Commit

Permalink
Add readme, license, and contributing docs
Browse files Browse the repository at this point in the history
  • Loading branch information
Beyley committed Aug 19, 2023
1 parent 8b14d45 commit f758b66
Show file tree
Hide file tree
Showing 3 changed files with 751 additions and 0 deletions.
44 changes: 44 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# New Contributor's Survival Guide

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.

## Requirements:
- Basic knowledge of [Zig](https://ziglang.org/)
- Basic knowledge of the Discord RPC API

## Software prerequisites
- [Zig](https://ziglang.org)
- [Git](https://git-scm.com)
- Any text editor

# Preparing your system
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](https://desktop.github.com) 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 [email protected]`

# Preparing your new development environment
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:
`$ [email protected]:<YOUR_USERNAME>/FreshPresence.git`

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 -- https://REFRESHINSTANCE/ USERNAME`

To compile for a specific platform, you can append `-Dtarget=TARGET` to the build invocation, eg. `zig build -Dtarget=x86_64-linux`

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](https://github.com/LittleBigRefresh/FreshPresence) as the "**upstream**" remote using your IDE or GitHub Desktop. Happy hunting!

### Follow up in the patching documentation for connecting using your choice of device, TBW
Loading

0 comments on commit f758b66

Please sign in to comment.