Skip to content
Brian Schrader edited this page Nov 29, 2017 · 9 revisions

How to Contribute to Adventurer's Codex

It's easy!

To get started with setting up your development environment, head over to Getting Started.

Branching and PRs

Adventurer's Codex uses the typical fork-PR Open Source workflow. To get started, please fork the repo, set up your development environment and checkout a new branch to start making changes. Please remember to make all branches off of the develop branch. Master is the current version of production that is deployed and exists mostly as a way to easily track down bugs in the live environment. The develop branch is our main working branch.

$ git checkout develop
$ git checkout -b my-new-feature

Once you've committed your changes, feel free to push to your fork and make a PR. Please fill out the PR template as requested as it helps us understand the goal of your fix. If you're fixing a logged issue, please link to it in the PR description.

Code Conventions

Adventurer's Codex has it's own style guide for Javascript, HTML, and CSS. If you use an editor supported by Editor Config then everything should work automatically. Otherwise the conventions are listed below.

Javascript

indent_size = space
indent_size = 4

JSON, YAML, CSS, and HTML

indent_style = space
indent_size = 2

Style Guide

As this is Javascript, the code style guide is as follows.

Casing: camelCase with the first letter lowercase unless the value is a Knockout ViewModel or other psudo-class object definition.

Quoting: In all Javascript, use of single quotes over double quotes is preferred.

File Naming: All files with multi-word names should be seperated with underscores (i.e. node_modules or ability_scores); hyphens are strongly discouraged.

To check if your code adheres to the style, run the linter.

$ npm run lint

Now that we are using webpack, please use ES6 and ES7.

Issues and Features

Please look through the issues list and feel free to ask questions! A lot of the issues can appear terse, but its probably because they're 'notes to our future-selves'. If a feature looks interesting to you, but you're not clear on the details, ask away!

For more information on what kinds of issues are good to start tackling, checkout our Issue Label Guide