selfdefined/CONTRIBUTING.md
2020-02-06 18:25:16 +03:00

3.7 KiB
Raw Blame History

Contributing Guidelines

Hi! Nice to have you with us. This file will walk you through the steps you need to take if you want to contribute a word or some code to the project. Lets go.

Actually before we start a quick word of caution: unfortunately, the contribution process involves some technical knowledge. We are aware that this poses a problem for most people and are discussing how a more inclusive contribution process could look like.

Contributing Words

Version 1: Issues

If you know a word that should be defined, but for whatever reason dont feel confident writing the definition yourself (or maybe you disagree with an existing defintion), please open an issue. We can then collectively figure out how to best get this word defined.

An issue might also be appropriate if you are unsure about some nuances of a definition you want to define.

Version 2: Pull Requests

You got a definition and want to define it. Thats awesome. Lets go. Currently, you need to fork this repository and open a PR out of your fork. If that sounds like gibberish to you, Chaser Pettit wrote a great introduction to the workflow.

Working on Words

After youve forked the repo, you will need to write a definition. Good times. Hopefully. Always remember, if you are unsure, you can first open an issue or create a PR, include «WIP» in the title, and ask for early feedback.

  • Step 1: Create a file named word.md in in the definitions folder where we store all definitions.

    word should be the name of the word you are defining. Not word. Except you are defining «word». In this case it should be word.

    For this tutorial I will take the word «Obsessive Compulsive Disorder», as it allows me to show some of the features. That means I would create the file obsessive-compulsive-disorder.md. As it is already defined, you can have a look at the finished definition.

  • Step 2: Populate the file you created.

    All definitions consist of two parts: front matter and content. Front Matter is a technical bubble for some structured data about your content. On our website you can find the complete documentation on Front Matter. Heres a quick run down:

    Every definition needs to have this meta information: title, slug, defined, and speech. Let's discuss what each of these mean:

    • title is easy. In my case it's «Obsessive Compulsive Disorder».

    • slug is a string that we'll use to link to this word. It should be a URL-friendly, hyphenated version of the title. In my case: obsessive-compulsive-disorder.

    • defined flag can either be true or false. As soon as you set it to true, your definition will be visible.

    • speech stores information about the word's part of speech. What kind of word you are defining? A noun? Or an adjective? Thats what speech is for. In my example it is a noun.

    This leaves us with the following front matter:

    ---
    title: Obsessive Compulsive Disorder (OCD)
    slug: obsessive-compulsive-disorder
    defined: true
    speech: noun
    ---
    
    

The finished definition has some more content. We encourage you to take a look around, add things to the file with your word's definition, and see what happens on the page.

Pre-Made File Examples

We have created some examples that you can use as the baseline for your work. Take a look at the File Examples section of our documentation.