All Projects → hpi-schul-cloud → schulcloud-client

hpi-schul-cloud / schulcloud-client

Licence: AGPL-3.0 license
HPI Schul-Cloud Client

Programming Languages

Handlebars
879 projects
javascript
184084 projects - #8 most used programming language
SCSS
7915 projects
CSS
56736 projects
Jinja
831 projects
shell
77523 projects

Projects that are alternatives of or similar to schulcloud-client

schulcloud-server
HPI Schul-Cloud Core Server
Stars: ✭ 50 (+61.29%)
Mutual labels:  education, schools
FlipED
A LMS built specifically for Thailand's Education 4.0 system.
Stars: ✭ 24 (-22.58%)
Mutual labels:  classroom, education
Sonic Pi
Code. Music. Live.
Stars: ✭ 8,736 (+28080.65%)
Mutual labels:  education, schools
icebreaker
Web app that allows students to ask real-time, anonymous questions during class
Stars: ✭ 16 (-48.39%)
Mutual labels:  classroom, education
office-hours-help-queue
A queue to help manage office hours for large courses
Stars: ✭ 77 (+148.39%)
Mutual labels:  classroom, education
jitsi-box
A Raspberry Pi based box to automate holding hybrid conferences with Jitsi
Stars: ✭ 15 (-51.61%)
Mutual labels:  classroom, education
dotEducation
База знаний для .NET разработчиков
Stars: ✭ 207 (+567.74%)
Mutual labels:  education
NetsBlox
a networked visual programming language based on Snap!
Stars: ✭ 59 (+90.32%)
Mutual labels:  education
stupidb
The stupidest database of all time.
Stars: ✭ 46 (+48.39%)
Mutual labels:  education
circuitpython
CircuitPython - a Python implementation for teaching coding with microcontrollers
Stars: ✭ 3,097 (+9890.32%)
Mutual labels:  education
mcu-curriculum
Minecraft U Curriculum
Stars: ✭ 48 (+54.84%)
Mutual labels:  education
rapid-router
A Blockly and python based educational game aimed at students age 5-14.
Stars: ✭ 50 (+61.29%)
Mutual labels:  education
Awesome Python Scripts
🚀 Curated collection of Awesome Python Scripts which will make you go wow. Dive into this world of 360+ scripts. Feel free to contribute. Show your support by ✨this repository.
Stars: ✭ 198 (+538.71%)
Mutual labels:  education
advanced-terraform
An advanced incremental set of examples explaining advanced features and best practices of Terraform
Stars: ✭ 39 (+25.81%)
Mutual labels:  education
data-vis-labs-2018
Principles & Practice of Data Visualization, CS631 Spring 2018
Stars: ✭ 34 (+9.68%)
Mutual labels:  education
Clean-code-in-Python
Resources for the book Clean code in Python, and material for the talk at EuroPython 2016
Stars: ✭ 130 (+319.35%)
Mutual labels:  education
curriculum-foundation
iSAQB Curriculum for the CPSA - Foundation Level. This repository contains copyrighted work.
Stars: ✭ 35 (+12.9%)
Mutual labels:  education
Florodoro
A pomodoro timer that grows procedurally generated trees and flowers while you're studying.
Stars: ✭ 22 (-29.03%)
Mutual labels:  education
fhq-server
This is an open source platform for competitions of computer security.
Stars: ✭ 33 (+6.45%)
Mutual labels:  education
OpenCircuits
A free, open source, online digital circuit/logic designer.
Stars: ✭ 140 (+351.61%)
Mutual labels:  education

Schul-Cloud Client

An implementation of the Schul-Cloud client with NodeJS and Express.

Dev: Build Status Master: Build Status

Powered By

Mergify Status Lokalise Logo

Deprecation Warning

Please note that this client is going to be deprecated. All new frontend works is done in Vue.js and can be found here: https://github.com/hpi-schul-cloud/nuxt-client

Requirements

  • node.js 12 or later

You might take a look at the Dockerfile to see some more dependencies and latest version informations.

Short setup version:

  1. Clone directory into local folder
  2. Go into the cloned folder and enter npm install
  3. Install nodemon and gulp globally by entering npm install -g nodemon gulp

Run

  1. Start the schul-cloud server
  2. Go into project folder
  3. Run gulp watch to run gulp
  4. Set the ENV-variable TZ=Europe/Berlin (for windows use set TZ=Europe/Berlin). You can also set the variables SC_TITLE=HPI Schul-Cloud and SC_SHORT_TITLE=HPI Schul-Cloud if you want.
  5. run npm run watch to boot the application
  6. go to http://localhost:3100

Alternative with browser-sync

  1. run gulp watch-reload to run gulp with browser sync. It also starts the node-client-server.
  2. go to http://localhost:7000

For connecting to the SchulCloud Calendar-Service you have to set export CALENDAR_SERVICE_ENABLED=true.

For connecting to the SchulCloud Notification-Service you have to set export NOTIFICATION_SERVICE_ENABLED=true.

Theming

Add Themes to /theme directory. Call gulp and node with SC_THEME set to name of directory.
then clear build files and gulp cache with gulp clear

Windows

run set SC_THEME={themeName} without spaces around the equal sign!

How to name your branch and create a pull request (PR)

  1. Take the Ticket Number from JIRA (ticketsystem.dbildungscloud.de), e.g. BC-999
  2. Name the feature branch beginning with Ticket Number, all words separated by dash "-", e.g. feature/BC-999-fantasy-problem
  3. Create a PR on branch develop containing the Ticket Number in PR title
  4. Keep the WIP label as long as this PR is in development, complete PR checklist (is automatically added), keep or increase code test coverage, and pass all tests before you remove the WIP label. Reviewers will be added automatically.

Testing

Information: Please make sure that all your changes works on Chrome , Firefox and Safari!
For html/css components please check caniuse.

  1. Set the password for the demo user [email protected]
    Ubuntu/Mac: export SC_DEMO_USER_PASSWORD={PASSWORD} (Without braces)
    Windows: set SC_DEMO_USER_PASSWORD={PASSWORD} (Without braces)
  2. run npm run test
  3. If you want to use another backend url than localhost, set the API_HOST and PUBLIC_BACKEND_URL environment variables (see 1)
  4. If you want to list the coverage, run npm run coverage

Commiting

Default branch: main

  1. Go into project folder
  2. Checkout to develop branch (or clone for the first time)
  3. Run git pull
  4. Create a branch for your new feature named feature/BC-Ticket-ID-Description
  5. Run the tests (see above)
  6. Commit with a meanigful commit message(!) even at 4 a.m. and not stuff like "dfsdfsf"
  7. Start a pull request (see above) to branch develop to merge your changes

Code rules

CSP rules

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