missions -
Missions
A hacker-rank like platform for e-learning.
Building
Run in console:
make
Configuring
See the app.ini
file to configure the popcorn app:
app.host
: app hostnameapp.port
: app portapp.root_url
: used for redirect/call back from 3rd-party authentications. To use if behind a reverse proxy or if host is 0.0.0.0
Running
Run in console:
make run
Testing
Use db_loader
to populate the database with test data.
make populate
Docker
- install docker. https://docs.docker.com/engine/installation/
- install docker-compose. https://docs.docker.com/compose/install/
- run
docker-compose up
in the root directory; (ctrl-C to close) - open http://localhost:3000
By default, a localhost server with shib authentication is used.
Specific configuration should be provided in app.ini
.
Unless such a specific file, app.docker.ini
is used.
See Dockerfile
, docker-compose.yml
and app.docker.ini
for details.
Contributing
The Missions
team is happy to receive contributions and suggestions.
Give a look at the Github repo
https://github.com/Morriar/Missions.
Code style
Mission enforces the following code style rules:
- All the Nit coding standards
- The
do
is on the same line as the function declaration
Content
- missions: Missions (contrib/oot/missions)
- misc (contrib/oot/missions/misc)
- setup_pep: Run each solution to check if it pass the tests and to update the star goals. (contrib/oot/missions/misc/setup_pep.nit)
- src (contrib/oot/missions/src)
- api (contrib/oot/missions/src/api)
- api (contrib/oot/missions/src/api/api.nit)
- api_achievements (contrib/oot/missions/src/api/api_achievements.nit)
- api_auth (contrib/oot/missions/src/api/api_auth.nit)
- api_auth_github (contrib/oot/missions/src/api/api_auth_github.nit)
- api_auth_rand (contrib/oot/missions/src/api/api_auth_rand.nit)
- api_auth_shibuqam (contrib/oot/missions/src/api/api_auth_shibuqam.nit)
- api_base (contrib/oot/missions/src/api/api_base.nit)
- api_missions (contrib/oot/missions/src/api/api_missions.nit)
- api_players (contrib/oot/missions/src/api/api_players.nit)
- api_tracks (contrib/oot/missions/src/api/api_tracks.nit)
- engine_configuration: Global map of engines (contrib/oot/missions/src/api/engine_configuration.nit)
- app (contrib/oot/missions/src/app.nit)
- app_debug (contrib/oot/missions/src/app_debug.nit)
- app_serial: This file is generated by nitserial (contrib/oot/missions/src/app_serial.nit)
- config (contrib/oot/missions/src/config.nit)
- db_loader (contrib/oot/missions/src/db_loader.nit)
- debug (contrib/oot/missions/src/debug.nit)
- model (contrib/oot/missions/src/model)
- achievements (contrib/oot/missions/src/model/achievements.nit)
- engines (contrib/oot/missions/src/model/engines)
- engine_base: Base for code runners of a kind (contrib/oot/missions/src/model/engines/engine_base.nit)
- engines: Handles the different languages and engines that go along with it. (contrib/oot/missions/src/model/engines/engines.nit)
- nitc: Nitc engine for Nit submissions (contrib/oot/missions/src/model/engines/nitc.nit)
- pep8: Pep/8 terminal engine for submissions (contrib/oot/missions/src/model/engines/pep8.nit)
- friends (contrib/oot/missions/src/model/friends.nit)
- loader (contrib/oot/missions/src/model/loader.nit)
- missions (contrib/oot/missions/src/model/missions.nit)
- model (contrib/oot/missions/src/model/model.nit)
- model_base: Base model entities and services (contrib/oot/missions/src/model/model_base.nit)
- notifications (contrib/oot/missions/src/model/notifications.nit)
- players (contrib/oot/missions/src/model/players.nit)
- stats (contrib/oot/missions/src/model/stats.nit)
- status (contrib/oot/missions/src/model/status.nit)
- submissions: Player's submissions for any kind of mission (contrib/oot/missions/src/model/submissions.nit)
- tracks (contrib/oot/missions/src/model/tracks.nit)
- api (contrib/oot/missions/src/api)
- tests (contrib/oot/missions/tests)
- model (contrib/oot/missions/tests/model)
- test_achievements (contrib/oot/missions/tests/model/test_achievements.nit)
- test_friends (contrib/oot/missions/tests/model/test_friends.nit)
- test_loader (contrib/oot/missions/tests/model/test_loader.nit)
- test_missions (contrib/oot/missions/tests/model/test_missions.nit)
- test_notifications (contrib/oot/missions/tests/model/test_notifications.nit)
- test_players (contrib/oot/missions/tests/model/test_players.nit)
- test_stats (contrib/oot/missions/tests/model/test_stats.nit)
- test_status (contrib/oot/missions/tests/model/test_status.nit)
- test_tracks (contrib/oot/missions/tests/model/test_tracks.nit)
- test_base (contrib/oot/missions/tests/test_base.nit)
- test_tracks (contrib/oot/missions/tests/test_tracks)
- track1 (contrib/oot/missions/tests/test_tracks/track1)
- track2 (contrib/oot/missions/tests/test_tracks/track2)
- tracks (contrib/oot/missions/tests/tracks)
- test_nitc (contrib/oot/missions/tests/tracks/test_nitc.nit)
- test_pep8 (contrib/oot/missions/tests/tracks/test_pep8.nit)
- model (contrib/oot/missions/tests/model)
- tracks (contrib/oot/missions/tracks)
- pep8 (contrib/oot/missions/tracks/pep8)
- sousprogrammes (contrib/oot/missions/tracks/sousprogrammes)
- tracks-wip (contrib/oot/missions/tracks-wip)
- pep8 (contrib/oot/missions/tracks-wip/pep8)
- www (contrib/oot/missions/www)
- directives (contrib/oot/missions/www/directives)
- vendors (contrib/oot/missions/www/vendors)
- misc (contrib/oot/missions/misc)