Commit c49e9b33 authored by Lukas Matt's avatar Lukas Matt

Add development guide and index page

parent 7f405515
.sass-cache/
_site/
theme: jekyll-theme-dinky
\ No newline at end of file
title: GangGo
description: A Decentralized Social Network
show_downloads: true
github:
slug: ganggo/updater
theme: jekyll-theme-dinky
<!DOCTYPE html>
<html lang="{{ site.lang | default: "en-US" }}">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="chrome=1">
{% seo %}
<link href='https://fonts.googleapis.com/css?family=Arvo:400,700,400italic' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="{{ '/assets/css/style.css?v=' | append: site.github.build_revision | relative_url }}">
<script src="/js/jquery-3.2.1.min.js"></script>
<script src="{{ '/assets/js/scale.fix.js' | relative_url }}"></script>
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
</head>
<body>
<script>
(function() {
var apiUrl = "https://api.github.com/repos/{{ site.github.slug }}/releases/latest";
$.getJSON(apiUrl).done(function (release) {
$.each(release.assets, function(index, asset) {
var a = $("<a>").attr("class", "buttons")
.attr("href", asset.browser_download_url)
.append(release.tag_name + " " + asset.name);
var li = $("<li>").attr("style", "height:30px")
.attr("class", "download").append(a);
// append download link to the menu
$("#downloadBtns").append(li);
});
});
})();
</script>
<ul>
{% assign navigation_pages = site.html_pages | sort: 'navigation_order' %}
{% for page in navigation_pages %}
{% if page.navigation_order %}
<li><a class="buttons" href="{{ page.url }}">{{ page.title }}</a></li>
{% endif %}
{% endfor %}
</ul>
<hr/>
<ul id="downloadBtns">
{% if site.show_downloads %}
{% include latest_release.html %}
{% endif %}
<li><a class="buttons github" href="https://github.com/{{ site.github.slug }}">View On GitHub</a></li>
</ul>
{% include header.html %}
<div class="wrapper">
<header>
<h1 class="header">{{ site.title | default: site.github.repository_name }}</h1>
<p class="header">{{ site.description | default: site.github.project_tagline }}</p>
{% include navigation.html %}
{% if site.github.is_project_page %}
<p class="header">This project is maintained by <a class="header name" href="{{ site.github.owner_url }}">{{ site.github.owner_name }}</a></p>
{% endif %}
{% if site.github.is_user_page %}
<ul>
<li><a class="buttons github" href="{{ site.github.owner_url }}">GitHub Profile</a></li>
</ul>
{% endif %}
</header>
<section>
{{ content }}
</section>
</div>
<!--[if !IE]><script>fixScale(document);</script><![endif]-->
{% include footer.html %}
---
title: Development
layout: default
navigation_order: 2
---
# Dependencies
* GoLang [golang.org/dl](https://golang.org/dl/)
* NodeJS/NPM [nodejs.org/en/download](https://nodejs.org/en/download/package-manager)
After downloading and installing both dependencies do not forget to setup your go-environment:
export GOROOT=/opt/golang
export GOPATH=$HOME/.golang
export PATH=$PATH:$GOPATH/bin
This will ensure that all source files and binaries will be placed in `$GOPATH` and will be available in your shell via your `$PATH`-variable.
Finally we can execute `make` to fetch the rest of the npm/GoLang dependencies:
VERSION=v0 MODE=prod make install-deps
Depending on your internet connection, that could take a while.
# Workspace
Assuming we want to work on the API, Federation and application server we should
create a workspace first:
mkdir -p ~/workspace/ganggo
cd ~/workspace/ganggo
git clone --depth=1 https://github.com/ganggo/ganggo
git clone --depth=1 https://github.com/ganggo/api
git clone --depth=1 https://github.com/ganggo/federation
Since `go build` will only build within `$GOPATH` we remove the previouse downloaded libs and create three symlinks to our workspace:
rm -r $GOPATH/src/gopkg.in/ganggo/ganggo.v0 $GOPATH/src/gopkg.in/ganggo/api.v0 $GOPATH/src/gopkg.in/ganggo/federation.v0
ln -s $GOPATH/src/gopkg.in/ganggo/ganggo.v0 ~/workspace/ganggo/ganggo
ln -s $GOPATH/src/gopkg.in/ganggo/api.v0 ~/workspace/ganggo/api
ln -s $GOPATH/src/gopkg.in/ganggo/federation.v0 ~/workspace/ganggo/federation
That's it! You can switch into `~/workspace/ganggo/ganggo` now and start the web-server by running:
revel run gopkg.in/ganggo/ganggo.v0
## Updater
If you want to build the update-wrapper as well switch into your workspace and fetch the repository:
cd ~/workspace/ganggo
git clone --depth=1 https://github.com/ganggo/updater
Assuming you already installed all dependencies and followed the above examples you can build a new release with:
VERSION=v0 MODE=prod make release
The `VERSION` flag is used to identify different software versions via [gopkg.in](http://gopkg.in) and `MODE` will decide whether the server runs in prod (production) or dev (development) mode.
## Welcome to GitHub Pages
---
title: Home
layout: default
navigation_order: 1
---
You can use the [editor on GitHub](https://github.com/Zauberstuhl/ganggo.github.io/edit/master/index.md) to maintain and preview the content for your website in Markdown files.
# {{ site.title }} - {{site.description}}
Whenever you commit to this repository, GitHub Pages will run [Jekyll](https://jekyllrb.com/) to rebuild the pages in your site, from the content in your Markdown files.
GangGo is a decentralized social network written in [GoLang](https://golang.org/). It uses the same federation library like [Diaspora](https://diasporafoundation.org/) and therefore can participate in conversations like any other [Pod](https://wiki.diasporafoundation.org/Choosing_a_pod#Why_do_I_need_to_choose_a_pod.3F)!
### Markdown
> This is the application server repository. Which is still
> in pre-alpha state so please don't use it for production!
Markdown is a lightweight and easy-to-use syntax for styling your writing. It includes conventions for
## Usage
```markdown
Syntax highlighted code block
Fetch the latest updater version from [github.com/ganggo/updater/releases](https://github.com/ganggo/updater/releases) and execute it. It will come with a small installation wizard and guide you through the first steps.
# Header 1
## Header 2
### Header 3
## Contribution
- Bulleted
- List
If you want to push your changes to the offical ganggo repository:
1. Numbered
2. List
**Bold** and _Italic_ and `Code` text
[Link](url) and ![Image](src)
```
For more details see [GitHub Flavored Markdown](https://guides.github.com/features/mastering-markdown/).
### Jekyll Themes
Your Pages site will use the layout and styles from the Jekyll theme you have selected in your [repository settings](https://github.com/Zauberstuhl/ganggo.github.io/settings). The name of this theme is saved in the Jekyll `_config.yml` configuration file.
### Support or Contact
Having trouble with Pages? Check out our [documentation](https://help.github.com/categories/github-pages-basics/) or [contact support](https://github.com/contact) and we’ll help you sort it out.
* follow the [development guide](/development.html)
* fork the project
* create a new branch with your code changes
* create a [pull request](https://github.com/ganggo/ganggo/compare)
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment