Skip to content

To eleventy and beyond! The all-in-one tool for templates where you want them, component frameworks where you need them πŸš€

License

Notifications You must be signed in to change notification settings

ariskotsomitopoulos/koupetinio

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Slinkity - To eleventy and beyond

License: MIT Twitter: slinkitydotdev

Slinkity

🚧 This project is heavily under construction! 🚧 As excited as you may be, we don't recommend this early alpha for production use. Still, give it a try if you want to have some fun and don't mind logging bugs along the way :)

Slinkity is the simplest way to handle styles and component frameworks on your 11ty site. Once installed, this:

  • πŸš€ Unlocks component frameworks like React for writing page templates and layout templates. Turn an existing .html or .liquid file into a .jsx file, and you're off to the componentized races.
  • πŸ”– Includes powerful shortcodes to insert components into existing pages. Add a line like this to your markdown, HTML, Nunjucks, etc, and watch the magic happen: {% react 'path/to/component' %}
  • πŸ’§ Hydrates these components when and how you want. Use component frameworks as a static template to start, and opt-in to shipping JS as needed with our partial hydration helpers.
  • πŸ’… Bundles all your resources with the power of Vite. Use your favorite CSS preprocessor, JS minifier, and more with minimal config.

Technologies used

Slinkity stands on the shoulders of giants. You can think of Slinkity as the "glue" binding 2 tools together:

  1. Eleventy: a static site generator with a rich feature set for fetching data, composing layouts, and inserting content with "shortcodes."
  2. Vite: a bundler that takes the boilerplate out of your set up. It'll compile JS component frameworks, handle CSS preprocessors with little-to-no config (say, SCSS and PostCSS), and show dev changes on-the-fly using hot module replacement (HMR).

Getting started

Use our handy CLI command to spin up a Slinkity site: npm init slinkity. This demos our core functionality while staying as lean as possible, making it the perfect launchpad for new projects πŸš€

To learn more, and explore adding Slinkity to existing 11ty projects...

Feature set

This project is still in early alpha, so we have many features soon to come! This demo covers a majority of features we support today. For reference, here's our complete roadmap of current and upcoming features:

Feature Status
CLI to run 11ty and Vite simultaneously βœ…
Plugin ecosystem for your favorite component framework (React, Vue, Svelte, etc) βœ…
Component pages βœ…
Component shortcodes βœ…
SCSS and SASS βœ…
PostCSS config (ex. Tailwind) βœ…
CSS imports via ESM (including CSS modules) βœ…
Shared state between any component shortcode ⏳
  • βœ… = Ready to use
  • ⏳ = In progress

Have an idea? Notice a bug?

We'd love to hear your feedback! Feel free to log an issue on our GitHub issues page. If your question is more personal, our Twitter DMs are always open as well.

About

To eleventy and beyond! The all-in-one tool for templates where you want them, component frameworks where you need them πŸš€

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 29.5%
  • TypeScript 25.4%
  • SCSS 16.4%
  • Nunjucks 13.4%
  • Svelte 7.0%
  • Vue 6.3%
  • CSS 2.0%