Contributor's Guide
AW2 March 13, 2024How to Contribute
Time / Effort
Contributors of time and expertise are very welcomed. Most content on the site is written in markdown, a simple text file format.
It's pretty approachable, and works like discord. For example, using **asterisks**
to bold text is markdown.
We have some adaptations to add Guild Wars 2 specific functionality of course, but most of the complexity will be working with github, the site that stores the files.
Financial
Of course, financial contributions are always welcome too, if that's preferred. We have a team set up on Liberapay, which is an open community funding platform based in France. All funds currently go towards development and hosting costs, but we hope to be able to offer honorariums to build contributors to recognize their efforts.
Other options such as GitHub Sponsors or Patreon are being considered. Reach out on discord if you prefer one of those options.
Content how to...
Accessibility Wars uses a static site generator. This means there is no database, no server-side scripts, and no way to edit directly on the site.
However, it is built from source code and contributors can make edits and submissions using GitHub's interface (or the git tool directly).
Setup
- Sign up for an account on GitHub. Feel free to use whatever name you wish. Be aware all your proposed changes will be associated with this name and it will be public.
- Familiarize yourself with basic markdown
How to... edit
- Find content (such as a build or guide) to edit on the source repository.
- all content lives in this github folder
- builds live in builds
- guides live in guides
- miscellaneous pages live in pages
- Click the markdown (.md) file to view it in the github editor
- Click the pencil icon to switch to edit mode, and make your changes
- Click the [Commit Changes...] button
- Give it a reasonable 1-line commit message and description of what was changed (Berdandy will be reading these so please make sense).
Commit message: updated mad bomber mechanist to latest balance
Extended description: old mad bomber mechanist was missing relics and needed a full trait rework - Ensure your email is correct
- Ensure [Create a new branch for this commit and start a pull request] is selected.
- the default name is very software oriented (username-patch-N), change it to make sense
- Good example: mad-bomber-balance-update-jan-2024
- Bad example: changed stuff
- Click [Propose changes]
- This opens a pull request (git's terminology for a "request for the maintainer to pull your changes in")
- Again, title and description. Title should be same as above. Add description if you wish
- Click [Create pull request]
From here, the maintainers (Berdandy) will get notified about the submitted changes and can merge them once reviewed. Keep an eye on your inbox and/or discord for possible modifications. After changes are accepted, the website builds and deploys. Usually less than 2 mins.
How to... preview
In short:
- install the custom site buider azola
- clone the source repository
- run
azola serve
- go to http://127.0.0.1:1111 in your browser
That's basically it. It will automatically refresh whenever it detects changes.
How to... create
Method 1: copy/edit files
- clone the source repository with GitHub Desktop, gh, or just git. The following guide on pull requests is helpful if you’re new to pull requests or GitHub Desktop.
- find an existing build in builds
- duplicate the md file, changing name
- make all your edits, and preview changes
- add the file on github
- submit pull request
- turn on github notifications and wait for comments. If anything needs to be fixed, berdandy will message you using github
- if needed, fix issues, and push new changes to github, updating the pull request
- if all is good, it will be merged
Method 2: export
Follow the above steps, but instead of finding an existing build file and editing it, use the buildwars commandline tool in combination with an ArenaNet API Key (make one here), to export a character to our .md file format.
For example:
> buildwars API-KEY-GOES-HERE "Character Name" 1 1
Method 3: create on github web
This method doesn't require software installation, but the price is that you don't get to preview it, and it's much easier to upload broken content if you can't see it.
- create a (free) github account as per Setup above
- download a build .md file from the repository
- edit it to contain your new build with your favourite text editor
- in the builds directory, click Add File > Create New File, NOT Upload Files.
Important! This may give you a warning about a need to make a Fork (which is a copy of the site). You want that. - name the file. For example "my-awesome-warrior.md"
- paste the content of the new build file
- Click Commit Changes... and give it a commit message and description. This is for your own benefit of change history.
- Once you're satisfied with the preview, click Create pull request. The description here is for the reviewers (ie, berdandy).
Important! ensure Allow edits by maintainers is checked - turn on github notifications and wait for comments. If anything needs to be fixed, berdandy will message you using github
- if needed, fix issues, updating the pull request
- if all is good, it will be merged
Additional tools
These additional tools are useful. They will eventually be integrated, but for now, they're useful standalone utils.