- Readme
This commit is contained in:
@@ -1,23 +1,36 @@
|
|||||||
# Ty Clifford's Content Management System
|
# Ty Clifford's Content Management System
|
||||||
|
|
||||||
Ty Clifford's Content Management System is a small PHP blog CMS with a Bludit-style content layout:
|
Ty Clifford's Content Management System, or TCMS, is a dark-neon PHP blog CMS built around portable files, clean URLs, and a dedicated native Mac client.
|
||||||
|
|
||||||
|
## Feature Showcase
|
||||||
|
|
||||||
|
- Bludit-style content folders make copying or importing posts simple: `bl-content/pages/<slug>/index.txt`.
|
||||||
|
- Trusted author rendering parses Markdown while allowing raw HTML, iframes, JavaScript, and executable PHP blocks inside posts/pages.
|
||||||
|
- Shortcodes are declared in `config/shortcodes.php` or `config/shortcodes.json`, including `[youtube=<id>]` and `[video poster=<poster> file=<file>]`.
|
||||||
|
- Embed support uses `lone-embed.php` for generated full-frame HTML5 video players, while YouTube shortcodes render privacy-friendly iframe embeds.
|
||||||
|
- The AppKit macOS 12+ client, `TCMS.app`, manages posts, pages, media, comments, autosave, API login, publishing, updates, and deletes.
|
||||||
|
- Blog essentials are included: pretty URLs, search, pagination, static pages, tags, categories, social links, moderated comments with captcha/honeypot, SQLite, JSON, and Excel-ready CSV stats.
|
||||||
|
|
||||||
|
## Details
|
||||||
|
|
||||||
|
TCMS uses a Bludit-style content layout:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
bl-content/pages/<slug>/index.txt
|
bl-content/pages/<slug>/index.txt
|
||||||
```
|
```
|
||||||
|
|
||||||
Posts and static pages are Markdown `.txt` files with front matter. Comments are stored in SQLite, site configuration and generated indexes are JSON, and visit stats are CSV for easy Excel import.
|
Posts and static pages are Markdown `.txt` files with front matter. Comments live in SQLite, site configuration and generated indexes are JSON, and visit stats are CSV for easy Excel import.
|
||||||
|
|
||||||
Post and page bodies are treated as trusted author content. Markdown is rendered while allowing raw HTML, iframes, JavaScript, and executable PHP blocks inside the `.txt` files.
|
Post and page bodies are treated as trusted author content. Markdown is rendered while allowing raw HTML, iframes, JavaScript, and executable PHP blocks inside the `.txt` files.
|
||||||
|
|
||||||
Shortcodes are declared in `config/shortcodes.php` as a PHP array, with optional JSON overrides in `config/shortcodes.json`. Built-in examples:
|
Shortcodes are declared in `config/shortcodes.php` as a PHP array, with optional JSON overrides in `config/shortcodes.json`.
|
||||||
|
|
||||||
```text
|
```text
|
||||||
[youtube=dQw4w9WgXcQ]
|
[youtube=dQw4w9WgXcQ]
|
||||||
[video poster=poster.jpg file=file.mp4]
|
[video poster=poster.jpg file=file.mp4]
|
||||||
```
|
```
|
||||||
|
|
||||||
`[video]` renders an iframe pointed at `lone-embed.php`, which serves a full-frame HTML5 video player. Bare filenames resolve from `bl-content/uploads`.
|
`[video]` renders an iframe pointed at `lone-embed.php`, which serves the full-frame HTML5 video player. Bare filenames resolve from `bl-content/uploads`.
|
||||||
|
|
||||||
## Requirements
|
## Requirements
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user