Skip to content

Commit

Permalink
Merge branch 'develop' into 'master'
Browse files Browse the repository at this point in the history
Readme update

- Preparations for GitHub mirror of `master` branch.

[ci skip]

See merge request !11
  • Loading branch information
Mark J. Becker committed Mar 13, 2016
2 parents 0f09250 + 4c68bb9 commit ad6210c
Show file tree
Hide file tree
Showing 2 changed files with 52 additions and 40 deletions.
2 changes: 1 addition & 1 deletion .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ variables:
APP_BUNDLE_ID: "com.marbec.corvi"
APP_CATEGORY_TYPE: "public.app-category.education"
APP_COPYRIGHT: "Copyright 2016 by marb.ec"
APP_VERSION: "v0.3.0"
APP_VERSION: "v0.1.0"
MAC_SIGN_ID: "Mac Developer: [email protected] (F9QDPTH27V)"

stages:
Expand Down
90 changes: 51 additions & 39 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,39 +1,51 @@
# Project Corvi - Social Learning Tool

## Repository Structure

### Branches
* develop (current development)
* master (tagged releases)

### Folders
* electron
* main.js, package.json
* frontend
* index.html, css, angular etc.
* backend
* main.go etc.
* .gitlab-ci.yml
* README.md

## Continuous Delivery Stages

1. Clean Up
2. Test Go
3. Build Go executable (darwin x64)
4. Build Go executable (linux x64)
5. Build Go executable (windows x64)
6. Build electron package (darwin x64)
7. Build electron package (linux x64)
8. Build electron package (windows x64)
9. Zip packages and upload to S3

### Build Docker image
* golang
* gox
* node.js + npm
* electron-packager
* electron-builder
* python + pip
* aws-cli
* zip
# Project Corvi - Social Learning
Corvi is a social learning app which works similar to an index-card box.
Users can create boxes to which they can add questions like vocabulary, formulae, definitions or similar.
Those questions get tested in regular intervals, depending on the learning progress the user makes.
Corvi makes sure, that new questions are learned stepwise to keep daily learning sessions short.
At the same time it takes care that the user does not unlearn previous questions.

![Corvi](https://zippy.gfycat.com/AridFluidIberianmole.gif)

# Download
Corvi is currently available for Windows, Mac OSX and Linux.
You can find the release notes and the download of the latest version in the [release](https://github.com/marbec-com/corvi-public/releases) section.

# Repository Structure
## Branches
The main repository is located at [GitLab](https://gitlab.solid.marb.ec/marbec/corvi) and the `master` branch is also mirrored at [GitHub](https://github.com/marbec-com/corvi-public).

* `develop` (current development)
* `master` (Releases)

## Folders
This repository contains the source code of the Corvi desktop client and is divided in three folders.

Folder | Content
------------ | -------------
`backend` | The Go backend takes care of storing and synchronizing data with the frontend. It persists data using SQLite, provides a RESTful API with WebSocket notifications and delivers static files (esp. the frontend).
`electron` | Configuration and starting script for electron. Electron takes care of starting the Go backend.
`frontend` | User interface, based on AngularJS.

## Continuous Delivery
Automated building and testing is available via GitLab CI as configured in `.gitlab-ci.yml`.
The current build environment consists of three dedicated runners - one for each platform (Linux, Mac & Windows).

1. Run Backend tests (Linux, Mac, Windows)
2. Create GitHub release
3. Build Go executable (Linux, Mac, Windows)
4. Pack Electron app (Linux, Mac, Windows)
5. Zip and upload to GitHub

## Dependencies
To build Corvi, the following dependencies are required:

* [Go](https://github.com/golang/go)
* [node.js + npm](https://github.com/nodejs/node)
* [electron-packager](https://github.com/electron-userland/electron-packager)
* [github-release](https://github.com/aktau/github-release)
* zip
* gcc (for building sqlite)
* cygwin (Windows only)

For linux, the building environment is available as Docker [container](https://github.com/herzog31/corvi-build).

0 comments on commit ad6210c

Please sign in to comment.