Aplikace nahrazující statusové post-ity pro hands-on workshopy.
Jedna instance běží na https://listecky.herokuapp.com/
- Má rozhraní na /teacher
- Ve svém rozhraní vidí, zda je student/ka online (jsou neprůhledné).
- Podle barvy rámečku se jménem studenta vidí status jaký aktuálně má.
- Podle barvy stolu vidí rychle, zda je někdo přítomen, zda jsou všichni hotovi nebo jesti někdo u stolu potřebuje pomoc.
- Tlačítkem „Úkol zadán“ se studentovi umožní volba statusu.
- Pokud je vybraná jiná hodnota v selectu pod ním, než „Vyber úkol“, pošle se zadání úkolu a automaticky se posune na další úkol, pokud existuje.
- Texty úkolů je třeba zadat před spuštěním aplikace do
tasks.md
v daném formátu (viz ukázkový). - Texty všech úkolů jsou na /tasks
- Tlačítkem „Nemají už hotovo?“ se pošle otázku všem, které nemají status
done
notifikace.
- Tlačítkem „Začínám výklad“ se pošle všem pošle notifikace a nastaví
not_done
.
- Tlačítkem „Přestávka“ se po zadání délky přestávky v minutách se spustí odpočet, pošle notifikace a nastaví
not_done
.
- Pokud není přestávka zobrazuje se mu čas, který aktuální stav trvá.
- Chat umožňuje posílat i víceřádkové zprávy od přednášejícího všem studentům.
- Zprávy lze formátovat pomocí syntaxe GitHub Flavored Markdown
- „Jako kód“ obalí celý odeslaný kód do
<pre>
a<code>
(ekvivalent ``` před a za v Markdownu). - Lze smazat nejnovější zprávu.
- Zprávy jsou dostupné všem i když se připojí později.
- Přijímání ani posílání zpráv není podmíněno stavem třídy.
- Na homepage si najde svůj stůl a židli a dál pracuje na „své“ stránce.
- Může si nastavit svoje jméno.
- Klikáním na jednotlivé statusy se tyto mění.
- Při zavření okna nebo refreshi se status smaže.
- Pokud přednášející pošle připomínací notifikaci, znamená kliknutí na OK, změnu na stav
Hotovo
, Cancel beze změny.
- Data o stolech, židlích a koučích jsou zatím natvrdo v aplikaci (viz app.js)
> npm run start
> npm install
Je to funkční na heroku.com, ale lze provozovat lokálně.
Pro provoz na Heroku nastavit http-session-affinity takto:
> heroku features:enable http-session-affinity
A časovou zónu:
> heroku config:add TZ="Europe/Prague"
A angličtinu (výchozí je čeština)
> heroku config:set locale="en"
localhost:4000 (browsersync)
> npm run watch
Aby regulár, který zpracovává zdrojový soubor tasks.md
správně interpretoval zadání úkolů, které se vkládají do chatu, je třeba dodržovat následující pravidla pro psaní oddělovačů:
- Před i za oddělovač přijde volný řádek
- Oddělovač tvořený
---
(tj. 3 spojovníky) předchází shrnutí výkladu (nebo jiný text před samotným zadáním) případně předchází řádek s nadpisem pokud před zadáním není žádný úvodní text. - Oddělovač tvořený
----
(tj. 4 spojovníky) oděluje uvozující text a zadání nebo zadání a bonusový úkol.
Nejlépe konfrontovat tento popis se vzorovým tasks.md
. ;)