All Projects → fluxapps → ILIAS-Pegasus

fluxapps / ILIAS-Pegasus

Licence: GPL-3.0 license
An ILIAS Companion App

Programming Languages

typescript
32286 projects
SCSS
7915 projects
HTML
75241 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to ILIAS-Pegasus

ionic3-angular4-sample-app
Sample app of Ionic 3 and Angular 4
Stars: ✭ 35 (+84.21%)
Mutual labels:  cordova, ionic3
cordova-plugin-today-widget
Add a today widget app extension target to your cordova project.
Stars: ✭ 51 (+168.42%)
Mutual labels:  cordova, ionic3
ionic-hockeyapp
Need HockeyApp in your Ionic application, add this package!
Stars: ✭ 19 (+0%)
Mutual labels:  cordova, ionic3
Wooionic3
An eCommerce App for WooCommerce stores using Ionic 3.
Stars: ✭ 208 (+994.74%)
Mutual labels:  cordova, ionic3
Taxi Booking App
This is a complete ride booking app, It uses google maps cordova plugin, firebase database and onesignal as notification provider.
Stars: ✭ 212 (+1015.79%)
Mutual labels:  cordova, ionic3
Dianoia-app
Mobile (Ionic 3 - Angular 4) app about non-pharmaceutical activities and information for people with dementia.
Stars: ✭ 13 (-31.58%)
Mutual labels:  cordova, ionic3
todo-list
TodoList using Ionic2/3 & Firebase: * PWA * SSO Google plus. * Share list via QRcode. * Upload image from Camera or Storage. * Speech Recognition.
Stars: ✭ 18 (-5.26%)
Mutual labels:  cordova, ionic3
ionic-3-video-calling-using-webrtc
This is demo code of how to implement video calling in ionic 3 using webrtc
Stars: ✭ 58 (+205.26%)
Mutual labels:  cordova, ionic3
Ews Javascript Api
EWS API for TypeScript/JavaScript - ported from OfficeDev/ews-managed-api - node, cordova, meteor, Ionic, Electron, Outlook Add-Ins
Stars: ✭ 241 (+1168.42%)
Mutual labels:  cordova, ionic3
ionic4-angular6-crud-example
Building CRUD Mobile App using Ionic 4, Angular 6 and Cordova
Stars: ✭ 50 (+163.16%)
Mutual labels:  cordova, ionic3
ionic-native-sms-retriever-plugin-master
Cross-platform plugin for Cordova / PhoneGap to Retrieve SMS. Available for Android.
Stars: ✭ 16 (-15.79%)
Mutual labels:  cordova, ionic3
Drip Ionic3
「水滴打卡」App Open Source Code Base On Ionic V3 Framework
Stars: ✭ 74 (+289.47%)
Mutual labels:  cordova, ionic3
Awesome Ionic
An "awesome" list of Ionic resources
Stars: ✭ 799 (+4105.26%)
Mutual labels:  cordova, ionic3
Chihu2
ionic2-example <吃乎2>混合开发-美食app 🍜 ☕️ 🍦 (This is a support android and apple ionic2 case, a food app)
Stars: ✭ 124 (+552.63%)
Mutual labels:  cordova, ionic3
Cordova Plugin Fingerprint Aio
👆 📱 Cordova Plugin for fingerprint sensors (and FaceID) with Android and iOS support
Stars: ✭ 236 (+1142.11%)
Mutual labels:  cordova
Cordova Lib
Apache Cordova Tooling Library
Stars: ✭ 208 (+994.74%)
Mutual labels:  cordova
React Cordova Boilerplate
TodoMVC example for react with development tools to build a cordova application
Stars: ✭ 206 (+984.21%)
Mutual labels:  cordova
Swiped Events
Adds `swiped` events to the DOM in 0.7k of pure JavaScript
Stars: ✭ 249 (+1210.53%)
Mutual labels:  cordova
Cordova Osx
Apache Cordova mac
Stars: ✭ 232 (+1121.05%)
Mutual labels:  cordova
Cordova Plugin Contacts
Apache Cordova Plugin contacts
Stars: ✭ 203 (+968.42%)
Mutual labels:  cordova

ILIAS Pegasus

ILIAS Pegasus is an app which is running on Android or iOS and integrate functions of the ILIAS learn management system. For example viewing courses or personal news. It's main focus is to make files offline available to read them while offline. Check https://ilias-pegasus.de for more information.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisites

In order to use the App your ILIAS needs to be configured first. You need 2 Plugins (also Open Source) to make your ILIAS ready for the Pegasus App:

