Will Your Jekyll Site Still Work If You Migrate Away from GitHub Pages? Jekyll and GitHub Pages are tightly connected, but they’re not inseparable. Many developers eventually want to move their site to another platform like Netlify, Cloudflare Pages, or even a self-hosted server. If you plan for this early, your site will be easier to migrate later. But here’s the real question: Does your choice between forking and cloning affect how portable your Jekyll site is? In this article, we explore the consequences of both decisions from a long-term portability perspective. What Does Portability Mean for Jekyll Projects? Portability refers to your ability to: Move your site to a different hosting platform without major code changes Run the project locally and in CI/CD environments easily Customize build settings, plugins, and directory structure as needed Detach from GitHub Pages-specific constraints Forked themes are often built to work *only* under ...
Posts
Why Use a Portfolio Grid in Jekyll? A portfolio grid helps showcase your work in a clean and visual format. Whether you're a designer, developer, writer, or creative, it’s a simple way to turn static content into a dynamic display—all hosted for free using Jekyll and GitHub Pages. What Will You Build? A responsive grid that displays portfolio items using only: Markdown files (for detailed pages) YAML data (for the grid) A simple HTML layout Step-by-Step: Creating a Portfolio Grid with Jekyll Step 1: Add a Collection for Portfolio _config.yml collections: portfolio: output: true permalink: /portfolio/:name/ Step 2: Create Markdown Files for Each Project Create this folder: /_portfolio/ Then add files like: /_portfolio/landing-page.md --- title: "Landing Page Design" image: "/assets/portfolio/landing.jpg" description: "Modern landing page built with HTML and CSS" date: 2024-03-10 --- Each file beco...
Why you need structured content after migration After migrating from WordPress, your content might be flat—stored in the _posts folder with date-based filenames. While this works for simple blogs, it breaks down when managing diverse content types like: Case studies Product documentation Tutorial series Client portfolios Using Jekyll collections and data files , you can create custom content types that are modular, organized, and easier to scale. What are collections in Jekyll? A collection is a group of related documents stored in a named folder. Think of collections as WordPress custom post types but simpler and faster. Example: You want a separate section for case studies. Create a collection: _case_studies/ ├── jekyll-migration.md ├── seo-optimization.md Then define it in your _config.yml : collections: case_studies: output: true permalink: /case-studies/:name/ How to build layouts for collections Each collection can use its own layout....
Jekyll is written in Ruby, and while basic site creation doesn't require in-depth Ruby knowledge, understanding the Ruby ecosystem is invaluable when customizing themes like Mediumish. Ruby enables you to create custom plugins, filters, and generators—features that can dramatically extend your blog’s capabilities beyond the out-of-the-box offering. Where Ruby is Used in a Jekyll Site Plugins: Ruby-based scripts that extend Jekyll during build time. Gems: Packaged Ruby libraries that Jekyll uses, including themes like Mediumish. Liquid Filters: Many of Jekyll's filters are written in Ruby and can be extended or overridden. Configuration: Your _config.yml defines which Ruby gems and plugins are loaded. Installing Ruby Locally for Jekyll Customization If you want to develop Jekyll themes or build custom plugins for Mediumish, you'll need Ruby installed on your system. Here’s a simple setup process. Installing Ruby...