kfj001 8ec1678210 style(theming): swap purple/dark theme for 'On Air' light vermillion+cyan
Move off the purple/indigo dark theme to a bright, broadcast-appropriate
light theme: warm off-white base (#fff8f5), vermillion primary (#f5333f, an
'ON AIR' nod) with a sky-cyan (#0ea5e9) secondary; red->cyan hero/CTA gradient.

- Re-point :root token family (bg/surface/card/border/text/muted/accent/
  accent-light/accent-dark/cyan/success/gradient).
- Grep-hunt the hardcoded literals the tokens bypass: nav blur bg, hero radial
  glow, badge/icon tints, CTA/feature hover glows, pricing glow, success-mark
  tiles, card/image drop-shadows, hairline borders, compare-table tints.
- Fix one 3->4 space indent regression in .vs-col.live365.
- PRESERVE white-label demo swatches (KMountain navy/orange/cream, Fire FM
  black/volt/orange) and embedded product screenshots as product samples.
- PRESERVE semantic comparison marks (#ef4444 no / #f59e0b warn).

Verified: computed :root tokens resolve to new values at runtime; full-page
render clean with no stray purple/dark chrome and no layout breakage.
2026-08-21 05:54:13 +00:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 14:52:29 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00
2026-08-20 13:55:48 -07:00

FlowerCMS

Marketing website for FlowerCMS — white-label content management for small radio and internet broadcasters. One platform, every channel: a branded public website, an admin dashboard, native mobile apps, an always-on live stream player, event and sponsor tools, and a hosted LibreTime studio.

This repository is the marketing site itself plus the screenshot assets that demonstrate the product. It is a static HTML site.

Production info

Visit https://www.flowercms.cloud/

What's in this repo

  • index.html — the FlowerCMS marketing landing page. Sections:
    • Hero — "Your station, your brand, one powerful CMS."
    • White-Label Showcase — two demo stations, KMountain Flower Radio and Fire FM, built on the same platform.
    • Features — program schedule, station pages, event management, contact & engagement, media player, smart color picker, mobile build server, white-label mobile app, sponsor carousel & takeover modal, hosted LibreTime studio, worldwide MP3 streaming.
    • Pricing — single flat plan.
    • CTA / footer — contact sales.
  • site-screenshots.html — a gallery of screenshots of the KMountain Flower Radio site (public pages and admin dashboard).
  • convert.py — resizes full-res .png screenshots down to the 500px-wide JPEGs used on the showcase.
  • server.py — tiny static file server for viewing the site locally.
  • *.jpg / *.png — screenshot and screenshot-source assets used by the pages above.

View locally

The site is static — open index.html directly, or serve the folder:

python3 server.py            # http://localhost:8899
# or, equivalently:
python3 -m http.server 8899

Recapture a screenshot asset

convert.py turns a full-resolution .png into the 500px-wide JPEG used on the showcase. Add file names to the names list at the top of the script, then:

python3 convert.py
S
Description
Flower CMS marketing website
Readme
12 MiB
0 Stars 2 Watchers 0 Forks
Languages
HTML 97.9%
Python 2.1%