summaryrefslogtreecommitdiff
path: root/docs/get-involved
diff options
context:
space:
mode:
authorelijah <elijah@riseup.net>2013-11-05 16:00:16 -0800
committerelijah <elijah@riseup.net>2013-11-05 16:00:16 -0800
commit889ec6f334239fa00bc08aa6fb117172b59e0962 (patch)
tree0d94fefbdac23f6882cbaca81cbc294d3f3d8bf7 /docs/get-involved
parentf0a4221cc54688f42df4b45d637a26cb8b7e201c (diff)
created a 'get-involved' section
Diffstat (limited to 'docs/get-involved')
-rw-r--r--docs/get-involved/coding.haml77
-rw-r--r--docs/get-involved/communication.haml20
-rw-r--r--docs/get-involved/en.haml6
-rw-r--r--docs/get-involved/source.haml84
4 files changed, 187 insertions, 0 deletions
diff --git a/docs/get-involved/coding.haml b/docs/get-involved/coding.haml
new file mode 100644
index 0000000..86686b1
--- /dev/null
+++ b/docs/get-involved/coding.haml
@@ -0,0 +1,77 @@
+- @title = "Contributing Code"
+- @summary = "How to issue a pull request."
+
+%h1.first Contributing Code
+
+%h3 Submitting a pull request
+
+%p All development happens via pull requests. To add a new feature or fix a bug, the developer must create a new branch off <code>develop</code>, make their changes, and then issue a pull request for another developer to review before the changes get merged back into <code>develop</code>.
+
+%p Here is an example, using github with username <code>rms</code> and repository <code>bitmask_client</code>. You don't need to use github, but it is a friendly way to get started.
+
+%p
+ %b Step 1 &mdash; Fork on github
+
+%p Login to github.com as 'rms', browse to #{link 'https://github.com/leapcode/bitmask_client'}, and click the fork button.
+
+%p Now you should have a fork of the code available at <code>https://github.com/rms/bitmask_client</code>.
+
+%p
+ %b Step 2 &mdash; Set up local clone
+
+%p Clone the upstream repository:
+
+%pre
+ %code
+ git clone https://leap.se/git/bitmask_client
+ cd bitmask_client
+
+%blockquote
+ .p NOTE: Alternately, you can use the github mirror at <code>https://github.com/leapcode/bitmask_client</code>. It does not matter which one you choose.
+
+%p
+ %b Step 4 &mdash; Add a "remote" for your fork
+
+%p Next, you need to add the fork you created on github as an alternate remote in your local repository:
+
+%pre
+ %code
+ git remote add rms https://github.com/rms/bitmask_client.git
+
+%p
+ %b Step 5 &mdash; Create a new feature branch
+
+%pre
+ %code
+ git fetch origin
+ git checkout develop
+ git checkout -b feature/my_new_feature
+
+%p
+ %b Step 6 &mdash; Hack away
+
+%P Make all your changes in your <code>feature/my_new_feature</code> branch, with a separate <code>git commit</code> for each discrete modification you make.
+
+%p
+ %b Step 7 &mdash; Prepare for pull request
+
+%p Once you are happy with your branch, prepare it for a pull request by rebasing on the latest upstream <code>develop</code> branch. This will also give you an opportunity to clean up your commit history by squashing and changing commit messages.
+
+%pre
+ %code
+ git fetch origin # ensure the latest
+ git checkout feature/my_new_feature # if not already checked out
+ git rebase -i develop # rebase and clean up commits
+
+%p
+ %b Step 8 &mdash; Submit pull request
+
+%p Next, you will push your local feature branch to your fork on github, and then issue a pull request.
+
+%pre
+ %code
+ git push rms feature/my_new_feature
+
+%p Then browse to <code>https://github.com/rms/bitmask_client</code>, where you will see a handy button to issue a pull request. Make sure that the upstream branch is <code>leapcode/bitmask_client:develop</code> and you are requesting the merge of <code>rms/bitmask_client:feature/my_new_feature</code>.
+
+Then you are done. Some other developer will get a notice of your pull request, review the changes, and merge into upstream <code>develop</code> branch. If they have questions or comments, you will get an email from github.
diff --git a/docs/get-involved/communication.haml b/docs/get-involved/communication.haml
new file mode 100644
index 0000000..429ffed
--- /dev/null
+++ b/docs/get-involved/communication.haml
@@ -0,0 +1,20 @@
+- @title = "Communication channels"
+- @summary = "How to communicate with other people working on the code."
+
+%h1.first Communication channels for development
+
+%h3 IRC
+
+%p Probably the fastest and most reliable way to contact anyone involved with LEAP. Don't despair if you don't get a reply right away, we are all in different time zones and we all are able to read the scrollback history, so someone will reply eventually.
+
+.well
+ \#leap-dev on freenode.net
+
+%h3 Mailing lists
+
+.well
+ discuss&#x0040;leap&#x002e;se
+
+%ul
+ %li To subscribe, send mail to <code>discuss-subscribe&#x0040;leap&#x002e;se</code>
+ %li To unsubscribe, send mail to <code>discuss-unsubscribe&#x0040;leap&#x002e;se</code>
diff --git a/docs/get-involved/en.haml b/docs/get-involved/en.haml
new file mode 100644
index 0000000..d1122b7
--- /dev/null
+++ b/docs/get-involved/en.haml
@@ -0,0 +1,6 @@
+- @title = "Get Involved"
+- @summary = "Contributing to LEAP software development."
+
+%h1.first Getting involved with LEAP development
+
+= child_summaries \ No newline at end of file
diff --git a/docs/get-involved/source.haml b/docs/get-involved/source.haml
new file mode 100644
index 0000000..66b9dbe
--- /dev/null
+++ b/docs/get-involved/source.haml
@@ -0,0 +1,84 @@
+- @title = "Source Code"
+- @summary = "Overview of the main code repositories"
+
+%h1.first Source Code
+
+%p This page should give an easy overview of the most important repositories. The authorative code is hosted at #{link 'leap.se/git' => 'https://leap.se/git/'}, but they are also mirrored to #{link 'github' => 'https://github.com/leapcode/'}.
+
+%p In general, all LEAP code repositories will have <code>develop</code> and <code>master</code> branches. The <code>master</code> branch should be a stable, release version of the software. The <code>develop</code> branch is where all feature and bugfix branches are merged into.
+
+%h3 Client code
+
+%table.table.table-bordered
+ %tr
+ %td bitmask_client
+ %td The Bitmask desktop client application, supporting encrypted internet proxy, secure email, and secure chat (coming soon). The client is written in Python, runs on Linux, Mac, and Windows, and is licensed under the GPLv3.
+ %td
+ =# link 'https://leap.se/git/bitmask_client'
+ = link 'https://github.com/leapcode/bitmask_client'
+ %tr
+ %td bitmask_android
+ %td Android version of the Bitmask client, supporting encrypted internet proxy. Future development will include support for secure email. Licensed under the GPLv3.
+ %td
+ = link 'https://github.com/leapcode/bitmask_android'
+
+%h3 Service provider platform
+
+%table.table.table-bordered
+ %tr
+ %td leap_platform
+ %td Server automation recipes for running secure communication services via the LEAP Platform. Written mostly using puppet, and licensed under the GPLv3.
+ %td
+ = link 'https://leap.se/git/leap_platform'
+ = link 'https://github.com/leapcode/leap_platform'
+
+ %tr
+ %td leap_cli
+ %td Command line interface for managing a service provider running the LEAP platform. Written in Ruby and released under the GPLv3.
+ %td
+ = link 'https://leap.se/git/leap_cli'
+ = link 'https://github.com/leapcode/leap_cli'
+
+ %tr
+ %td soledad
+ %td Soledad (Synchronization of Locally Encrypted Data Among Devices) provides a synchronized, client-encrypted document database. Written in Python.
+ %td
+ = link 'https://github.com/leapcode/soledad'
+
+ %tr
+ %td nickserver
+ %td Nickserver is a daemon supporting nicknym, a protocol to map user nicknames to public keys. Written in Ruby, released under the GPLv3.
+ %td
+ = link 'https://leap.se/git/nickserver'
+ = link 'https://github.com/leapcode/nickserver'
+
+
+%h3 Web applications and libraries
+
+%table.table.table-bordered
+ %tr
+ %td leap_web
+ %td Web application for the LEAP platform, providing user management, tickets, billing, and REST API.
+ %td
+ = link 'https://leap.se/git/leap_web'
+ = link 'https://github.com/leapcode/leap_web'
+ %tr
+ %td leap_website
+ %td This website
+ %td
+ = link 'https://leap.se/git/leap_website'
+ %tr
+ %td leap_doc
+ %td LEAP Documentation (everything under leap.se/docs including this page)
+ %td= link 'https://leap.se/git/leap_doc'
+ %tr
+ %td srp_js
+ %td Secure Remote Password (SRP) library for Javascript.
+ %td
+ = link 'https://leap.se/git/srp_js'
+ = link 'https://github.com/leapcode/srp_js'
+ %tr
+ %td ruby_srp
+ %td Secure Remote Password (SRP) library for Ruby.
+ %td
+ = link 'https://github.com/leapcode/ruby_srp' \ No newline at end of file