The goal of this project is to bring together what I believe are most pragmatic and performant frontend frameworks and tools into a cohesive template for making web development wonderful.
yarn
to grab dependenciesyarn dev
to fire up dev serveryarn build
to build static site
This project uses 11ty for templating and static generation. All templating takes place inside the src
directory.
Refer to the 11ty docs for more information on how to customize 11ty to your liking, it is an incredibly powerful tool!
All static assets, like images and fonts, should be placed in public
, as it is copied as-is into the dist
directory.
This project uses a combination of tools to make developing dynamic data-driven scripting simple and pleasant.
For bundling, this project uses Rollup. This is a fantastic bundler that makes complex bundling simple and highly configurable. See rollup.config.js
to see what is going on under the hood.
For complex functionality that doesn't require SEO, such as pulling data from an API client side or sending post requests, this project utilitizes Svelte. Svelte is an exceptional JS framework that makes reactivity simple and predictable.
Note: See src/index.njk
and src/_bundle/scripts/svelte.js
to see how Svelte can be initialized on pages.
This project uses TailwindCSS for styling. This allows us to generate a giant list of utility classes that can be shared across differing templating languages and frameworks. The configuration file is located at tailwind.config.js
, and all imports are located in src/_bundle/styles
.
I am using the default configuration for ease-of-use, and so that people can use great tools like Tailwind UI to quickly bootstrap a site!
Thank you for taking the time to check out this repo and read through the docs. I hope this tool is useful and pleasant to work with. Have a great day!