Lessons and blocks
A lesson is not one big text box. It is a stack of blocks, each doing one thing, which you add, arrange, open and remove. Pages are written the same way, with the same editor.
The editor
Section titled “The editor”The Treść (Content) section of a saved lesson or page holds the canvas. Everything on it is a picture of what a reader will see.
- Dodaj blok opens the picker. It has a search field — type two letters of what you want — and the blocks grouped under headings: Tekst, Multimedia, Układ, Kursy, Interaktywne. Each one says in a line what it is for. Arrow keys move between them, Enter takes the first match, Escape closes.
- Every block shows a preview of itself, with the site’s own styling, following the panel’s light or dark mode. A preview is a picture, not the block: its links and buttons cannot be clicked, and the keyboard passes them by.
- Click a block to open its settings, which slide in from the right. Only that block’s fields are there. Poszerz panel makes the panel wider, and HiLMS remembers that for next time.
- Move a block by dragging its handle or with the up and down buttons beside it, which is how you reorder from the keyboard.
- Duplicate a block with the Duplikuj button in its header. The copy lands right below the original and shows the same file from the media library — nothing is uploaded twice. Choosing another picture in the copy leaves the original alone; replacing the file in the library changes both. HiLMS scrolls to the copy and puts the cursor on it.
- Konspekt in the sidebar lists everything on the page in the order a reader meets it, with headings indented by level. Click an entry to jump to its block.
- Zapisz is in the sidebar and stays in view as the page grows. Zobacz or Podgląd beside it opens the page on the site in a new tab.
- Nothing is saved until you press Zapisz, and leaving a page with unsaved work asks you first.
Putting blocks side by side
Section titled “Putting blocks side by side”Siatka (grid) is the block that holds other blocks. Add one and it arrives with two Komórka (cell) blocks already in it. Each cell holds blocks of its own — text, images, a callout, whatever you like.
The grid’s own settings are behind its header:
| Field | Means |
|---|---|
| Układ | Siatka, where the cells share equal columns, or Rząd, where each cell is as wide as it needs |
| Liczba kolumn | 1 to 6 |
| Układaj jedna pod drugą | How narrow the block may get before the cells stack. It is the block’s width that counts, not the window’s, so a grid inside a narrow cell stacks sooner |
| Odstęp, Wyrównanie w pionie, Wyrównanie w poziomie | The spacing and the alignment |
And each cell has its own Szerokość: Automatyczna, or how many columns it takes (in a row layout, its share of the row). A cell’s background, the space inside it and its corners are its Wygląd (below): a cell draws nothing of its own until you give it one.
A grid may hold one more grid inside a cell, and no deeper.
A block’s own look
Section titled “A block’s own look”Most of how a block looks comes from the site’s style (Styles): its colours, its corners, the space around it. The box-like blocks can differ from it, one block at a time. At the bottom of their settings is a Wygląd (Look) group, starting with a switch:
- Zgodnie ze stylem (Follow the style) is on for every block until you turn it off. While it is on, the block looks the way the style draws every block of its kind.
- Turn it off and the look’s choices appear. Each starts at Jak w stylu (As the style has it), so you change only what you pick. Turning the switch back on forgets the choices.
The choices are always the style’s own options, never a colour or a size you type, so a block with a look still changes with the style:
| Choice | Options |
|---|---|
| Wariant (Variant) | Only on a Ramka, a Cytat and a Baner strony, and first in the group: the shapes the site’s theme offers, such as Delikatne tło, Obramowanie and Wyrazisty kolor for a Ramka. Jak w stylu means the style’s choice on its Układ tab |
| Tło (Background) | Brak, Karta, Wgłębienie, Odcień akcentu |
| Wypełnienie (Padding) | Brak, Małe — margines strony, Średnie — odstęp między blokami, Duże — odstęp między sekcjami |
| Narożniki (Corners) | Proste, Lekko zaokrąglone, Zaokrąglone |
| Szerokość (Width) | Wąska, Szerokość tekstu, Szerokość strony, Szeroka, Całe dostępne miejsce |
| Wyrównanie (Alignment) | Na początku, Na środku, Na końcu |
Not every block offers every choice:
| Block | Its look |
|---|---|
| Komórka (a grid’s cell) | Tło, Wypełnienie, Narożniki — its width is its own setting |
| Ramka | Wariant, Wypełnienie, Narożniki — its colour is its kind |
| Sprawdź się | Wypełnienie, Narożniki, Szerokość, Wyrównanie — its answers are drawn in their own colours |
| Cytat, Akordeon | everything (a quote also its Wariant) |
| Baner strony | Wariant, Tło, Wypełnienie, Narożniki — the space is around its words, so the picture is never inset |
| Obraz | Narożniki, Wyrównanie — its own width setting stays |
| Kod | Tło, Wypełnienie, Narożniki |
| Osadzenie, Wideo | Narożniki, Szerokość, Wyrównanie |
Headings and text take no look: they follow the style’s typography. A background is offered only where every text drawn on it keeps its contrast, in both colour schemes.
Patterns
Section titled “Patterns”At the bottom of the picker, under Wzorce, sit whole passages you insert in one go:
| Pattern | Lays out |
|---|---|
| Nagłówek i trzy atuty | A page opening and three things worth saying about the site |
| Tekst obok obrazka | Two columns: your words on one side, a picture on the other |
| Strona z katalogiem kursów | A heading and the whole catalogue under it |
| Zachęta do działania | A closing box, set apart from the page: a heading and a sentence saying what to do next |
| Dwie kolumny tekstu | Two pieces of text side by side, each with its heading |
| Początek lekcji | What the lesson teaches, in points, and one thing to remember |
What a pattern leaves behind is ordinary blocks: rewrite every word of them. The text they arrive with is written to be replaced, and it says so.
Tekst obok obrazka is the one that arrives unfinished on purpose: nobody can choose your picture for you, so its image block wears a mark until you do, and draws nothing on the page until it has one.
A pattern that would break the page — a second page heading, a second course listing — is simply not offered.
When a save is refused
Section titled “When a save is refused”Some blocks need something before they can be saved: an image needs a file, an embed needs a title. Since those fields live on a block’s own panel, HiLMS never leaves you guessing.
- A red Nie zapisano message appears and stays until you close it. It says how many fields need attention and the first few of them.
- The block at fault wears a red triangle in its header. Its tooltip says what is missing; so does the message read aloud by a screen reader, because a colour on its own says nothing.
- Click the triangle and that block’s settings open, with the message repeated at the top, above the fields.
- If the fault is inside something — a grid whose cell holds the block that is missing a picture — the grid’s triangle says so and takes you to the block that really holds it, which wears a triangle of its own.
- Konspekt marks the same blocks, so you can see from the sidebar what still needs doing.
Fill the field in and the mark goes at once; you do not have to press Save again to find out.
The outline also warns about three things before you press Save, with the same words Save would refuse you with:
- a heading that skips a level (after H2 you may use H3, but not H4);
- a second block drawing the page’s main heading;
- a second copy of a block a page may hold only once.
Blocks a page may hold only once
Section titled “Blocks a page may hold only once”Lista kursów and Moje kursy keep the visitor’s search, filters and page number in the address. Two of either would read the same thing and turn the page together, so the picker stops offering one as soon as the page has it — and offers no duplicate for it either.
The same goes for the page’s main heading: once a Nagłówek strony or a Baner strony is on the page, the other is no longer offered, because a reader would be left with two answers to “what is this page”.
The blocks
Section titled “The blocks”| Block | Fields | Notes |
|---|---|---|
| Nagłówek | Tekst, Poziom (H2, H3, H4) | Structures a long lesson |
| Tekst | Treść | The rich editor: paragraphs, lists, links, bold, italic |
| Ramka | Rodzaj (Informacja, Wskazówka, Ostrzeżenie, Uwaga), Tytuł, Treść | A coloured box for something that must not be missed |
| Cytat | Tekst, Źródło | |
| Obraz | Obraz, Tylko ozdobny, Tekst alternatywny tylko w tym miejscu, Podpis, Szerokość | A picture from the library. See “Alternative text” below |
| Galeria | Obrazy — a list of items, each its own Obraz, Tylko ozdobny, Tekst alternatywny tylko w tym miejscu and Podpis — plus a Podpis for the gallery | Up to 24 items, reordered by dragging or with buttons |
| Wideo | Źródło, then the fields that source needs, Transkrypcja, Podpis | See below |
| Audio | Plik, Tytuł, Transkrypcja | A recording from the library: MP3, M4A, OGG or WAV |
| Plik do pobrania | Plik, Etykieta | A document or a picture from the library: PDF, ZIP, Office and OpenDocument files, text, CSV, images. The reader sees a download link with the file’s name and size; an empty Etykieta uses the file’s title |
| Kod | Język, Kod | Shown as written, without colouring |
| Siatka | See “Putting blocks side by side” | Holds Komórka blocks |
| Komórka | Szerokość, Tło, Wypełnienie, and blocks of its own | Offered inside a Siatka and nowhere else |
| Akordeon | Pozycje, each a Tytuł and Treść | Collapsible panels |
| Osadzenie | Adres URL, Tytuł, Proporcje, Transkrypcja | Only addresses on the site’s allowed list; the field says which. The title is required: it is the only name a screen reader has for the frame |
| Separator | — | A line between two parts |
| Sprawdź się | Pytanie, 2–6 Odpowiedzi with Poprawna odpowiedź, Wyjaśnienie pokazywane po odpowiedzi | A quick self-check. Nothing is recorded — see below |
| Quiz | See Students and access | A graded quiz whose result is kept |
Five more appear only on a page:
| Block | Fields |
|---|---|
| Nagłówek strony | Nagłówek, Wprowadzenie, Wyrównanie. The quiet opening: it draws the page’s main heading |
| Baner strony | Nagłówek, Wprowadzenie, Obraz with its Tylko ozdobny and Tekst alternatywny tylko w tym miejscu, up to two buttons with their labels and addresses, and a sign-up button. The loud opening, and it draws the main heading too |
| Najnowsze kursy | Nagłówek, Liczba kursów (3, 6 or 9) |
| Lista kursów | Pokaż wyszukiwarkę, Filtry, Kursów na stronie (6, 12 or 24), Liczba kolumn (2 or 3). The whole catalogue |
| Moje kursy | Kursów na stronie (12 or 24). The reader’s own courses, with progress and a resume link; a guest is asked to sign in |
The two listings draw a short placeholder in the editor rather than the real thing, so writing a page never waits for the catalogue.
The Źródło select decides what else you are asked for:
- YouTube or Vimeo — paste the address. HiLMS refuses one that does not look like that provider’s. A Vimeo private link keeps its hash, so an unlisted video plays; the field’s help text suggests setting the video to “Hide from Vimeo” and “Only on sites I choose”.
- Bunny Stream — the library id and the video id. Each view gets a link of its own that stops working within the hour, which is the closest thing here to real protection. Turn Token Authentication on in the Bunny library and set the allowed referrers, or the video plays anywhere.
- Wgrany plik — a video from the media library (MP4, WebM or QuickTime), chosen in Plik wideo or uploaded there with Prześlij nowy. HiLMS checks that it is really playable before storing it. Its captions belong to the file in the library (below); the field says so, and links to the file once one is chosen.
Alternative text, and pictures that say nothing
Section titled “Alternative text, and pictures that say nothing”Every image says what it shows, so that somebody who cannot see it is not left out — or says that it shows nothing.
- What a picture shows is written once, on the file in the media library: its Tekst alternatywny, one field per language the site speaks. Every lesson and page showing the picture uses those words, in the language that lesson or page is written in. Describe the picture in a sentence — what it shows, not “photo” or the file name.
- Tekst alternatywny tylko w tym miejscu is the block’s own field, for a place that needs other words — the same diagram may mean something different in two lessons. Leave it empty and the file’s words are used.
- Tylko ozdobny is for a picture that adds nothing the text does not already say. Tick it and the words field disappears, and screen readers skip the image entirely.
The block’s own field is required in one case only: the picture is not decorative, and the file says nothing about what it shows in the language of this lesson or page — nor in the site’s default language. The field then says so, Save asks for the words, and the message points at the library, where writing them once would serve every place. You can also choose Upload new and write the alternative text as you upload.
The image block, every gallery item and the page banner all work this way.
Captions and transcripts
Section titled “Captions and transcripts”A recording is offered in more than one form, because not everybody can hear it or wants to play it.
- Captions on an uploaded video belong to the video file, not to the block: open the video in the media library and add one Plik WebVTT per language under Napisy (The media library). Every lesson showing that video then offers them, and the first one is the one the player turns on by itself.
- Transkrypcja is rich text on video, audio and embedded media: what was said, written out. It appears under the player as a panel the reader can open.
- A YouTube video is asked to switch its own captions on in the interface language. That is as far as somebody else’s player lets us go; for a recording you uploaded yourself, the caption tracks are yours.
Choosing and uploading files
Section titled “Choosing and uploading files”A block does not hold a file of its own: it shows a file of the media library (The media library). Every field that shows one works the same way:
- Wybierz z biblioteki opens the library beside the settings, offering only files of the right kind — and, on a page, public files only. Search, then press a card.
- Prześlij nowy, beside the field’s label, uploads a file into the library and chooses it at once. From a lesson it becomes course material, which only somebody the lesson is open to can see; from a page, a public file.
- Dodaj z adresu internetowego, inside that upload window, fetches a file from a public https address instead of your computer. It is checked exactly like an upload.
- Wyczyść empties the field; the file stays in the library.
Every upload says its own maximum next to it, and your browser refuses a file that is too big before it is sent. HiLMS then reads the file itself rather than believing what the browser called it, so renaming a .exe to .jpg gets you a polite error and nothing else.
Files a lesson shows as course material are private. They never sit in a public folder, and a student reaches them only through a link that works for an hour and only while they have access to the course; a video’s link does not even open in an address bar. That stops a link being passed around; it does not stop somebody recording their own screen — which is what the optional watermark is for (Administration). For video where that matters most, use Bunny Stream.
A page’s pictures, and a course cover, are public — they are meant to be.
Self-check versus quiz
Section titled “Self-check versus quiz”Both ask questions. The difference is what happens afterwards.
- Sprawdź się is a single question inside the text. The answer is checked on the server, the student sees Dobrze! or Nie do końca. and your explanation, and Spróbuj ponownie resets it. Nothing is stored, nothing is graded, and it never blocks anybody.
- Quiz is graded, recorded and can be required before the student moves on. See Students and access.
In both, the right answers never reach the browser: a student cannot read them out of the page.
When a block goes
Section titled “When a block goes”Removing a block — or a gallery item — takes it off the lesson or page when you save, and from then on its file no longer opens through that lesson. The file itself stays in the media library: other lessons may show it, and if nothing does, the library’s Nigdzie nieużywane filter finds it for you to delete.
HiLMS is MIT-licensed. No replicants were harmed in the writing of these books.