New Eleventy starter, initial thoughts on Astro, website fun, and 11ty meetup

Published

New Eleventy Blog Starter #

In my last newsletter, I mentioned that I'm giving a mini workshop on building and deploying an Eleventy blog. I forked the eleventy-base-blog, which was my original starting point, and made some opinionated changes:

  • Uses a /src/ directory
  • Moves most filters to a separate file to clean up the config file
  • Adds more filters commonly used by me
  • Inlines and minifies CSS by default
  • Uses a more accessible color scheme for code blocks, and uses CSS variables so it's easier to switch it up.
  • Adds RSS link to navigation
  • Uses a responsive font size and flow system that is more readable, partially based on Improve the readability of the content on your website by Andy Bell
  • Adds a footer at the bottom of the viewport
  • Centers post article column, with wider image and code blocks, similar to the Hylia starter

Like the sound of that? You can preview a build and checkout out the GitHub repo. The event is on Tuesday if you still want to join.

Initial Thoughts on Astro #

I have a legacy webpack project that is mostly HTML pages with vanilla JS and one page that is a full React app. I've been wanting to add HTML templating for all the regular HTML pages. Eleventy would be great, but I still have that one page that is mostly a React app.

Slinkity is a promising-looking Eleventy plugin, but still very early stage. So I started trying out Astro. It's pretty slick. Here are my pros and cons so far:

  • Pro: Easy to create a new project using the CLI
  • Pro: Can use most JS frameworks (React, Preact, Vue, Angular, Svelte) and regular HTML templates with the .astro file type.
  • Pro: Porting over my SCSS just worked
  • Con: Vanilla JS is still tricky. There is no bundling, transpiling, etc. available yet. So you have to inline it all in your HTML (if you're not using a framework component). They are working on this.
  • Con: It's built on Snowpack but they hijack and use their own server, so all the Snowpack dev server config stuff isn't available yet. I need to proxy an API web server (a Rails backend), but this isn't possible yet.

I'm still excited about it. I think it's a big step in the right direction. I'm not sure why Webpack chose JavaScript to be the only entry point for a bundler as the web uses HTML. So it was always tricky to set up configs to work with a mixture of HTML and frameworks.

Sometimes I wish they went with a more established templating language link Nunjucks, but then Astro files can use straight up JavaScript which makes some things easier. However, you can't dump in content inside <script> tags. This point might become moot if they get a Script component working which will also transpile and bundle vanilla JS.

What cool new tools have you tried out lately? Drop me a line on Twitter!

Building websites is fun #

I don't have any new blog posts for this episode, but if you want a fun tongue-in-cheek read for this Friday, check out How to build a website in 2021.

11ty Meetup Episode 2! #

Our second Eleventy meetup is next week! We're learning about 11ty image and the creator economy. Check out all the deets on 11tymeetup.dev.

Cheerio and Happy Friday!

← Newsletter Home