{"id":13510152,"url":"https://github.com/lwojcik/eleventy-template-bliss","last_synced_at":"2025-10-10T16:31:11.286Z","repository":{"id":65987182,"uuid":"603208837","full_name":"lwojcik/eleventy-template-bliss","owner":"lwojcik","description":"Single-column blog template for Eleventy focused on simplicity without sacrificing functionality","archived":false,"fork":false,"pushed_at":"2024-10-14T08:22:39.000Z","size":978,"stargazers_count":91,"open_issues_count":3,"forks_count":21,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-20T14:24:24.202Z","etag":null,"topics":["11ty","blog","blog-template","blog-theme","eleventy","eleventy-blog-template","eleventy-starter","eleventy-template","eleventy-theme","eleventy-themes","theme"],"latest_commit_sha":null,"homepage":"https://eleventy-bliss.lkmt.us/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lwojcik.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"lwojcik","ko_fi":"lukem","custom":"https://paypal.me/lksv","liberapay":"lukem","patreon":"lukem_tt"}},"created_at":"2023-02-17T21:13:48.000Z","updated_at":"2025-01-08T15:10:29.000Z","dependencies_parsed_at":"2024-02-13T18:25:21.315Z","dependency_job_id":"182c8ad8-375f-40d2-9521-880b362e025c","html_url":"https://github.com/lwojcik/eleventy-template-bliss","commit_stats":{"total_commits":87,"total_committers":5,"mean_commits":17.4,"dds":0.09195402298850575,"last_synced_commit":"ecf7c4028dc25979ca4aee5b8bcda06598e0a1cd"},"previous_names":[],"tags_count":23,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lwojcik%2Feleventy-template-bliss","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lwojcik%2Feleventy-template-bliss/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lwojcik%2Feleventy-template-bliss/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lwojcik%2Feleventy-template-bliss/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lwojcik","download_url":"https://codeload.github.com/lwojcik/eleventy-template-bliss/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":235964819,"owners_count":19073478,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["11ty","blog","blog-template","blog-theme","eleventy","eleventy-blog-template","eleventy-starter","eleventy-template","eleventy-theme","eleventy-themes","theme"],"created_at":"2024-08-01T02:01:26.284Z","updated_at":"2025-10-10T16:31:05.872Z","avatar_url":"https://github.com/lwojcik.png","language":"JavaScript","funding_links":["https://github.com/sponsors/lwojcik","https://ko-fi.com/lukem","https://paypal.me/lksv","https://liberapay.com/lukem","https://patreon.com/lukem_tt"],"categories":["JavaScript","blog"],"sub_categories":[],"readme":"# Bliss - Blog Theme For Eleventy\n\n\u003e As of January 2025, this project is no longer maintained or updated.\n\n**Bliss** is a single-column blog template for [Eleventy v2.x](https://11ty.dev) with strong focus on simplicity without sacrificing functionality.\n\nIt is a modified and improved version of the theme running [my personal blog](https://blog.lukaszwojcik.net/).\n\n## Features\n\n- **light / dark mode switcher** + honoring browser color scheme preference\n- **sharing buttons for popular social media** (including Mastodon!) + copying post URL to clipboard\n- **Mastodon integration:** generating `.well-known/webfinger` file + automatic generation of `\u003clink rel=\"me\"\u003e` tags for site ownership verification\n- **translation ready** (support for custom language tags + separate file with static phrases)\n- **manifest file** for PWA\n- **automatic OpenGraph image generation**\n- **code syntax highlighting** with PrismJS using [Eleventy syntax highlighting plugin](https://www.11ty.dev/docs/plugins/syntaxhighlight/)\n- **HTML, JS, JSON, CSS** optimizations\n- **RSS, JSON, Twtxt.txt** feeds + JSON-LD data\n- **accessibility** features\n- **HSL color palette** and CSS variables for straightforward personalization\n- modular CSS augmented with SASS\n- custom disclaimers alongside post content\n- and more\n\n## Setup\n\n```bash\ngit clone https://github.com/lwojcik/eleventy-template-bliss\ncd eleventy-template-bliss\nnpm install\nnpm run dev # to launch the project for modifications\nnpm run build # to build production version\n```\n\n## Instant deploy\n\nNetlify:\n\n[![Deploy to Netlify](https://www.netlify.com/img/deploy/button.svg)](https://app.netlify.com/start/deploy?repository=https://github.com/lwojcik/eleventy-template-bliss)\n\nVercel:\n\n[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https://github.com/lwojcik/eleventy-template-bliss)\n\nRender:\n\n[![Deploy to Render](https://render.com/images/deploy-to-render-button.svg)](https://render.com/deploy?repo=https://github.com/lwojcik/eleventy-template-bliss)\n\n## Deploy to GitHub Pages\n\nFollow the steps below:\n\n1. Fork the repository to your GitHub account.\n2. In `package.json`, find the following line:\n\n```json\n{\n  \"scripts\": {\n    // ...\n    \"build-gh-pages\": \"npm run build:sass; npm run build:eleventy -- --pathprefix=/eleventy-template-bliss/\",\n    //...\n  }\n}\n```\n\nReplace `eleventy-template-bliss` with the name of your repository.\n\n3. In your repository, make sure GitHub Pages are set up in the _Pages_ tab of your repository settings:\n   - **Source** - should be set up to _GitHub Actions_\n4. In `Actions \u003e General` section of your repository's settings, under the _Workflow permissions_ sub-section, select `Read and write permissions`\n5. Go to `Actions` tabs of your repository. From the list of actions select `Build and deploy to GitHub Pages`\n6. Click `Run workflow`.\n7. If the workflow runs successfully, your page will be available at `https://yourusername.github.io/your-repo-name`.\n\nBy default, the GitHub action workflow for publishing on GitHub Pages is set to be run manually. If you want it to run on each push to `main` branch, open `.github/workflows/build-to-gh-pages.yml` and edit `on` section as follows:\n\n```yaml\non:\n  workflow_dispatch: # This enables the action to be launched manually from GitHub Actions tab\n  push:\n    branches: ['main'] # This makes the action run on each push to main branch\n```\n\n## Configuration\n\nSee [`siteConfig.js`](./content/_data/siteConfig.js). Inline documentation is available in the file.\n\n## Translation file\n\nSee [`phrases.js`](./content/_data/phrases.js) for the list of translatable static phrases.\n\n## Personalization checklist\n\nNon-exhaustive list of steps to make the template **your own**. Some of them are optional, others are highly recommended:\n\n- [ ] Fill in all relevant information in [`siteConfig.js`](./content/_data/siteConfig.js) - site title, description, custom logo, author information, etc.\n- [ ] Modify production URL - either by hardcoding it in [`siteConfig.js`](./content/_data/siteConfig.js) or via `process.env.URL` environment variable\n- [ ] Replace site logo or remove the existing one to use site title as text in your header\n- [ ] Modify color palette to your liking - edit relevant variables in [`_variables.scss`](./src/styles/_variables.scss)\n- [ ] If you changed the color palette - modify theme color and background color for PWA manifest - see [`siteConfig.js`](./content/_data/siteConfig.js)\n- [ ] If you changed the color palette - modify base color for RSS XSL stylesheet - see [`siteConfig.js`](./content/_data/siteConfig.js)\n- [ ] Enable automatic OpenGraph image generation - note that they only work for pages and posts\n- [ ] Add your own posts - use the existing placeholder posts as a reference\n- [ ] If you use post disclaimers at the beginning of your posts - consider using the built-in disclaimer feature - see [`06-10-sample-post-33-disclaimer.md`](./content/posts/2023/06-10-sample-post-33-disclaimer.md) or [`05-31-sample-post-32-linked-disclaimer.md`](./content/posts/2023/05-31-sample-post-32-linked-disclaimer.md) for reference\n- [ ] Add your own pages - use one of the existing placeholder pages as a reference\n- [ ] Add / remove meta pages in the footer - see [`siteConfig.js`](./content/_data/siteConfig.js)\n- [ ] Replace favicon files (`favicon.svg`, `favicon.ico`, `apple-touch-icon.png`, `icon-192.png`, `icon-512.png`) with your own\n- [ ] Update `manifest.webmanifest` file with data relevant to your site\n- [ ] Replace OpenGraph images with ones relevant to your site\n- [ ] Decide if you want to use automated OpenGraph image generation + consider modifying their appearance to suit your taste (see `siteConfig.js` for more info)\n- [ ] Copy your existing static assets to `assets` folder. Note that the top of `assets` folder corresponds to the _root directory_ of your site (`_site`)\n- [ ] Modify anything else you don't like about the theme to match your preferences\n- [ ] Enjoy! 😊\n\n## Optional customizations\n\n### Make titles optional + use file slugs for permalinks\n\nBy default, the template assumes each post and each page to have a title and generates a permalink out using a `slugify` function. In other words, it converts `A title like this!` into `a-title-like-this`.\n\nIf you want your posts to have no title, open `content/posts/posts.json` file and modify the following line:\n\n```json\n  \"permalink\": \"{% if customPermalink %}{{ customPermalink }}{% else %}/{{ title | slugify }}/{% endif %}\",\n```\n\ninto the following:\n\n```json\n  \"permalink\": \"{% if customPermalink %}{{ customPermalink }}{% else %}/{{ page.fileSlug }}/{% endif %}\",\n```\n\nYou can do the same for pages by modifying `content/pages/pages.json` file.\n\n### Automatic favicon generation\n\nUntil version 2.4.0 Bliss was bundled with a [favicon generation plugin](https://www.npmjs.com/package/eleventy-plugin-gen-favicons). Due to unresolved bugs this plugin is no longer included with the template.\n\nIf you want to reimplement it yourself, change history from [this pull request](https://github.com/lwojcik/eleventy-template-bliss/pull/99) may be helpful.\n\n## License\n\nLicensed under the [MIT license](./LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flwojcik%2Feleventy-template-bliss","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flwojcik%2Feleventy-template-bliss","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flwojcik%2Feleventy-template-bliss/lists"}