Public
My web diary — art, writings, ramblings. Flask → Val Town.
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.

web-diary

My web diary!! Post art, writings, ramblings and etc.... 我的网络日记!!发布艺术、著作、随笔等等......

Originally built with Flask + SQLite, now running on Val Town with Hono + TypeScript.

Routes

RouteDescription
/Home page
/diary/Diary entries (password-protected)
/art/Art gallery
/new-post/Create a new diary entry (auth required)
/new-art/Upload new art

Architecture

  • main.ts — Hono HTTP handler with all routes and API endpoints
  • pages/ — HTML pages (converted from Jinja2 templates, use client-side JS for dynamic content)
  • static/style.css — Styles
  • SQLite — Diary posts and art metadata (Val Town built-in)
  • Blob storage — Uploaded art images
  • Static images — Currently loaded from GitHub raw URLs (can move to blob storage)

Migrated from

github.com/lisa-dai/web-diary — Flask + SQLite + Jinja2

Optional env var

DIARY_SECRET — Used to sign the auth cookie. A default is used if not set.

👉 Add DIARY_SECRET here: https://www.val.town/x/cloverbear/web-diary/environment-variables?key=DIARY_SECRET