This repository hosts the Reversim blog/podcast as a static Astro site designed for Hebrew (RTL) content, with a Decap CMS editing UI.
npm install
npm run devThe migration script pulls the full list of post URLs from the blog sitemap and then fetches each post page to preserve the HTML content.
npm run migrate:blogger
npm run migrate:validateOutputs go to src/content/posts/ as Markdown files with HTML bodies. MP3 URLs remain untouched.
The CMS lives at /admin after deployment. It uses the GitHub backend, which requires an OAuth server.
- Deploy a Decap OAuth server (e.g., the official
decap-cms-oauthapp on Render, Vercel, or Cloudflare). - Update
public/admin/config.yml:repo: GitHub org/repobase_url: your OAuth server URLauth_endpoint:/auth
After this, editors can add posts through the UI.
- Set the correct
siteinastro.config.mjs(e.g.,https://www.reversim.com). - If you use a project page (not a custom domain), set
ASTRO_BASEto/<repo>during build. - A GitHub Actions workflow is included at
.github/workflows/deploy.ymlto build and deploydist/.
Replace public/podcast-cover.svg with a 1400x1400 or 3000x3000 JPG/PNG for maximum podcast app compatibility. Update the URL in src/pages/podcast.xml.ts if needed.
npm run dev: local dev servernpm run build: production buildnpm run preview: preview buildnpm run migrate:blogger: fetch and convert postsnpm run migrate:validate: compare sitemap URL count to generated files