Open-source project
bseth99/sandbox avatar
bseth99/sandbox

A Jekyll Scratch Pad That Pushes Past GitHub Pages Limits

This is the source for my GitHub pages.

100 stars116 forksJavaScriptLicense varies

At a glance

What is it?
bseth99/sandbox is a personal Jekyll source repository for a GitHub Pages demo site, built to work around GitHub's disabled plugins by generating locally and pushing output.
Who is it for?
Adopt this repository if you run a personal Jekyll site on GitHub Pages and need custom plugins, especially for tag pages on non-post content. It is a working example of a local-build workflow, not a ready-made theme or framework.
Can I use it commercially?
Not without permission. GitHub finds no licence file in the repository, and without a licence all rights are reserved by default: you may read the code but not reuse it. Check the README, or ask the authors, before using it.
Is it still maintained?
Probably not. The repository last received commits 152 months ago, on April 27, 2014.
What is it written in?
Mainly JavaScript, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on October 22, 2026, and from our analysis. They are not legal advice.

From daily snapshots

Star history

  • bseth99/sandbox100 ★ · +0
Star history
Repository2026-08-182026-10-22
bseth99/sandbox100100

0 Stars in the last 65 days, measured from the daily GitHub snapshot. Compare with other projects

Editorial analysis

A Personal Scratch Pad with a Specific Purpose

bseth99/sandbox is the source for Ben's sandbox site on GitHub Pages. The README calls it a scratch pad for demos and examples that do not fit his main projects. It is also a test bed for Jekyll. The intended audience is narrow: Ben himself, and perhaps other Jekyll users who read his blog. The repository exists to solve a concrete problem: making tags work on pages the way they do on posts. Standard Jekyll on GitHub Pages does not support that out of the box. This repo shows one way around the limitation.

Why the Source Is Not the Site

The README answers a question the author expects visitors to ask: why is the source here? The answer is that GitHub disables custom Jekyll plugins on Pages. To get tags on pages, Ben wrote custom plugins and placed them in _plugins. Because GitHub would not run those plugins during the automatic render, the site cannot be built directly from this repo. Instead, the repository holds the Jekyll source, and Ben generates the site locally, then pushes the generated content to a separate Pages repository. This is a two-repo workflow. The mechanism is visible in the repository layout: the _plugins directory contains the custom code, and the README references a blog post about the experience.

The Custom Plugin Workaround for Tags

The core technical contribution is the custom Jekyll plugins in _plugins. The README does not describe the plugin code in detail, but the intent is clear: extend Jekyll so that tags appear on pages, not just posts. In standard Jekyll, tags are commonly associated with blog posts. Pages, such as static content or project pages, often lack that association. Ben's plugins add that functionality. The trade-off is that this approach requires local generation. You cannot rely on GitHub's build service. You must run Jekyll yourself, which means managing Ruby, Jekyll, and dependencies on your own machine. The repository is a demonstration of that trade-off.

Running the Project: What the Material Shows

The README does not include installation or build commands. It does not list a Gemfile or configuration keys. What is visible is the repository structure: a Jekyll source with _plugins, and a reference to pushing generated content to a Pages repo. To run this, you would need to clone the repo, install Jekyll and its dependencies, run a local build, and then push the _site output to your Pages repository. The README points to a blog post for the full experience. Without that post, the exact commands are unconfirmed. The lack of explicit setup steps is a limitation for anyone who wants to replicate the workflow quickly.

Where This Repository Falls Short

The most obvious limitation is that the repository is a personal scratch pad. It is not a documented project. There are no releases, no license, and no clear maintenance history. The README is honest about this: it is a test bed. If you are an engineer evaluating it for adoption, you should expect to read the plugin code yourself. The documentation is thin. The site's content is likely dated, given the blog post reference from 2012 and the default branch named master. The repository may not work with current Jekyll versions. The plugin API has changed over the years. What worked in 2012 may break today. This is a real failure mode for anyone trying to reuse the code.

Alternatives: Automatic Builds vs. Local Generation

The standard alternative is to use GitHub Pages with the automatic Jekyll build, which works for most sites that do not need custom plugins. That approach runs Jekyll on GitHub's servers and publishes the result directly from the source repository. It is simpler and requires no local environment. The trade-off is that you cannot use custom plugins. If you need tags on pages, you could also use a plugin-free solution, such as generating tag pages with a static site generator that supports them natively, or using client-side JavaScript to filter content. The difference is the build location: GitHub's servers vs. your local machine. This repository chooses local generation to keep plugin freedom.

Maintenance and License Implications

The license is listed as unknown. That is a red flag for reuse. You cannot legally copy or adapt the code without clarifying the license with the author. The maintenance cost is tied to Jekyll's own evolution. Custom plugins written for an older Jekyll version may require updates. The repository has no recent releases and no clear push history, so it is fair to assume it is not actively maintained. For a personal sandbox, that is fine. For a production site, it is a warning. The value of the repository is not in the demos but in the demonstrated workaround pattern. If you need that pattern, you should verify the plugin code and the Jekyll version compatibility first.

Editorial conclusion

Adopt this repository if you run a personal Jekyll site on GitHub Pages and need custom plugins, especially for tag pages on non-post content. It is a working example of a local-build workflow, not a ready-made theme or framework. Do not use it if you want a simple, automatic Pages build or a maintained project. Before adopting, verify the plugin code in _plugins, check the Ruby and Jekyll versions in your environment, and confirm your Pages repo accepts pre-built content. The value is in the workaround pattern, not in the demos themselves.

Frequently asked questions

What is the bseth99/sandbox repository?

It is the source repository for a sandbox site containing various demos and examples that do not fit the author's main projects. The README describes most of it as a scratch pad that might roll into a project, and notes that his blog generally references the site.

Why is the source in this repository instead of the Pages site?

Because he wanted tags to work on pages the way they do on posts, which required custom Jekyll plugins, and GitHub disables plugins on the Pages site. So this repository holds the source and the generated content is pushed to a separate Pages repository.

How is the bseth99 sandbox site built and published?

Locally, then by push. A Rakefile at the repository root drives the build and deploy.sh pushes the generated content to the Pages repository, since the automatic render on Pages cannot run the plugins in _plugins/.

What does the bseth99 sandbox site use Jekyll to test?

Creating a site on GitHub. The README says the author wanted to try out Jekyll to create a site on GitHub, so the repository serves as a test bed for that experience as well as a home for his demos and examples.

Official sources

  1. Official README
  2. Project repository
  3. README
  4. Releases
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/bseth99-sandbox.svg)](https://hysenlabs.com/projects/bseth99-sandbox)

Star history chart for your README

markdown
[![Star history](https://hysenlabs.com/chart/bseth99-sandbox.svg)](https://hysenlabs.com/projects/bseth99-sandbox)