# Static Site

Published articles for Static Site.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Doctave is shutting down

DevFeed: [Doctave is shutting down](<https://devfeed.tech/articles/doctave-is-shutting-down-30943.md>)

Original publisher: [Read original article](<https://www.doctave.com/blog/doctave-is-shutting-down>)

Author: Niklas Begley

Published: 2026-08-31T06:00:00Z

Content type: release

Language: en

Sources: [Doctave - Build beautiful developer portals with docs-as-code](<https://devfeed.tech/sources/doctave-build-beautiful-developer-portals-with-docs-as-code.md>)

Topics: [Documentation](<https://devfeed.tech/topics/documentation.md>), [migration](<https://devfeed.tech/topics/migration.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [MkDocs](<https://devfeed.tech/topics/mkdocs.md>), [Markdown](<https://devfeed.tech/topics/markdown.md>), [OpenAPI Specification](<https://devfeed.tech/topics/openapi.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [docs-as-code](<https://devfeed.tech/tags/docs-as-code.md>), [documentation](<https://devfeed.tech/tags/documentation.md>), [markdown](<https://devfeed.tech/tags/markdown.md>), [migration](<https://devfeed.tech/tags/migration.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [openapi](<https://devfeed.tech/tags/openapi.md>), [static-site](<https://devfeed.tech/tags/static-site.md>), [static-site-generator](<https://devfeed.tech/tags/static-site-generator.md>)

### AI overview

Doctave announces that it will shut down on September 14, 2026. Hosted documentation sites, the dashboard, and builds and deploys will stop operating. Users can continue working from their Git repositories and can migrate to the open-source Docapella static site generator, although server-dependent features such as analytics are unsupported.

### Source excerpt

After several years of building documentation tooling, we've made the difficult decision to shut Doctave down. The service will stop operating on September 14th, 2026. We have informed all our customers individually, but are also now posting a public message here. On September 14th, Hosted documentation sites will stop being served The Doctave dashboard will no longer be available Builds and deploys will stop running How this impacts you Your content is yours, and it's already in your repository. Doctave was built on docs-as-code precisely so that your Markdown, OpenAPI specs, and configuration live in Git rather than in our database. Nothing needs to be exported from us to keep writing. You own your docs. Where can I move my docs? We have created an open source static site generator, Docapella, that is mostly compatible with existing Doctave projects. The main change you need to make is renaming doctave.yaml to docapella.yaml. Features that require a server, such as analytics, are not supported, but the content model and general look and feel are the same. Thank you To everyone who wrote documentation with Doctave, sent us feedback, filed bugs, or took a chance on a small team building documentation tooling: thank you. We learned an enormous amount from you, and it genuinely mattered to us. If you have questions about the shutdown or need help planning a migration, get in touch at nik@doctave.com. I'll answer every email I can before we wind things down. - Nik & Anton

## This site now runs on Astro, not WordPress

DevFeed: [This site now runs on Astro, not WordPress](<https://devfeed.tech/articles/this-site-now-runs-on-astro-not-wordpress-36151.md>)

Original publisher: [Read original article](<https://as215248.net/notes/hello-astro/>)

Author: Bastiaan Brink

Published: 2026-07-19T00:00:00Z

Content type: article

Language: en

Sources: [AS215248 - Notes](<https://devfeed.tech/sources/as215248-notes.md>)

Topics: [Astro](<https://devfeed.tech/topics/astro.md>), [WordPress](<https://devfeed.tech/topics/wordpress.md>), [data](<https://devfeed.tech/topics/data.md>), [Web Development](<https://devfeed.tech/topics/web-development.md>), [Cloudflare](<https://devfeed.tech/topics/cloudflare.md>), [Git](<https://devfeed.tech/topics/git.md>)

Tags: [astro](<https://devfeed.tech/tags/astro.md>), [cloudflare](<https://devfeed.tech/tags/cloudflare.md>), [dns](<https://devfeed.tech/tags/dns.md>), [git](<https://devfeed.tech/tags/git.md>), [meta](<https://devfeed.tech/tags/meta.md>), [network](<https://devfeed.tech/tags/network.md>), [rpki](<https://devfeed.tech/tags/rpki.md>), [static](<https://devfeed.tech/tags/static.md>), [static-site](<https://devfeed.tech/tags/static-site.md>), [tooling](<https://devfeed.tech/tags/tooling.md>), [website](<https://devfeed.tech/tags/website.md>), [wordpress](<https://devfeed.tech/tags/wordpress.md>)

### AI overview

The author explains why as215248.net was rebuilt from WordPress as a static Astro site. The site now generates static HTML without a database, PHP, or admin panel, while scripts fetch live network data from services including Globalping, PeeringDB, RIPEstat, RDAP, the NTP Pool, and Tor Metrics. A Git-based process rebuilds and republishes the site daily behind a Cloudflare Tunnel.

### Source excerpt

Why I rebuilt as215248.net as a static site, and what it does now -- a live Looking Glass, auto-synced PeeringDB data, and a world map of presence.

## My IndieWeb Journey: A Guide to POSSE on a Hugo Static Site

DevFeed: [My IndieWeb Journey: A Guide to POSSE on a Hugo Static Site](<https://devfeed.tech/articles/my-indieweb-journey-a-guide-to-posse-on-a-hugo-static-site-27742.md>)

Original publisher: [Read original article](<https://gagor.pro/2026/01/my-indieweb-journey-a-guide-to-posse-on-a-hugo-static-site/>)

Author: Tom

Published: 2026-01-27T00:00:00Z

Content type: tutorial

Language: en

Sources: [Tomasz Gągor](<https://devfeed.tech/sources/tomasz-gagor.md>)

Topics: [IndieWeb](<https://devfeed.tech/topics/indieweb.md>), [Hugo](<https://devfeed.tech/topics/hugo.md>), [Microformats](<https://devfeed.tech/topics/microformats.md>), [Giscus](<https://devfeed.tech/topics/giscus.md>), [GitHub](<https://devfeed.tech/topics/github.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [brid-gy](<https://devfeed.tech/tags/brid-gy.md>), [building](<https://devfeed.tech/tags/building.md>), [github](<https://devfeed.tech/tags/github.md>), [github-action](<https://devfeed.tech/tags/github-action.md>), [guide](<https://devfeed.tech/tags/guide.md>), [hugo](<https://devfeed.tech/tags/hugo.md>), [indieweb](<https://devfeed.tech/tags/indieweb.md>), [journey](<https://devfeed.tech/tags/journey.md>), [microformats](<https://devfeed.tech/tags/microformats.md>), [papermod](<https://devfeed.tech/tags/papermod.md>), [posse](<https://devfeed.tech/tags/posse.md>), [static-site](<https://devfeed.tech/tags/static-site.md>), [syndication](<https://devfeed.tech/tags/syndication.md>), [web-development](<https://devfeed.tech/tags/web-development.md>), [webmentions](<https://devfeed.tech/tags/webmentions.md>)

### AI overview

A personal guide to applying IndieWeb principles to a Hugo blog through POSSE syndication. It describes cross-posting articles to social networks with a custom GitHub Action, discusses the limitations of comment systems such as Giscus, and emphasizes publishing on an owned site before syndicating elsewhere.

### Source excerpt

My journey of integrating IndieWeb principles into my Hugo blog-from microformats to Brid.gy syndication and building a custom Webmention renderer.

## Deploy a Nanoc Static Site to S3 with GitHub Actions

DevFeed: [Deploy a Nanoc Static Site to S3 with GitHub Actions](<https://devfeed.tech/articles/deploy-a-nanoc-static-site-to-s3-with-github-actions-33338.md>)

Original publisher: [Read original article](<https://blog.ratnesh-maurya.com/blog/Easily-Deploy-Your-Nanoc-Website-to-S3-with-GitHub-Actions>)

Author: ratneshmaurya2311@gmail.com (Ratnesh Maurya)

Published: 2024-11-23T00:00:00Z

Content type: tutorial

Language: en

Sources: [Ratn Labs](<https://devfeed.tech/sources/ratn-labs.md>)

Topics: [Amazon S3](<https://devfeed.tech/topics/amazon-s3.md>), [GitHub Actions](<https://devfeed.tech/topics/github-actions.md>), [Deployment](<https://devfeed.tech/topics/deployment.md>), [AWS IAM](<https://devfeed.tech/topics/aws-iam.md>), [Amazon Web Services](<https://devfeed.tech/topics/aws.md>)

Tags: [aws](<https://devfeed.tech/tags/aws.md>), [aws-s3](<https://devfeed.tech/tags/aws-s3.md>), [cloud-devops](<https://devfeed.tech/tags/cloud-devops.md>), [complete](<https://devfeed.tech/tags/complete.md>), [deploy](<https://devfeed.tech/tags/deploy.md>), [deployment](<https://devfeed.tech/tags/deployment.md>), [github-actions](<https://devfeed.tech/tags/github-actions.md>), [guide](<https://devfeed.tech/tags/guide.md>), [iam](<https://devfeed.tech/tags/iam.md>), [policy](<https://devfeed.tech/tags/policy.md>), [s3](<https://devfeed.tech/tags/s3.md>), [setup](<https://devfeed.tech/tags/setup.md>), [static](<https://devfeed.tech/tags/static.md>), [static-site](<https://devfeed.tech/tags/static-site.md>), [using](<https://devfeed.tech/tags/using.md>), [website](<https://devfeed.tech/tags/website.md>), [workflow](<https://devfeed.tech/tags/workflow.md>), [yaml](<https://devfeed.tech/tags/yaml.md>)

### AI overview

A step-by-step tutorial explains how to automate deployment of a Nanoc static website to AWS S3 with GitHub Actions. It covers the S3 bucket policy, IAM setup, and the complete workflow YAML.

### Source excerpt

A step-by-step guide to automating Nanoc website deployment to AWS S3 using GitHub Actions, including S3 bucket policy, IAM setup, and the complete workflow YAML.

## Optimizing Hugo static site redirects with Cloudflare Pages

DevFeed: [Optimizing Hugo static site redirects with Cloudflare Pages](<https://devfeed.tech/articles/optimizing-hugo-static-site-redirects-with-cloudflare-pages-27704.md>)

Original publisher: [Read original article](<https://gagor.pro/2024/03/optimizing-hugo-static-site-redirects-with-cloudflare-pages/>)

Author: Tom

Published: 2024-03-04T00:00:00Z

Content type: tutorial

Language: en

Sources: [Tomasz Gągor](<https://devfeed.tech/sources/tomasz-gagor.md>)

Topics: [Hugo](<https://devfeed.tech/topics/hugo.md>), [GitHub Pages](<https://devfeed.tech/topics/github-pages.md>), [Cloudflare](<https://devfeed.tech/topics/cloudflare.md>), [hosting](<https://devfeed.tech/topics/hosting.md>), [Website](<https://devfeed.tech/topics/website.md>)

Tags: [cloudflare](<https://devfeed.tech/tags/cloudflare.md>), [cloudflare-pages](<https://devfeed.tech/tags/cloudflare-pages.md>), [cloudflare-redirect-rules](<https://devfeed.tech/tags/cloudflare-redirect-rules.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [deploy](<https://devfeed.tech/tags/deploy.md>), [github-pages](<https://devfeed.tech/tags/github-pages.md>), [hosting](<https://devfeed.tech/tags/hosting.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [hugo](<https://devfeed.tech/tags/hugo.md>), [hugo-redirects](<https://devfeed.tech/tags/hugo-redirects.md>), [hugo-site-redirects](<https://devfeed.tech/tags/hugo-site-redirects.md>), [seo](<https://devfeed.tech/tags/seo.md>), [static-site](<https://devfeed.tech/tags/static-site.md>), [static-site-optimization](<https://devfeed.tech/tags/static-site-optimization.md>)

### AI overview

This tutorial explains how to generate a redirects file from Hugo aliases, add custom redirects, and deploy it with Cloudflare Pages. It presents the approach as a way to handle more redirects than the author could support with GitHub Pages and Cloudflare's Free plan limitations.

### Source excerpt

Learn how to optimize Hugo static site redirects using Cloudflare Pages, overcoming limitations of GitHub Pages and Cloudflare Free plan.

## Adding Mermaid diagrams to Hugo

DevFeed: [Adding Mermaid diagrams to Hugo](<https://devfeed.tech/articles/adding-mermaid-diagrams-to-hugo-27695.md>)

Original publisher: [Read original article](<https://gagor.pro/2024/02/adding-mermaid-diagrams-to-hugo/>)

Author: Tom

Published: 2024-02-25T00:00:00Z

Content type: tutorial

Language: en

Sources: [Tomasz Gągor](<https://devfeed.tech/sources/tomasz-gagor.md>)

Topics: [Hugo](<https://devfeed.tech/topics/hugo.md>), [Markdown](<https://devfeed.tech/topics/markdown.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [code](<https://devfeed.tech/tags/code.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [hugo](<https://devfeed.tech/tags/hugo.md>), [hugo-diagrams](<https://devfeed.tech/tags/hugo-diagrams.md>), [hugo-mermaid-integration](<https://devfeed.tech/tags/hugo-mermaid-integration.md>), [interactive-diagrams-hugo](<https://devfeed.tech/tags/interactive-diagrams-hugo.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [learn](<https://devfeed.tech/tags/learn.md>), [markdown](<https://devfeed.tech/tags/markdown.md>), [mermaid](<https://devfeed.tech/tags/mermaid.md>), [mermaid-diagrams](<https://devfeed.tech/tags/mermaid-diagrams.md>), [static-site](<https://devfeed.tech/tags/static-site.md>), [static-site-diagrams](<https://devfeed.tech/tags/static-site-diagrams.md>)

### AI overview

A tutorial on adding Mermaid diagrams to Hugo sites by extending Hugo with a custom file and loading Mermaid JavaScript once per page. The diagrams can then be inserted in Markdown files.

### Source excerpt

Learn how to add and optimize Mermaid diagrams in Hugo, enhancing your static site with dynamic and interactive diagrams.

## A Journey from Monolith to Micro frontends at Udemy -- Part 2 of 3

DevFeed: [A Journey from Monolith to Micro frontends at Udemy -- Part 2 of 3](<https://devfeed.tech/articles/a-journey-from-monolith-to-micro-frontends-at-udemy-part-2-of-3-26358.md>)

Original publisher: [Read original article](<https://medium.com/udemy-engineering/transforming-frontend-architecture-a-journey-from-monolith-to-micro-frontends-at-udemy-part-2-c9bd7ede5f1c?source=rss----19c6d3367ed4---4>)

Author: Hamza ERBAY

Published: 2024-01-08T18:30:04Z

Content type: article

Language: en

Sources: [Udemy Engineering](<https://devfeed.tech/sources/udemy-engineering.md>)

Topics: [Front end](<https://devfeed.tech/topics/frontend.md>), [Next.js](<https://devfeed.tech/topics/next-js.md>), [React](<https://devfeed.tech/topics/react.md>), [Hackathon](<https://devfeed.tech/topics/hackathon.md>), [Web Development](<https://devfeed.tech/topics/web-development.md>), [GraphQL](<https://devfeed.tech/topics/graphql.md>)

Tags: [architecture](<https://devfeed.tech/tags/architecture.md>), [collaboration](<https://devfeed.tech/tags/collaboration.md>), [decoupling](<https://devfeed.tech/tags/decoupling.md>), [frontend](<https://devfeed.tech/tags/frontend.md>), [graphql](<https://devfeed.tech/tags/graphql.md>), [hackathon](<https://devfeed.tech/tags/hackathon.md>), [hackathons](<https://devfeed.tech/tags/hackathons.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [micro-frontends](<https://devfeed.tech/tags/micro-frontends.md>), [next-js](<https://devfeed.tech/tags/next-js.md>), [performance](<https://devfeed.tech/tags/performance.md>), [react](<https://devfeed.tech/tags/react.md>), [static-site](<https://devfeed.tech/tags/static-site.md>)

### AI overview

This second article in a three-part series describes Udemy's hackathon exploration of decoupling its monolithic frontend into micro frontends. It explains the limitations of tightly coupled React components, the choice of Next.js, and criteria used to select the Featured topics page as an initial candidate.

### Source excerpt

Transforming Frontend Architecture: A Journey from Monolith to Micro Frontends at Udemy -- Part 2 of 3 By: Chris Nienhuis, Hamza Erbay, Matthew Bise, Nathan Chapman, Seth Hodgson, Trey Briggs, Charles Pham Photo by Hamza Erbay on UnsplashIntroduction In the previous section, we discussed the challenges in our current monolith architecture and the reasons why we are keen on transitioning to a micro frontend architecture. Now, we are going to delve into the hackathon event at Udemy where we explored the idea of decoupling our frontend structure, the preparations we made, and the options we considered for this transformation. If you missed Part 1 of this series, it is located here: Transforming frontend Architecture: A Journey from Monolith to Micro frontends at Udemy -- Part 1... Udemy Hackathon During the Hackathon event at Udemy, which we organize every six months, I had the opportunity to meet some amazing people in 2021. We collaborated on ideas for decoupling the frontend structure, which was a great experience. Our team comprised Chris Nienhuis, Hamza Erbay, Matthew Bise, Nathan Chapman, and Trey Briggs. We would like to thank Seth Hodgson for bringing us together. Preparation Our React components are currently tightly linked to the monolith runtime environment, making it impossible to use them across our various sites or in different rendering environments -- client-side, server-side, or offline via static site generation tools (B2C/B2B, support center, blogs, microsites, etc.). Udemy Monolith's high-level architecture Decoupling the frontend would improve our daily workflow and make it easier to make significant style changes across the apps. After researching modern frontend technologies, we chose Next.js for its strong community support and performance. Then, we worked on the high-level structure for the hackathon. Analyze the inventory The hackathon posed challenges related to our infrastructure and GraphQL integration that needed to be addressed. Our goal was t

## Integrating Spin with Static Site Generators

DevFeed: [Integrating Spin with Static Site Generators](<https://devfeed.tech/articles/integrating-spin-with-static-site-generators-15147.md>)

Original publisher: [Read original article](<https://www.fermyon.com/blog/2023-06-07-integrating-with-ssgs>)

Author: David Flanagan

Published: 2023-06-07T10:00:00Z

Content type: article

Language: en

Sources: [Fermyon - Experience the next wave of cloud computing.](<https://devfeed.tech/sources/fermyon-experience-the-next-wave-of-cloud-computing.md>)

Topics: [Front end](<https://devfeed.tech/topics/frontend.md>), [WebAssembly](<https://devfeed.tech/topics/web-assembly.md>), [Back end](<https://devfeed.tech/topics/backend.md>), [generators](<https://devfeed.tech/topics/generators.md>)

Tags: [backend](<https://devfeed.tech/tags/backend.md>), [frontend](<https://devfeed.tech/tags/frontend.md>), [generators](<https://devfeed.tech/tags/generators.md>), [static](<https://devfeed.tech/tags/static.md>), [static-site](<https://devfeed.tech/tags/static-site.md>), [webassembly](<https://devfeed.tech/tags/webassembly.md>)

### AI overview

The article discusses integrating Spin with static site generators to provide a frontend for a WebAssembly backend.

### Source excerpt

Providing a Frontend for Your WebAssembly Backend

## Switching a Personal Blog from WordPress to Hugo

DevFeed: [Switching a Personal Blog from WordPress to Hugo](<https://devfeed.tech/articles/bye-bye-wordpress-27659.md>)

Original publisher: [Read original article](<https://gagor.pro/2020/10/bye-bye-wordpress/>)

Author: Tom

Published: 2020-10-24T00:00:00Z

Content type: opinion

Language: en

Sources: [Tomasz Gągor](<https://devfeed.tech/sources/tomasz-gagor.md>)

Topics: [Hugo](<https://devfeed.tech/topics/hugo.md>), [WordPress](<https://devfeed.tech/topics/wordpress.md>)

Tags: [hugo](<https://devfeed.tech/tags/hugo.md>), [hugo-blog-setup](<https://devfeed.tech/tags/hugo-blog-setup.md>), [hugo-static-site-generator](<https://devfeed.tech/tags/hugo-static-site-generator.md>), [personal](<https://devfeed.tech/tags/personal.md>), [personal-blog-management](<https://devfeed.tech/tags/personal-blog-management.md>), [static-site](<https://devfeed.tech/tags/static-site.md>), [static-site-benefits](<https://devfeed.tech/tags/static-site-benefits.md>), [static-site-generator](<https://devfeed.tech/tags/static-site-generator.md>), [switching-from-wordpress-to-hugo](<https://devfeed.tech/tags/switching-from-wordpress-to-hugo.md>), [wordpress](<https://devfeed.tech/tags/wordpress.md>), [wordpress-alternatives](<https://devfeed.tech/tags/wordpress-alternatives.md>)

### AI overview

The author describes moving a personal blog from WordPress to Hugo after years of using WordPress, citing limited time for server maintenance, configuration, updates, and new features. The author plans to share more about the chosen configuration and workflow.

### Source excerpt

Learn about the transition from Wordpress to Hugo for managing a personal blog, including reasons for the switch and benefits of using a static site generator.

## Search Box and Cloud Function

DevFeed: [Search Box and Cloud Function](<https://devfeed.tech/articles/search-box-and-cloud-function-27447.md>)

Original publisher: [Read original article](<https://ariya.io/2020/03/search-box-and-cloud-function/>)

Published: 2020-04-01T06:45:57Z

Content type: tutorial

Language: en

Sources: [Ariya Hidayat](<https://devfeed.tech/sources/ariya-hidayat.md>)

Topics: [Firebase](<https://devfeed.tech/topics/firebase.md>), [Cloud Functions](<https://devfeed.tech/topics/cloud-functions.md>), [hosting](<https://devfeed.tech/topics/hosting.md>), [DuckDuckGo](<https://devfeed.tech/topics/duckduckgo.md>), [Hugo](<https://devfeed.tech/topics/hugo.md>)

Tags: [cloud-functions](<https://devfeed.tech/tags/cloud-functions.md>), [domain](<https://devfeed.tech/tags/domain.md>), [firebase](<https://devfeed.tech/tags/firebase.md>), [hosting](<https://devfeed.tech/tags/hosting.md>), [hugo](<https://devfeed.tech/tags/hugo.md>), [search](<https://devfeed.tech/tags/search.md>), [static-site](<https://devfeed.tech/tags/static-site.md>)

### AI overview

A tutorial showing how to add a search box to a Hugo blog hosted on Firebase Hosting by using Cloud Functions for Firebase and redirecting searches to DuckDuckGo.

### Source excerpt

For a blog hosted with Firebase Hosting, it turns out that a little search box is fairly easy to implement by using Cloud Functions for Firebase.

## Adding Staticman Comments

DevFeed: [Adding Staticman Comments](<https://devfeed.tech/articles/adding-staticman-comments-28485.md>)

Original publisher: [Read original article](<https://travisdowns.github.io/blog/2020/02/05/now-with-comments.html>)

Author: Travis Downs (travis.downs@gmail.com)

Published: 2020-02-05T00:00:00Z

Content type: tutorial

Language: en

Sources: [Performance Matters](<https://devfeed.tech/sources/performance-matters.md>)

Topics: [GitHub](<https://devfeed.tech/topics/github.md>), [GitHub Pages](<https://devfeed.tech/topics/github-pages.md>), [Bot](<https://devfeed.tech/topics/bot.md>), [Pull Request](<https://devfeed.tech/topics/pull-request.md>), [Heroku](<https://devfeed.tech/topics/heroku.md>), [personal access token](<https://devfeed.tech/topics/personal-access-token.md>), [hosting](<https://devfeed.tech/topics/hosting.md>), [repo](<https://devfeed.tech/topics/repo.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [file](<https://devfeed.tech/tags/file.md>), [github](<https://devfeed.tech/tags/github.md>), [github-pages](<https://devfeed.tech/tags/github-pages.md>), [guide](<https://devfeed.tech/tags/guide.md>), [heroku](<https://devfeed.tech/tags/heroku.md>), [hosting](<https://devfeed.tech/tags/hosting.md>), [meta](<https://devfeed.tech/tags/meta.md>), [personal-access-token](<https://devfeed.tech/tags/personal-access-token.md>), [pull-request](<https://devfeed.tech/tags/pull-request.md>), [static-site](<https://devfeed.tech/tags/static-site.md>), [staticman](<https://devfeed.tech/tags/staticman.md>)

### AI overview

A tutorial explaining how to add Staticman comments to a static blog. It covers the submission flow, deploying the API bridge on Heroku, using GitHub pull requests to store comments, and republishing through GitHub Pages.

### Source excerpt

Adding static comments to a static blog using staticman. Static.

## Static Page Caching with Craft CMS

DevFeed: [Static Page Caching with Craft CMS](<https://devfeed.tech/articles/static-page-caching-with-craft-cms-31302.md>)

Original publisher: [Read original article](<https://nystudio107.com/blog/static-caching-with-craft-cms>)

Author: andrew@nystudio107.com (Andrew Welch)

Published: 2017-06-16T04:35:00Z

Content type: tutorial

Language: en

Sources: [nystudio107 | Articles on modern web development.](<https://devfeed.tech/sources/nystudio107-articles-on-modern-web-development.md>)

Topics: [Caching](<https://devfeed.tech/topics/caching.md>), [Content Management System](<https://devfeed.tech/topics/cms.md>), [nginx](<https://devfeed.tech/topics/nginx.md>), [Web Development](<https://devfeed.tech/topics/web-development.md>)

Tags: [backend](<https://devfeed.tech/tags/backend.md>), [best](<https://devfeed.tech/tags/best.md>), [cache](<https://devfeed.tech/tags/cache.md>), [caching](<https://devfeed.tech/tags/caching.md>), [cms](<https://devfeed.tech/tags/cms.md>), [content](<https://devfeed.tech/tags/content.md>), [db-based](<https://devfeed.tech/tags/db-based.md>), [editor](<https://devfeed.tech/tags/editor.md>), [friendly](<https://devfeed.tech/tags/friendly.md>), [frontend](<https://devfeed.tech/tags/frontend.md>), [generator](<https://devfeed.tech/tags/generator.md>), [html](<https://devfeed.tech/tags/html.md>), [insights](<https://devfeed.tech/tags/insights.md>), [nginx](<https://devfeed.tech/tags/nginx.md>), [performance](<https://devfeed.tech/tags/performance.md>), [static](<https://devfeed.tech/tags/static.md>), [static-site](<https://devfeed.tech/tags/static-site.md>), [worlds](<https://devfeed.tech/tags/worlds.md>)

### AI overview

This tutorial explains how to use Nginx FastCGI Cache to add full-page static caching in front of Craft CMS. It contrasts fragment caching with storing complete rendered pages as flat files and discusses performance, concurrency, HTTPS, configuration, and flexibility tradeoffs compared with Varnish and static site generators.

### Source excerpt

Get the best of both worlds with static HTML generator performance on the frontend, and a content editor friendly db-based backend

## Blog redesign and new features

DevFeed: [Blog redesign and new features](<https://devfeed.tech/articles/blog-redesign-and-new-features-37320.md>)

Original publisher: [Read original article](<https://muffinman.io/blog/new-design-and-features/>)

Author: Stanko

Published: 2016-10-20T00:00:00Z

Content type: article

Language: en

Sources: [Stanko Tadić](<https://devfeed.tech/sources/stanko-tadic.md>)

Topics: [Jekyll](<https://devfeed.tech/topics/jekyll.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [JSON](<https://devfeed.tech/topics/json.md>), [Pull Request](<https://devfeed.tech/topics/pull-request.md>), [GitHub Pages](<https://devfeed.tech/topics/github-pages.md>), [Jenkins](<https://devfeed.tech/topics/jenkins.md>), [GitHub](<https://devfeed.tech/topics/github.md>)

Tags: [also](<https://devfeed.tech/tags/also.md>), [blog](<https://devfeed.tech/tags/blog.md>), [features](<https://devfeed.tech/tags/features.md>), [github-pages](<https://devfeed.tech/tags/github-pages.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [jekyll](<https://devfeed.tech/tags/jekyll.md>), [json](<https://devfeed.tech/tags/json.md>), [new-features](<https://devfeed.tech/tags/new-features.md>), [pull-requests](<https://devfeed.tech/tags/pull-requests.md>), [redesign](<https://devfeed.tech/tags/redesign.md>), [static-site](<https://devfeed.tech/tags/static-site.md>)

### AI overview

The author describes a redesign of a personal blog and newly added features, including category pages, moderated comments through pull requests, JavaScript fuzzy search over post titles, estimated reading time, and sharing buttons. The article also discusses Jekyll plugins, GitHub Pages limitations on custom plugins, and planned build automation with Jenkins or Travis.

### Source excerpt

Please note that I'm not using Jekyll anymore, so this post might be outdated. As you probably noticed I redesigned my blog and added some new features. This is a list of the new stuff. New design Category pages Comments Search Reading time Share buttons New design # My friend Nikola, from MIDA digital agency, helped me a lot with this one. I gave him a basic idea what I wanted, and he came up with this simple but beautiful design. It might go through some smaller changes in the future, but nothing major. Hope you like it. Category pages # These are accessible from the main menu, or by clicking on the category link at the end of the post. Obviosly, they list all of the posts for the selected category. This is the plugin I used: jekyll-archives. Comments # Staticman brings user generated content to the static site generators. You can add their bot to your repo, and then hitting specific endpoint will generate a pull request (or push directly) with the data user entered. My comments are going through pull requests, which enables me to moderate them. Search # Also accessible from the main menu. Search is done by JavaScript and it goes through JSON object with post titles. It uses fuzzy search algorithm, so it will find every title that has all of the letters you entered. Longer word matched will give higher priority to a result. (Try typing SASS for example.) Reading time # At the top of each post, you'll see estimated reading time. It is a very simple plugin I found somewhere on the internet and modified a bit. Here it is: # Outputs the reading time # Read this in "about 4 minutes" # Put into your _plugins dir in your Jekyll site # Usage: Read this in about "page.content | reading_time" module ReadingTimeFilter def reading_time( input ) words_per_minute = 180 words = input.split.size; minutes = ( words / words_per_minute ).floor minutes_label = minutes === 1 ? " minute" : " minutes" minutes > 0 ? "about #{minutes} #{minutes_label}" : "less than 1 minute" end end Liqui

## Why I moved my blog from WordPress.com to Pelican and GitHub Pages

DevFeed: [Why I moved my blog from WordPress.com to Pelican and GitHub Pages](<https://devfeed.tech/articles/hello-pelican-27106.md>)

Original publisher: [Read original article](<https://andrea.corbellini.name/2015/08/02/hello-pelican/>)

Author: andreacorbellini

Published: 2015-08-02T18:55:00Z

Content type: opinion

Language: en

Sources: [Andrea Corbellini](<https://devfeed.tech/sources/andrea-corbellini.md>)

Topics: [migration](<https://devfeed.tech/topics/migration.md>), [WordPress](<https://devfeed.tech/topics/wordpress.md>), [Content Management System](<https://devfeed.tech/topics/cms.md>), [Vim](<https://devfeed.tech/topics/vim.md>), [GitHub](<https://devfeed.tech/topics/github.md>)

Tags: [blog](<https://devfeed.tech/tags/blog.md>), [blogging](<https://devfeed.tech/tags/blogging.md>), [github-pages](<https://devfeed.tech/tags/github-pages.md>), [migration](<https://devfeed.tech/tags/migration.md>), [pelican](<https://devfeed.tech/tags/pelican.md>), [static-site](<https://devfeed.tech/tags/static-site.md>), [static-site-generator](<https://devfeed.tech/tags/static-site-generator.md>), [version-control](<https://devfeed.tech/tags/version-control.md>), [vim](<https://devfeed.tech/tags/vim.md>), [wordpress](<https://devfeed.tech/tags/wordpress.md>)

### AI overview

The author explains moving a blog from WordPress.com to Pelican and GitHub Pages after encountering customization, editor, and workflow limitations. They describe using Vim, MathJax, theme customization, version control, and scripts with the static-site setup, while noting that feed URLs changed and that Pelican lacked a preferred theme.

### Source excerpt

Today I switched from WordPress.com to Pelican and GitHub Pages. First off, let me say: almost all URLs that were previously working should still work. Only the feed URLs are broken, and this is not something I can fix. If you were following my blog via a feed reader, you should update to the new feed. Sorry for the inconvenience. Having said that ...

## How I created my blog

DevFeed: [How I created my blog](<https://devfeed.tech/articles/how-i-created-my-blog-28637.md>)

Original publisher: [Read original article](<https://jeroenmols.com/blog/2015/04/25/blog-creation/>)

Author: info@jeroenmols.com (Jeroen Mols)

Published: 2015-04-25T00:00:00Z

Content type: tutorial

Language: en

Sources: [Jeroen Mols](<https://devfeed.tech/sources/jeroen-mols.md>)

Topics: [Jekyll](<https://devfeed.tech/topics/jekyll.md>), [GitHub Pages](<https://devfeed.tech/topics/github-pages.md>), [Website](<https://devfeed.tech/topics/website.md>), [Markdown](<https://devfeed.tech/topics/markdown.md>), [Git](<https://devfeed.tech/topics/git.md>)

Tags: [blogs](<https://devfeed.tech/tags/blogs.md>), [git](<https://devfeed.tech/tags/git.md>), [github-pages](<https://devfeed.tech/tags/github-pages.md>), [howto](<https://devfeed.tech/tags/howto.md>), [jekyll](<https://devfeed.tech/tags/jekyll.md>), [markdown](<https://devfeed.tech/tags/markdown.md>), [static-site](<https://devfeed.tech/tags/static-site.md>), [themes](<https://devfeed.tech/tags/themes.md>), [website](<https://devfeed.tech/tags/website.md>)

### AI overview

The article explains how the author created a portfolio and blog with GitHub Pages and Jekyll. It covers the requirements for the site, the distinction between static and dynamic websites, Markdown-based posts, local testing, theme customization, and merging two Jekyll themes.

### Source excerpt

For quite some months, I've been planning to create a website and start blogging about the things I'm passionate about. Last week, I finally decided to setup a portfolio and blog using GitHub pages and Jekyll.