{"id":13760606,"url":"https://github.com/joe-bell/marmalade","last_synced_at":"2025-05-10T11:30:25.744Z","repository":{"id":55961655,"uuid":"242535174","full_name":"joe-bell/marmalade","owner":"joe-bell","description":"Another opinionated JAMstack static site starter (powered by Next.js) 🍊","archived":true,"fork":false,"pushed_at":"2022-09-17T05:27:04.000Z","size":653,"stargazers_count":11,"open_issues_count":1,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-11-16T17:41:15.122Z","etag":null,"topics":["jamstack","nextjs","nextjs-starter","preact","react","theme-ui","typescript"],"latest_commit_sha":null,"homepage":"https://marmalade.joebell.co.uk","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/joe-bell.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-02-23T14:49:43.000Z","updated_at":"2023-05-12T16:57:51.000Z","dependencies_parsed_at":"2022-08-15T10:20:41.078Z","dependency_job_id":null,"html_url":"https://github.com/joe-bell/marmalade","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joe-bell%2Fmarmalade","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joe-bell%2Fmarmalade/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joe-bell%2Fmarmalade/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joe-bell%2Fmarmalade/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/joe-bell","download_url":"https://codeload.github.com/joe-bell/marmalade/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253409910,"owners_count":21903987,"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":["jamstack","nextjs","nextjs-starter","preact","react","theme-ui","typescript"],"created_at":"2024-08-03T13:01:13.984Z","updated_at":"2025-05-10T11:30:25.421Z","avatar_url":"https://github.com/joe-bell.png","language":"TypeScript","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"readme":"\u003e ⚠️ **Update 21/06/2020:** I've left this project on the backburner for a bit whilst revamping [joebell.co.uk](https://joebell.co.uk/).    \n\u003e I've changed strategy on a few things, but once I find the time I'll add them back.   \n\u003e **This project is still a [work in progress](#to-do)**\n\n# marmalade 🍊\n\nAnother opinionated **JAM**stack starter with static optimization.\n\nPowered by [**Next.js**](https://nextjs.org) and friends:\n\n## Features\n\n- 🎨 [**Theme UI**](https://theme-ui.com/) (with a default theme)\n- 📝 [**MDX**](https://mdxjs.com/) (via [next-mdx-enhanced](https://github.com/hashicorp/next-mdx-enhanced))\n- ⚡️ [**Preact**](https://preactjs.com/)\n- 🔍 [**TypeScript**](https://typescriptlang.org/)\n- 🗂 Multiple \"posts\" directories (with index pages)\n- 🏷 Tagging (with index pages)\n- 📡 RSS feed generation\n- ⚙️ Manifest generation\n- 🍒 Extended front matter\n- 🚢 Deploy to [Netlify](https://netlify.com/) or your platform of choice\n- ⌨️ [ESLint](https://eslint.org/), [Prettier](https://prettier.io/) and [Commitizen](https://github.com/commitizen/cz-cli)\n\n### To do\n\n- ℹ️ Favicon generation (including updating the repo's meta info)\n- 🏗 Customisable layouts\n- 🧱 Customisable components (including a nicer dark mode button and less B\u0026Q-esque theme)\n- 👷‍♀ GitHub Actions\n- 🧪 Tests (I know I'm sorry)\n- 🏆 Performance audits and optimisation\n- ♿️ Accessibility testing and optimisation\n\n### Feature candidates\n\n- 💬 Webmentions\n- 💧 Mimic 11ty cascading data? (e.g. `.json` file in folder to configure layouts for all pages)\n- 🚇 Offline support\n- 📝 Netlify CMS\n\n## Getting started\n\nHead over to the [\"Getting started\" guide](https://marmalade.joebell.co.uk/blog/getting-started) on the demo site.\n\n## Q\u0026A\n\n\u003cdetails\u003e\n \u003csummary\u003e\u003cb\u003eWhy does this project exist?\u003c/b\u003e\u003c/summary\u003e\n  \u003cp\u003eIt's how I like to build things right now. You might like it too or you might not; and that's totally fine.\u003c/p\u003e\n\n  \u003cp\u003eThis project was born out of a polarization on \"how things should be built\" in the current Front End climate. Specifically, a comment stating \"stop wasting time perfecting your personal site's tech stack\". Tweaking my tech stack pushes me to leave my comfort zone and broaden my knowledge; I'd actively encourage others to try new tools where possible.\u003c/p\u003e\n\n  \u003cp\u003eBuild what you love and don't feel disheartened to try something new or go down a different route.\u003c/p\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n \u003csummary\u003e\u003cb\u003eWhy not just use \u003ca href=\"https://www.gatsbyjs.org/\"\u003eGatsby\u003c/a\u003e?\u003c/b\u003e\u003c/summary\u003e\n  I love \u003ca href=\"https://www.gatsbyjs.org/\"\u003eGatsby\u003c/a\u003e, I use it for my \u003ca href=\"https://github.com/joe-bell/joebell.co.uk\"\u003epersonal site\u003c/a\u003e. I like the fact I can install a plugin and let it magically solve my problems, but I equally think it's important to understand what goes on \u003cem\u003ebehind\u003c/em\u003e the scenes. I heard about Next.js' static export feature just after finishing my personal site and felt like it was worth an explore.\n\u003c/details\u003e\n\n\u003cdetails\u003e\n \u003csummary\u003e\u003cb\u003eWhy do you use CSS-in-JS (specifically \u003ca href=\"https://theme-ui.com/\"\u003eTheme-UI\u003c/a\u003e)?\u003c/b\u003e\u003c/summary\u003e\n  It feels right. I was a SASS advocate, but now it just feels cumbersome and outdated. With CSS-in-JS I can make the most of a theme schema to reinforce design tokens.\n\u003c/details\u003e\n\n\u003cdetails\u003e\n \u003csummary\u003e\u003cb\u003eWhy not use \u003ca href=\"https://chakra-ui.com/\"\u003eChakra-UI\u003c/a\u003e?\u003c/b\u003e\u003c/summary\u003e\n    \u003ca href=\"https://chakra-ui.com/\"\u003eChakra-UI\u003c/a\u003e is bound to the Styled System Theme Specification and Emotion, so unfortunately not an option for this project 💔\n\u003c/details\u003e\n\n## Acknowledgements\n\n- [**@mxstbr**](https://github.com/mxstbr) - _[\"mxstbr.com\"](https://github.com/mxstbr/mxstbr.com)'s architecture was a fundamental resource for the start of this template. I owe Max massively for this._\n- [**@robertcoopercode**](https://github.com/robertcoopercode) - [_\"Using ESLint and Prettier in a TypeScript Project\"_](https://www.robertcooper.me/using-eslint-and-prettier-in-a-typescript-project)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoe-bell%2Fmarmalade","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjoe-bell%2Fmarmalade","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoe-bell%2Fmarmalade/lists"}