Skip to content

Rozdělit renderování obsahu, aplikaci, a seznam kurzů #494

@encukou

Description

@encukou

Aktuálně naucse není v dobrém stavu. Všechno souvisí se vším, a udělat nějaké změny a vylepšení je složité až nereálné. Rozplést to je těžší než se zdá. Zároveň je to frustrující pro lidi, kteří by se chtěli zapojit.
V posledních měsících mě zavalila práce, tak se to moc nepohnulo. Teď na to mám dedikovaný čas. Budu sem postupně psát, jak se posouvám.
(Kód je v mojí větvi, ale rozhodně není ve stavu, kdy bych chtěl aby se na to někdo díval nebo to kritizoval.)

Toto je refaktorování. Výstup bude nezměněný, takže se bude líp dělat review a na nic důležitého nezapomenu. (Opravy chyb a UX přijdou pak.)

Co plánuju v této fázi:

  • Rozdělení do tří knihoven:
    • Renderování obsahu – naucse_render
    • Webová aplikace – naucse
    • Obsah – naucse.python.cz
  • naucse bude s naucse_render komunikovat přes verzované a validované JSON API (a HTML – žádný Markdown).
  • naucse bude poskytovat verzované a validované JSON API (nástrojům jako je odevzdávátko úkolů nebo zpětnovazebník).
  • Když se nepodaří vyrenderovat jednu stránku, spadne build celého kurzu. (Teď spadne úplně celý build. Později se použije starší verze toho jednoho kurzu, a přestanu požadovat přístup k všem repozitářům s obsahem.)

Co mě od toho aktuálně dělí:

Hard deadline je v únoru.

Tohle blokuje (nebo řeší) všechno, čemu se chci věnovat (kromě obsahu). Zejména:

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions