- Gesamtübersicht aller Meetingräume und ihrer Ausstattung
- Tasgesdetail Ansicht eine Meetingraums
- CRAS auch ohne VPN erreichbar machen
- Die Schnittstellen mit einem Auth verfahren und Token absichern
- Speicherung und verwaltung der Tokens damit nicht täglich ein erneutes Login nötig ist
- Das Frontend mit einem Login und User erweitern
- Cookie & Session Handling
- Weitere Features
- Buchen eines Raumes unter eigenem Namen direkt aus CRAS
- Anzeige auf der Raumübersicht ob der Raum aktuell frei ist
- Tagesübersicht über alle Räume hinweg
- Filtern/Suchen der Räume nach bestimmten Eigenschaften
- Bessere Raum Detailinformation (Telefon, etc.)
- Legende für die Eigenschaften
- TopListen
- Am häugisten gebuchte Räume
- Nutzer die am häufigsten Termine überziehen
- Nutzung der spontan Buchung
Für geplante Features und Änderungen siehe CHANGELOG.md
Das Projekt setzt sich dabei aus mehreren Modulen zusammen:
- crasUI - Dieses Projekt stellt ein responsives React Frontend bereit
- cras - stellt das benötigte Backend bereit
- Optional crasBadgeIt - Ein microcontroller projekt for small ePaper devices
- Optional crasAndroidViewer - Eine Android App mit einem einfachem fullscreen Webviewer
Diese Anleitung zeigt anhand einer Beispiel Installation auf dem Raspberry wie die das Frontend installiert, eingerichtet und betrieben werden kann.
- Linux umgebung (z.B Raspberry Pi 3 mit Raspbian)
- git
- node.js
siehe: Raspberry Setup
git clone https://github.com/jenszech/crasUI.git
cd crasUI
npm install
Einrichten als Process mit Autostart und start des http Server
npm build
sudo npm install pm2@latest -g
pm2 serve build 5000 --name "crasUI"
pm2 startup systemd
sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u pi --hp /home/pi
pm2 list
Das WebInterface: http://:5000
pm2 list
pm2 restart crasUI
cd crasUI
git pull
pm2 restart crasUI
Für die Entwicklung des Frontends kann es hilfreich sein unabhängige und verlässliche Antworten zu bekommen. Dafür besteht die Möglichkeit das verwendette Backend aus dem separaten "cras" Projekt zu mocken. Die benötigten mocks liegen unter ./src/mocks/
npm run mock-backend
==> Mockserver serving mocks {verbose:true} under "src/mocks" at http://localhost:3001
Danach kann lokal auf die API zugegriffen werden:
- http://localhost:3001/rooms - Übersicht aller Räume
- http://localhost:3001/rooms/Raum_Curie@tde.thalia.de - Abrufen von Raumdetails
- http://localhost:3001/metaTypes - Liste aller unterstützten Raum Eigenschaften
In the project directory, you can run:
Runs the app in the development mode.
Open http://localhost:3000 to view it in the browser.
The page will reload if you make edits.
You will also see any lint errors in the console.
Launches the test runner in the interactive watch mode.
See the section about running tests for more information.
Builds the app for production to the build
folder.
It correctly bundles React in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes.
Your app is ready to be deployed!
See the section about deployment for more information.
- Node.js
- PM2 Guideline für NodeJS Application auf Produktions Servern
Please read CODE_OF_CONDUCT.md for details on our code of conduct, and the process for submitting pull requests to us.
We use SemVer for versioning. For the versions available, see the tags on this repository.
- Jens Zech - Project owner - GitHub Profil
- julienP88 - Initial work - GitHub Profil
- Anna Utlik - Main contributor - GitHub Profil
See also the list of contributors who participated in this project.
This project is licensed under the MIT License - see the LICENSE.md file for details
##Weitere Infos: Wiki - Raspberry Setup