Skip to content

Latest commit

 

History

History
107 lines (73 loc) · 3.66 KB

CONTRIBUTING.md

File metadata and controls

107 lines (73 loc) · 3.66 KB

How to contribute to KVM (Karte Von Morgen)

Found a bug?

Please let us know about any bugs you find via the github issue editor. Click here and report what you actually experienced and what you would have expected to happen.

Pull Request

We are happy about any contribution via a pull request. To be able to easily accept your pull request, please stick to the following Style Guide.

Coffeescript Style Guide

Please follow the coffeescript style guide from polarmobile

Beginner Developer Guide

If you want to contribute but do not know all the used technolgies, then don't worry. In the following lines you find a step-by-step manual how to get started and help us with developing on KVM (Karte Von Morgen).

Setup your system

Take an operating system of your choice. Instead of describing the setup of multiple systems, I'll use Kubuntu 15.04 for this guide (although I personally prefer NixOS).

First of all, make shure you have a good text editor you're comfortable with. Here we'll use vim. Open a terminal (e.g. konsole) an install it:

sudo apt-get update
sudo apt-get install vim

Warning: If you never used vim, start with something like kate (already installed in Kubuntu).

Ok, that's boring, I know. So go on and install Node that we'll need to build the app:

sudo apt-get install nodejs

To manage the source code and to keep track of changes, git will help you:

sudo apt-get install git

Great, that's it! Your are done!

Learn the basics

If you're a web developer, you probably can skip this section. For newcomers I recommend to play around with the following technologies before starting with the KVM development.

  • JavaScript
  • HTML
  • CSS

Ok, that's really really the bare minimum. So let's have a look at some technologies used for KVM:

  • CoffeeScript - that's a great alternative syntax for JS
  • Stylus - that's a great preprocessor for CSS
  • React - it's the framework we use to build the view

Still boring for you? So go to the next section. Otherwise stop and learn!

Note: I recommend to install zeal:

$ sudo add-apt-repository ppa:zeal-developers/ppa
$ sudo apt-get update
$ sudo apt-get install zeal

Learn more

Now I assume you're a super React-Coffee-Stylus hacker that really want to learn something new.

So go ahead an learn all about the flux architecture. And don't miss the great cartoon guide to flux.

Then you should be prepared to have a look at the redux framework. I recommend to read at least the introduction and the basics sections as a first overview.

Now I think it's easy for you to connect react and redux with react-redux.

Congratulations, your now a pro that can help other to hack the awesome KVM platform!

That's it. Everything else is a matter of detail. Nevertheless here are some more libs used and you should/could know about: