Terminal Chronicle
terminal-chronicle tells a short story using only Terminal::print() and Terminal::printLine().
It is the most direct example in the repository of colorful, structured terminal output without a back buffer or
full-screen render loop.
Use This Demo When You Need…
A readable example of mixed text, colors, and formatting in ordinary command-line output.
A support reference for status messages, splash screens, or narrated console output.
A compact alternative to the fullscreen demos when you want simple print calls only.
Run the Demo
Start the demo from the build directory:
$ ./cmake-build-debug/demo-apps/cterm/terminal-chronicle
The program prints the full story directly into the terminal history and exits on its own.
Captured Output (80x25)
Terminal Chronicle Low-level output with readable print calls.
Timeline: teletype -> glass terminal -> VT100 -> modern ANSI consoles
1968 Video terminals began to replace noisy paper with phosphor screens.
A cursor could move, lines could be rewritten, and suddenly the console
felt alive.
1978 DEC introduced the VT100, a terminal that had a language of escape
sequences: Move the cursor, change colors, redraw only what changed.
1980s Bulletin boards, editors, and debuggers discovered that text mode did
not have to look dull. Progress bars, highlighted menus, and boxed
dialogs were all just carefully printed characters.
Today The idea is unchanged: emit text, switch styles, keep the code compact,
and let the terminal shine.
This demo uses printLine("text", fg::..., bg::...) to tell a story
without building a custom renderer first.
Try the other demos next: retro-plasma, frame-weaver, text-gallery.
Features Demonstrated
Direct output via
Terminal::print()andTerminal::printLine().Readable mixed argument lists combining plain text, colors, and formatting state.
Inline foreground and background changes inside one output flow.
Structured command-line output without building or managing a
Bufferfirst.
Relevant Source Files
If you want to explore the implementation, start with demos/cterm/TerminalChronicle/src/StoryDemo.cpp.
This file contains the complete sequence and shows how expressive terminal output can stay compact and readable.