content: create demo vault with splash art and feature showcase pages
8 files: index.md with wiki-links, features overview, navigation guide, markdown showcase (all constructs), about page, changelog, and two guides (sysop handbook, writing content) in a subdirectory. Includes ANSI art splash.txt for the index page header.
This commit is contained in:
@@ -0,0 +1,77 @@
|
||||
---
|
||||
description: Full feature breakdown with examples
|
||||
---
|
||||
|
||||
# Features
|
||||
|
||||
BBS-MD is a terminal-based markdown vault reader built in Rust. Here's everything it can do.
|
||||
|
||||
## Markdown Rendering
|
||||
|
||||
BBS-MD renders a full subset of GitHub-Flavored Markdown with retro CGA-themed styling:
|
||||
|
||||
- **Headers** (H1-H6) with distinct colors and decorators
|
||||
- **Bold**, *italic*, and ~~strikethrough~~ text
|
||||
- `Inline code` with syntax highlighting
|
||||
- Fenced code blocks with language-aware highlighting
|
||||
- Ordered and unordered lists with nesting
|
||||
- Blockquotes with yellow pipe borders
|
||||
- Tables with full box-drawing grid borders
|
||||
- Horizontal rules
|
||||
- Image placeholders
|
||||
|
||||
### Code Block Example
|
||||
|
||||
```rust
|
||||
fn main() {
|
||||
println!("Welcome to BBS-MD!");
|
||||
let vault = Vault::new("./vault");
|
||||
vault.browse();
|
||||
}
|
||||
```
|
||||
|
||||
### Table Example
|
||||
|
||||
| Feature | Status | Since |
|
||||
|----------------|-----------|---------|
|
||||
| Markdown | Complete | Phase 2 |
|
||||
| Wiki-Links | Complete | Phase 3 |
|
||||
| ANSI Splash | Complete | Phase 4 |
|
||||
| Live Reload | Complete | Phase 4 |
|
||||
|
||||
## Wiki-Link Navigation
|
||||
|
||||
Connect your documents with `[[Wiki Links]]`. BBS-MD resolves them at render time:
|
||||
|
||||
- `[[Page Name]]` — links to `page-name.md` (case-insensitive, hyphenated)
|
||||
- `[[Directory]]` — special magic link to the vault directory listing
|
||||
- Broken links are shown in ~~red strikethrough~~ so you know what needs fixing
|
||||
|
||||
See the [[Navigation Guide]] for the full key binding reference.
|
||||
|
||||
## ANSI Art Splash Screen
|
||||
|
||||
Place a `splash.txt` file in your vault root containing ANSI escape codes. BBS-MD parses it with `ansi-to-tui` and displays it as a colorful header above your `index.md` content. If the file is missing, the index renders normally with no error.
|
||||
|
||||
## Live Filesystem Watching
|
||||
|
||||
Edit your markdown files in any editor. BBS-MD watches for changes and auto-refreshes the currently displayed page within about a second. Rapid saves are debounced — you won't see flickering.
|
||||
|
||||
- Watches the parent directory of the current file
|
||||
- Survives atomic saves (vim, neovim style)
|
||||
- Non-fatal: if the watcher fails, the app still works without live reload
|
||||
|
||||
## Directory Listing
|
||||
|
||||
Navigate to `[[Directory]]` to see a tree view of every document in your vault. Directories appear in **yellow bold**, files as cyan bracketed links. Tab-cycle through entries and press Enter to open any document.
|
||||
|
||||
## Safe Login Shell Mode
|
||||
|
||||
BBS-MD can be set as a user's login shell for SSH access. In this mode:
|
||||
|
||||
- `q` key is disabled (only double Ctrl+C exits)
|
||||
- Panic hook restores the terminal before crashing
|
||||
- Signal handlers (SIGHUP, SIGTERM) clean up gracefully
|
||||
- The terminal is always left in a usable state
|
||||
|
||||
Back to [[index|home]].
|
||||
Reference in New Issue
Block a user