Skip to content

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

Open

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:

Activity

  1. self-assigned this
    on Nov 28, 2018
  2. encukou commented on Jan 16, 2019

    @encukou
    MemberAuthor

    @frenzymadness, explicitní varování pro tebe: PR #505 s sebou nese zhoršení aktuálního stavu. Když se nepodaří vyrenderovat jednu stránku, spadne úplně celý build. To v praxi znamená, že když někdo do svého forku nahraje špatná data, zablokuje aktualizace celého naucse.
    Já a Miro to můžeme vyřešit (máme přístup ke všem forkům), ale pro tebe to může být nepříjemné, kdybychom oba nebyli online :(
    Oprava má docela prioritu (hned po statických souborech), takže to doufám problémy nepřinese.

  3. frenzymadness commented on Jan 16, 2019

    @frenzymadness
    Member

    Děkuji za varování. Tak snad se nic nepokazí hned ze startu, kdy se kromě přípravy kurzu nic zas tak často nemění.

  4. added a commit that references this issue on Aug 15, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions