Change Log
Development timeline of this website, from first commit to now.
64 work days · 228 commits · 303 hours logged
Built Doc & Muse with NotionRefine AI Agent Operating Doc. Started Phase 10. Verified Notion MCP capability boundaries, and drafted a tech blog on Muse–Notion coworking.
- dev: refine quarto project doc (for AI agents); connect Muse with Notion mcp; started Phase 10
- blg: draft tech blog on Muse (agent) coworking with Notion, harness & doc design, and prompt patterns for sustainable agent workflows
Blog x3, Fix Quarto Preview & PublishAdded bilingual Compressor Tips and Cloudflare R2 CDN posts plus a Chinese computer ergonomics post; fixed Quarto preview hooks and Bayanihan image sources, reorganized blog categories, and published the updates to social media.
- fix: correct image sources for
zh/proj/bayanihan - dev: fix Quarto preview by uncommenting the
_quarto.ymlpre-render and post-render options - blg: add the English and Chinese
compressor-tipsposts - blg: add the English and Chinese
cloudflare-r2-cdnposts; reorganize blog categories - blg: add the Chinese computer-ergonomics post
- dev: publish the updates to social media
Freeze Executed Pages & Publish FixesStabilized publishing with frozen executed pages, fixed navbar submenu styling, and republished the site.
- dev: fix publish; add
_freezefor executed pages - fix: navbar submenu styles; publish
Media Storage → Cloudflare R2 CDNMoved large portfolio media out of the repository after testing Git LFS and unlisted video hosting. Settled on Cloudflare R2 with a dedicated media CDN and PicGo workflow.
- dev: track large media files
- dev: store large media files online
- dev: store large media files on Cloudflare R2 + config in PicGo
Contribution Graph → SnakeReworked the homepage GitHub contribution visualization into a snake-style animation.
- dev: home contrib graph → snake
- dev: home contrib graph → snake
Media Portfolio: Music, Art & VideoBuilt out the hobbies/media portfolio: collected videos, added music and art, refined responsive layouts and the video player, and unified presentation styles.
- hobb: collect all videos
- feat: media portfolio (music)
- hobb: media portfolio (music)
- hobb: music & art
- dev: refine music layout & style
- fix: video player & responsive tag-bar
- hobb: adjust music videos; add art photos
- hobb: music & art
- feat: art & video
URL Shortener: Accounts, Management & PolishExpanded the URL Shortener with login and link management, then refined its styling, 404 page, demo video, and overall experience.
- tool: url-shortener add login & management feat
- tool: url-shortener refine styles, add 404 page, add video demo
- tool: refine URL-Shortener
Cursor Blink Style FixFixed the cursor-blink styling for a cleaner interactive presentation.
- fix: style cursor-blink
Blog x2: Notion Workflow & Snipaste Stuck on Top FixAdd two blogs: Notion Automatic Workflow & Snipaste Stuck on Top Fix. Refine content, sync change log, and publish.
- blg: Notion automatic workflow
- blg: Snipaste stuck on top fix
- contnt: refine & cl-sync & publish
- dev: cl-sync script use
.env
Blog: Easy Canvas + Tool: Monthly LoveAdd Easy Canvas blog & Monthly Love tool; refine & link content.
- blg: plotly-display-fix — more visuals & fix
%%shellcode magic instruction - ttl: link network ttl with network-display-fix blg
- blg: zh/en easy-canvas-connection
- contnt: refine tags & page-size
- dev: store keys in
.envinstead of.zshrc - contnt: refine blg & home
- tool: monthly love; bayanihan (redirect to proj)
Blog x2: Plotly & Network Diagram Display FixImproved navigation, styling, blog organization, and bilingual content while refining Plotly and network diagram solutions.
- feat: page-navigation (at bottom)
- style: sidebar separator (disabled now); fix dark code-tools
- dev: add orders by date revert to blgs; add date to all page folder name & add aliases
- blg: zh/en fix-colab-plotly-export
- dev: debug & test network diagram, find new solutions (denied, maintain original one)
- blg: zh/en network diagram display
Blog x2: Notion DB Auto-Sync Tips & VPS Login FixAdded two new blogs: VPS login troubleshooting & Notion DB auto sync tips; fixed SVG to match theme.
- blg: ntn-db-auto-sync en/zh
- blg: vps-ssh-login-troubleshooting
- fix: svg (flowchart by draw.io) switch theme by system setting
Enable Img Lazy Load & Code CrossrefImproved image loading and cross-reference support, refined figure and SCSS styling, and added the Notion database auto-sync blog
- fix: img lazy load, let mermaid load first
- blg: ntn-db-auto-sync
- feat: enable macbook-frame & img-frame figcaption on topbar
- feat: enable lst crossref
- fix: crossref not working in executable cells & customize styles (mv lst-cap to buttom center)
- style: restructure scss: extract common styles, keep only variables
Finish Notion DB Auto-Sync DevelopmentFinish Notion change log databases auto-sync development. Refine formulas; fix UI/API inconsistency. Add a blog of tips learned.
- dev: refine Notion change log db props, reduce to minimum, reduce runtime
- fix: cl sync bugs (api timezone inconsistency), refine py & lua scripts
- blg: ini ntn-db-auto-sync-tips
Automate Quarto+Notion DB WorkflowRestructure Notion dev/log databses; replace manual properties to Notion Formulas; build automation workflow.
- dev: restructure Notion All Projects databases; connect Quarto databases with Relation & Rollup; let claude do repetitive work
- dev: replace manual props with Rollup & Formula (eg. start/hours/days/date-label); built automate workflow
- fix: n_uniques of
_start(dev db) ≠ sum ofDays(log db)
- fix: python sync script (add dev db to Notion connection)
Bayanihan UI/UX Design & About PageNew project of an UI/UX design for Bayanihan. Redesign About page. Bug fixed & style refined.
- contnt: about pages (contact for now); refine change-log; homepage; refine zh/proj/songs’ title
- style: add about-jolla.css; refine cl-item:hover border-color; rm ::after icon from external links with .btn
- fix: refactor repo-url & links to repo’s CSV
- fix: giscus lang-switch in 404 with in-page scripts
- feat: ini bayanihan proj; add interactive color-token-bar
- proj: translate bayanihan to zh
- style: disable about-page dark-img-shade; refine plotly in dark (img-shade & margin)
- feat: let title-meta-author be flex; mv sidebar site-tool sections to bottom
Change LogNew feature: Change Logs. With timeline, Notion CMS and heatmap. Fixed rendering & config. Polished UI.
- feat: add change log page
- fix: cross-ref (no space allowed in
tbl-colwitdths); lang zh (instead of zh-CN) in Quarto; archive render error (configrenderoptions) - feat: change-log timeline reversible; connected to Notion csms; heatmap with tabs
- feat: change-log zh connected to Notion & translated via agents;
sync-changelog.pyadded progress bar - style: refine & fix change-log, add transitions & colors; fix .intro section of homepages
Comments Component i18n & External BuildsGiscus comments now follows the page language, active tags toggle off on a second click, and external links show an icon. Build external project demos.
- feat: enable giscus en/zh-CN
- feat: tag bar revert to All after clicking active tag
- feat: add external links YAML & link icons; fix icon on image links
- dev: add gh-actions to keep supabase and mongodb alive; refine
.gitignore; add About to nav - contnt: (external sites) build Bayanihan demo; refine URL-shortener footer
Comments and a Reproduction GuideGiscus comments went live, and a new page documents how to reproduce the R and Python environments. README in both languages.
- feat: add giscus comments;
- style: refine hr; add dark-mode image shade; fix readme page tag padding
- dev: document R & Python env; add Reproduce instruction; explore visitor counter and bio yml in dev-playground
- feat: re-init About page layout
- feat: add README en/zh; add Reproduce instruction (readme) en/zh
Mobile Line Breaks and a Contribution GraphMobile tables stopped overflowing, the homepage got a GitHub contribution graph, and every script moved into one structure.
- fix: line breaks on mobile (esp. table cell, use
<wbr>if needed) - feat: add responsive GitHub contribution graph to home; enabled mobile-only and mobile-hide utility classes
- feat: add macbook-frame and img-frame components for blogs and tools
- feat: add copyright-year script; restructure all JS
- style: enable code-with-filename
- feat: reset site URL (fixing 404 render bug)
Dark ModeAll styles merged into portfolio.scss, and the site gained a full dark theme in portfolio-dark.
- dev: restructure all styles
- dev: enable light-dark themes
portfolio.scssandportfolio-dark.scss - style: refine all styles; enable callout blocks
- dev: published to gh-pages
Tools SectionA new section for web tools: URL shortener, Cat Image Hub, News Hub, etc.
- feat: init tools section; add url-shortener and cat-img-hub
- fix: page tag redirect (caused by listing-page>1)
- contnt: refine tags and home intro
- tool: finish news-hub; refine the other two tools
- fix: mobile font sizes in nav, sidebar, and buttons
- dev: alias ai-tweets; published to gh-pages
All-Posts Page & Edit-This-Page FeaturesAn all-posts listing with post-type filters, plus an edit-this-page link on every article.
- feat: add all-posts page and its post-type filter script
- feat: enable edit-this-page
- fix: responsive tag bar’s render delay
Mobile PassFirst proper mobile work: button layout, tag collapse, dropdown layering, and a host setting for testing on a phone.
- style: home buttons flex on mobile; collapsed listing page tags with script
- fix: nav-dropdown overlayed by sidebar on mobile
- dev: add default host & port for mobile dev
- feat: set up homepage listing (replacing hard-coded cards)
Shellfolder Blog Finished; Second PublishThe shellfolder post reached its final structure in both languages, and the site was republished with cleaner routes.
- blg: refine shellfolder (structure + TOC opts)
- style: dropdown-item; rm toc padding transit; show listing-tag counts; centered all fig-caps; title-block tags; rem/pad/mar
- blg: finish quarto-img-styles
- fix: strip
/index.htmlfrom routes with script; refined the listing sort and filter UI - feat: all pages support en/zh languages
- dev: publish to gh-pages
Figure Styles Solved; Img-Hosting WorkflowThree long days on the shellfolder blog and figure styling. The image sizing and centering fix became its own post, quarto-img-styles.
- fix: sidebar search not showing bug (repeated #quarto-search)
- style: navbar dropdown; in-line code wrap; non-executable code block; line break styles
- dev: add Bootstrap icons to quicklinks
- blg: refine fix-misplaced-sysfolders zh
- fix: responsive image sizing and centering
- blg: add fix notes to blg (quarto-img-styles)
- dev: set up PicGo with GitHub as image host
- feat: enable img lightbox
- blg: refine & translate quarto-img-styles; refine shellfolder en/zh
Blog Section OpenedThe blog section started with a post on misplaced system folders. Also fixed the long-standing navbar active-anchor bug.
- fix: navbar active anchor; refine all JS with code convention
- contnt: refine homepage
- blg: init blogs listing page, add fix-misplaced-sysfolders (now shellfolders)
- dev: refine sidebar YAML & layout
- feat: add cover images to listing pages
- style: fix search bar cancel button line wrap
Listing Polish & 404 FixA round of small fixes: the 404 page finally respects language and route, listings got cover images, and the favicon became a spark.
- fix: sidebar toggle area; change favicon to spark
- dev: switch publishing to
quarto publish gh-pages --no-render; rename r-tips from .md to .qmd so it shows in listings
- fix: 404 page language & route with in-page scripts
- feat: add env/version blocks & number-sections to projects; add image field to listing (card cover)
- contnt: refactor ai-tweets to ai-discourse; refine & translate global-visa & r-tips; refine all categories and descriptions
AI-Tweets Project & R-Tips TutorialTwo new pieces of content, plus fixes for the language switcher, reading time, and homepage cards.
- fix: lang-switch reroutes to
root/en; zh/en diff reading-time; home card clickable area - ttl: translate sankey into en
- proj: add ai-tweets; fix its rendering bug
- fix: nav-bar lang-switch drop-down menu
- proj: ai-tweets all tables, code comments, translate into zh
- ttl: add R-tips zh
- dev: enable
==mark==syntax in_quarto.yml
First Publish to GitHub PagesThe site went live. Added a reading-time filter written in Lua, language-switcher fixes, and a refined sankey tutorial.
- dev: publish to gh-pages
- feat: add reading time via
reading-stats.lua - fix: lang-switch; add home reroute (
/→/en/); number-sections - contnt: textual bugs; hobb placeholder
- ttl: translate multivariate into en; refine zh sankey
Project Restarted; Translation PushWork resumed after seven weeks with a README, manual cross-refs for outputs, and a translation pass across most projects and tutorials.
- dev: init
README.md; write cross-ref SOP notes - proj: add manual cross-refs for outputs in student-media-usage
- proj: translate data-processing, student-media-usage, and catalan into zh
- proj: translate & fix songs, visa, and catalan
- ttl: translate amounts-and-distribution into en
- ttl: refine zh multivariate-plots’ figures, text, cross-refs
- dev: add back-to-top navigation
Data-Processing Tutorial in EnglishFinished the English version of the data-processing tutorial. The last entry before a seven-week pause.
- ttl: finish data-processing en
Full Style Revamp & en/zh SwitchThe whole stylesheet was rewritten as portfolio.css, and the site gained a Chinese mirror tree with a language switch.
- style: rewrote site CSS in
src/styles/portfolio.css; add logo in_brand.yml - fix: copy button, nav toggle color, dropdown menu, and scrollbar styles
- feat: init hobbies page;
- dev: add en/zh lang-switch; move zh pages into a
/zh/mirror of the site tree - dev: move shared datasets and img into
/src/so both languages reuse them - contnt: translated all English pages to Chinese
Cross-Reference SystemIn-text citations switched to Quarto cross-refs, and the bibliography moved into a .bib file with APA formatting.
- ttl: refine wording in amounts-and-distribution
- proj: add
@fig-/@tbl-/@sec-cross-refs; extract bibliography toreference.bib; addsrc/apa.csl
- proj: link in-text citations to the appendix
Tutorials Section AddedAll tutorial files came in at once: converted to .qmd, images extracted, and folders restructured for future en/zh versions.
- ttl: add all tutorial files, convert to .qmd, extract all base64 img to
src - ttl: restructure tutorials into en/zh folders
- dev: replace caption spans with cross-ref options (
#| label,#| fig-cap)
Sidebar & Link FixesA small cleanup for pass over sidebar active styles, external documentation links, and homepage wording.
- fix: sidebar active style error with diff classnames in localhost & gh-pages
- fix: drop
fix-navbar-activescript from the About page, usesidebar: falseinstead - proj: fix URL references to pandas and Python docs
- contnt: refined wording and homepage layout
Python Pipeline & Repo RestructureThe heaviest day of the setup phase. Python projects moved to the Jupyter renderer, notebooks became .qmd files, and static assets moved into /src/.
- style: sidebar, breadcrumb navigation and page tag styles; extract inline styles into CSS; add
.captionclass - dev: convert .ipynb/.Rmd to .qmd; switch Python projects from knitr to Jupyter renderer
- dev: add env and package version chunks to all project pages (Python chunks need
#|for YAML options) - dev: restructure the tree into
/src/styles,/src/scripts,/src/img; add 404, home pages, and favicon - proj: extract images from base64; compressed code cells in global-visa
- fix: navbar active error with
fix-navbar-activescript - feat: init tutorial pages
Catalan Project FinishedRefined Catalan Referendum project page, the site’s first complete article.
- dev: refine YAML headers across project pages; add tables of contents (TOC)
- dev: clean up routes in
_quarto.yml - proj: finish rewriting
catalan-referendum/index.qmd
Project BootstrappedInitialized Quarto website project and skeleton with four data analysis projects.
- dev: init Quarto; start in RStudio, switch to VS Code
- feat: add the first 4 project docs (ipynb & Rmd)
- dev: track CSV with git LFS; record conda env in
envs/environment.yml; set up layout config_quarto.yml&_metadata.yml - proj: shape doc tree & catalan-referendum page layout
- style: add custom
styles.css - fix: code-tool not working with
fix-code-foldscript