Skip to content
Releases and GitHub page for Project Corvi
Go CSS HTML JavaScript
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

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 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 section.

Repository Structure


The main repository is located at GitLab and the master branch is also mirrored at GitHub.

  • develop (current development)
  • master (Releases)


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


To build Corvi, the following dependencies are required:

For linux, the building environment is available as Docker container.

You can’t perform that action at this time.