Code Monkey home page Code Monkey logo

listecky's Introduction

Lístečky

Aplikace nahrazující statusové post-ity pro hands-on workshopy.

Jedna instance běží na https://listecky.herokuapp.com/

Přednášející

Statusy studentů

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

Začátek cvičení

  • 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

Připomenutí

  • Tlačítkem „Nemají už hotovo?“ se pošle otázku všem, které nemají status done notifikace.

Konec cvičení / začátek výkladu

  • Tlačítkem „Začínám výklad“ se pošle všem pošle notifikace a nastaví not_done.

Přestávka

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

Stopky

  • Pokud není přestávka zobrazuje se mu čas, který aktuální stav trvá.

Chat

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

Student/ka

  • 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

  • Data o stolech, židlích a koučích jsou zatím natvrdo v aplikaci (viz app.js)

Provoz

> npm run start

Instalace

> npm install

Je to funkční na heroku.com, ale lze provozovat lokálně.

Heroku

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"

Vývoj

localhost:4000 (browsersync)

> npm run watch

Struktura tasks.md

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čů:

  1. Před i za oddělovač přijde volný řádek
  2. 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.
  3. 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. ;)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.