Skip to content

itisbugra/legion

Repository files navigation

Quessly server-side infrastructure: Legion

Central repository for the server-side installation of Quessly.

CI status codecov Docs available OpenAPI specs available

Lead maintainer: Buğra Ekuklu

What is this?

It is a toy-project of mine, containing server-side implementation of a platform called Quessly.

Quessly is a platform, where you can solve, write questions and do examinations as a both student or teacher. It will be supported in mobile platforms, such as iOS and Android, as well as desktop operating systems, Windows and macOS. The platform aims to combine power, mobility and portability of the smartphones and personal computers in the field of education. It is expected to be released in 2021-Q4.

It is empowered by the technologies found in the Elixir ecosystem, and tries to be one of the good examples of it. This application features the following libraries. The list is not exhaustive.

How to use it?

Install the umbrella dependencies, configure the project from the configuration files located in **/config/${ENVIRONMENT}.exs. To scaffold the database and download the databases for reverse IP geocoding, you can use the Mix task.

To give an illustration, we're going to run the unit tests with the following commands.

$ MIX_ENV=test mix deps.get      # retrieve the project dependencies
$ MIX_ENV=test mix legion.setup  # scaffold database and download 
                                 # specific files (such as MaxGeoIP databases)
$ mix test                       # run ExUnit testing suite

Documentation

You can build the docs by using ExDoc's Mix task.

$ mix docs

Tests

You can run the tests by using the Mix task of ExUnit.

$ mix test --trace              # although you can remove the --trace
                                # flag to show solely failing tests

Code coverage

You can also calculate the code coverage by running the Mix task of ExCoveralls.

$ mix coverage.html --umbrella

An HTML-formatted coverage report will be located in the /coverage folder after running the command successfully.

Sunburst graph

Current sunburst

License

Licensed under Apache-2, see LICENSE.

Releases

No releases published

Packages

No packages published

Languages