Skip to content

Plain CMS migration

Latest

Choose a tag to compare

@victorantos victorantos released this 01 Sep 09:23
· 24 commits to main since this release

AngJobs has moved off VuePress. The site is now built by plain, a Git-native CMS: every job is a Markdown file, the configuration is one JSON file, and the build emits a static site. No database, no framework, one runtime dependency.

Main changes

  • Migrated AngJobs from VuePress 2 to plain CMS — 140 commits, ~147k lines of VuePress scaffolding removed
  • Every one of the 752 job listings re-imported as Markdown with real titles, dates, and company bylines
  • 1,123 redirects map every legacy .html URL to its new home, flattened to a single hop — no SEO lost in the move
  • New angjobs theme: the gazette starter forked into a dense, scannable job board
  • Client-side search in the masthead — search from any page, and job pages keep a way back to the results you came from
  • /admin is live: sign in with GitHub (OAuth Worker, no personal access token needed) and publish a job straight from the browser
  • Apply button on every job posts to api.victorantos.com and works with JavaScript disabled
  • Static JSON API at /api/, plus search-index.json, llms.txt, RSS, and a sitemap — agents can read the whole board in one request

Other changes

  • Auto-deploy to VPS on push to main (replaces Azure)
  • Monthly Hacker News "Who's hiring?" import through August 2026
  • Full brand kit — favicon, Apple touch icon, social/OG images
  • GoatCounter analytics; promo strip driven by a data file instead of hand-edited pages
  • Dependabot vulnerabilities cleared; CI actions bumped to v5
  • 64 tests green, build reproducible byte-for-byte

Full changelog: v0.2...v0.3