Follow the instructions here: https://github.com/fluxapps/PegasusHelper

The following tools are needed to build and deploy the app.

Ionic CLI:

npm install -g ionic

Cordova CLI:

npm install -g cordova

Xcode:

Install xcode over the apple app store.

Android Studio:

Install Android Studio from google. https://developer.android.com/studio/index.html

A MapBox (OpenStreetMap) API-Key

Check here: https://docs.mapbox.com/help/how-mapbox-works/access-tokens/

iOS Development

A few additional tools are needed to run the app on an iOS device or emulator.

Install the development cli tools with

xcode-select --install

Install ios-sim which is used to fire up the iOS emulator.

npm install -g ios-sim

Install ios-deploy which is used to deploy apps on a device.

npm install ios-deploy

Android Development

Install Android Studio from google. https://developer.android.com/studio/index.html

Install the latest Android SDK with the Android Studio Android SDK manager. Add the root of your Android SDK to the environment variable $ANDROID_HOME.

Install the Java SDK from oracle.

Clone the project

Clone the project to your workspace.

git clone https://github.com/studer-raimann/ILIAS-Pegasus.git
cd ILIAS-Pegasus

Install Dependencies

Change into the cloned project and install all dependencies. This could take several minutes.

npm install

Configure your ILIAS Installation

Copy and edit the template of server.config.json.template and add the parameters for your ILIAS installation. Save you configurationfile as server.config.json in branding/common/config.

Add you Installation id to the config.json file in your brand (eg. branding/brands/vanilla/config.json).

Add you mapbox key to environement

Copy and edit the template of .env.exmaple and add your Mapbox key. Add your key and save your environementfile as ".env" in the root directory.

MAPBOX_API_KEY="AddYourKeyHere"
PRODUCTION="true"

Install Brand

npm run setbrand -- --brand="vanilla"

or

Choose your brand, following the README.md in the branding folder.

Install Platforms

Install the both platforms.

npx ionic cordova prepare

Debug Build

The iOS app can be build with the following command.

npx ionic cordova build ios

The Android can be build with the same command.

npx ionic cordova build android

Run in Simulator/Emulator (with livereload and console output)

The iOS app can be build with the following command.

npx ionic cordova emulate ios -lcs

The Android can be build with the same command.

npx ionic cordova emulate android -lcs

Run the Tests

Lint

The linter can be run as shown bellow.

npm run tslint

A lot of old code does not comply with the new code style rules checked by tslint, which result in a lot of warnings.

Unit tests

The unit tests can be run with the command shown bellow.

npm run karma:singlerun

If karma should keep running after the tests use the following command.

npm run karma

Deployment

iOS

The iOS app can be build with the following command.

npx ionic cordova build ios  --prod

Open your Xcode Workspace (the YourAppName.xcworkspace in ILIAS-Pegasus/Platforms/ios) and set Certifacates, your Team ID and Release it to the AppStore.

Check here for information about Certificates: https://developer.apple.com/support/certificates/

And Check the ionic docs: https://ionicframework.com/docs/deployment/app-store

As soon as you have all your profiles create an Archive in Xcode -> Product -> Archive and upload it to the Appstore.

Android

npx ionic cordova build android --prod --release

Create a key, sign your application and upload it following the ionic guide: https://ionicframework.com/docs/deployment/play-store

Build With

  • Cordova - Is powering the app.
  • Ionic - To build a responsive UI.
  • Typescript - Helps maintaining large code bases and catch type issues early.

Versioning

We use SemVer for versioning. For the versions available, see the releases on this repository.

Authors

This is an OpenSource project by studer + raimann ag, (https://fluxlabs.ch)

[email protected]
https://ilias-pegasus.de

License

This project is licensed under the GNU GPLv3 License - see the LICENSE file for details.

TL;DR* Here's what the license entails:

1. Anyone can copy, modify and distribute this software.
2. You have to include the license and copyright notice with each and every distribution.
3. You can use this software privately.
4. You can use this software for commercial purposes.
5. If you dare build your business solely from this code, you risk open-sourcing the whole code base.
6. If you modify it, you have to indicate changes made to the code.
7. Any modifications of this code base MUST be distributed with the same license, GPLv3.
8. This software is provided without warranty.
9. The software author or license can not be held liable for any damages inflicted by the software.

Acknowledgments

We would also like to thank all the authors of the plugins and libraries we used! Please check the package.json or run the command bellow to see a list of all the plugins and libraries.

npm la --depth 0
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].