arsnova🍅cards
The Progressive Web App arsnova🍅cards offers students a modern and intuitive access to one of the most successful and evidence based learning methods, i.e., spaced repetition.
arsnova🍅cards uses Meteor as application framework. For local development, you can choose the native or the containerized version with Docker.
- 4 GB RAM
This is the recommended method!
Instructions for starting cards with Docker can be found »here«.
Requirements: Node.js 12.22.21 and MongoDB 4.4.4 (If used with a separated database)
Step | Linux Terminal Command |
---|---|
1. Install Meteor | Refer to the link in the step column |
2. Install git | sudo apt install git |
3. Install python 2. Ubuntu only ships with python 3. | sudo apt install python |
4. Install the g++ build-essential | sudo apt install g++ build-essential |
5. Make sure that you've added a SSH key | Refer to the link in the step column |
6. Clone the remote repository | git clone [email protected]:arsnova/cards.git |
7. Move inside the local repository "cards folder" | cd cards |
8. Install the npm package dependencies | meteor npm install |
- Add the cas id of the admins inside the admin.id array of
settings.json
(cas account) - Change
settings.json
according to your needs
Warning: Never publish your settings file!
A simple update to the latest Meteor version is not always possible. Please do not update Meteor to the latest version and leave this to the owners of the repository.
Use one of the following commands inside the repository (cards folder), to start your 🍅cards installation:
-
For development (use this if you're going to run 🍅cards on your local device):
meteor --settings settings_debug.json
- Access the app from your host machine by visiting http://localhost:3000
-
For production:
meteor --settings settings.json
- Make sure that you've installed the MongoDB Community Tools
- Start the server with the development settings
Warning: The following step will delete all of your 🍅cards content
- Open a new terminal in the cards folder and load the Test Database with:
./tests/loadTestDatabase.sh
For the local analysis with docker-compose you'll need docker and docker-compose installed. To run a local code style check with sonarqube, follow these steps:
- switch into the analysis folder
cd analysis
- start the sonarqube server
docker-compose up -d sonarqube
- when sonarqube has started, you may run analysis whenever you want with
docker-compose run --rm analysis
Sonarqube will be accessible at localhost:9000. You find the cards project after the first successful analysis in the projects section.
- Create a Braintree sandbox account
- Login to the braintree sandbox
- Retrieve your api keys (navigate to: My User > View Authorizations)
- Insert the keys into
settings.json
- Inside Braintree sandbox, navigate to Plans from left menu under
Reccuring Billing
- Create one plan with id "pro" and your preferred price (lowercase for Plan ID, Plan Name's should be "Pro")
- Create a Firebase project
- Get the FCM VAPID public and private key from your Firebase project (project settings > cloud messaging > Web configuration)
- Insert the keys and a mailto: Address into your
settings.json
file:- Public key:
public.FCM_VAPID_PUBLIC_KEY
- Private key:
private.FCM_VAPID_PRIVATE_KEY
- mailto: Address:
private.FCM_VAPID_MAILTO_ADDRESS
- Public key:
The contribution guide can be found here.
The documentation can be found here.
Server | Status |
---|---|
Staging | |
Production | |
Linux | |
SonarQube |
arsnova🍅cards is powered by Technische Hochschule Mittelhessen - University of Applied Sciences.