aboutsummaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
authorgrm <grm@eyesin.space>2026-09-16 19:10:13 +0300
committergrm <grm@eyesin.space>2026-09-16 19:10:13 +0300
commit4a6f987bf7f9d73e9dd33d225fd2d73e9bf69a88 (patch)
treecc39ea660046d9c977647e7c9c36349c126be214 /README.md
parent6b6b5d2e35ff182a0732da245f4eb37c8afa0564 (diff)
downloadblogspace-4a6f987bf7f9d73e9dd33d225fd2d73e9bf69a88.tar.gz
blogspace-4a6f987bf7f9d73e9dd33d225fd2d73e9bf69a88.tar.bz2
blogspace-4a6f987bf7f9d73e9dd33d225fd2d73e9bf69a88.zip
Merge the Layout and Design tabs into one form with a single Save
The look and the layout of a blog were split over two tabs that cross-linked each other, and the Layout tab saved every toggle, move and add straight away through a dozen tiny forms. Now one Design tab holds it all, organised by part of the blog (colours & fonts, header, menu, content, side columns, footer, logo & icon) behind a sticky side index, and one Save stores the theme, every module and the menu atomically (BlogStore.SaveDesign). Module settings are edited inline; Discard changes throws the edits away; a validation error shows the form again exactly as it was sent. The image pickers no longer render the whole library four times over: a select of the newest images, and a script-driven panel that fetches the library page by page (GET /files as JSON) with lazy thumbnails. New options: posts per page, site title size, footer alignment. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Sd8UPWrvyYCLj97JexNw3A
Diffstat (limited to 'README.md')
-rw-r--r--README.md21
1 files changed, 12 insertions, 9 deletions
diff --git a/README.md b/README.md
index b5ced42..6b30fdc 100644
--- a/README.md
+++ b/README.md
@@ -19,15 +19,18 @@ Server-rendered HTML, no JavaScript required, works on old browsers and phones.
- Every blog has **pages** (Home, About, News, …); each page holds posts. Posts can
carry **tags**, shown under the date; each tag has its own page listing every post
with it.
-- **Layout** tab: the page is five areas — header, left column, main content, right
- column, footer — each holding modules in any order: blog title, logo, menu, archive
- (posts by year and month), recent posts, tags (with counts), tag cloud, a search
- box (finds posts by title and text, any case; several words match in order with
- anything in between), custom HTML, footer text, RSS link, site map.
- Column widths are percentages; on phones the columns stack under the posts. The
- **menu** mixes blog pages and outside links.
-- **Design** form: colour schemes, background colour/image, fonts, link style, content box, header, menu, post dates, footer, logo and site icon (favicon).
-- Changes are live immediately: save, then refresh the blog tab.
+- **Design** tab: one form, one Save, organised by part of the blog — colours & fonts
+ (schemes, background colour/image, text and link colours, fonts), header, menu,
+ content, side columns, footer, logo & site icon. The page is five areas — header,
+ left column, main content, right column, footer — each holding modules in any
+ order: blog title, logo, menu, archive (posts by year and month), recent posts,
+ tags (with counts), tag cloud, a search box (finds posts by title and text, any
+ case; several words match in order with anything in between), custom HTML, footer
+ text, RSS link, site map. Column widths are percentages; on phones the columns
+ stack under the posts. The **menu** mixes blog pages and outside links. Posts per
+ page, the date format, the site title size and the footer alignment live here too.
+- Changes are live once saved: save, then refresh the blog tab. Nothing is saved
+ until you press Save, and Discard changes forgets the edits.
- **Languages**: English or Greek, chosen per blog on the Settings tab. It switches the
whole dashboard and the blog's fixed text — dates, archive months, "RSS feed", the pager,
the 404 page. What the blogger writes is never translated.