Branch

What Is This?

Eleventy Repo Viewer is a plugin for Eleventy that creates plain, static HTML pages for displaying a git repository. You can read code, browse commits, and clone the repository purely from plain old files on a web server. It's sort of like a read-only version of GitHub, and requires no logic on the backend whatsoever.

Installation and Setup

Prerequisites

  1. git, which you probably already have
  2. An 11ty website set up. You'll need to make a couple of additions to your eleventy config file.

Installation & Setup

  1. npm install this plugin

    This is not (yet) on npm. You can install it straight from this git repository, though. npm install --save git+http://repos.tuckerm.us/eleventy-repo-viewer.git#deploy/0.0.1-alpha.1

  2. Add this plugin to your eleventy config, giving it a repo configuration object that describes the name and location of the repositories that you want to display.

+ import repoViewer from 'eleventy-repo-viewer'

  export default (eleventyConfig) => {
+   eleventyConfig.addPlugin(repoViewer, {
+     repos: {
+       "My Cool Project": {
+         _type: "git",
+         location: "/home/me/code/cool-project",
+         defaultBranch: 'main',
+         branchesToPull: ['main', 'develop'],
+       },
+     },
+     path: "/repos",
+     baseUrl: "https://example.com",
+   })
  }

Recent patches in main

RSS
Remove darcs functionality :(

Sun Oct 12 02:23:44 2025 -0600

Tucker McKnight <tucker@pangolin.lan>

I'd like to come back to darcs later, when I've come up with a way of making some kind of plugin system for making this work with multiple VCSes. In...

Use for..of loops instead of promises

Sun Oct 12 01:51:26 2025 -0600

Tucker McKnight <tucker@pangolin.lan>

These wait for each other in a sequence, unliked a Promise.all(array.map), which executes everything all at once. Artifact steps whould be able to...

add raw file template that I forgot earlier

Sun Oct 12 01:51:02 2025 -0600

Tucker McKnight <tucker@pangolin.lan>