DEV Community

Ben Gubler
Ben Gubler

Posted on

Looking for a new lead maintainer for the Eta template engine

Hey everyone, this is @nebrelbug -- the lead maintainer of the Eta template engine and its companion project, Squirrelly.

On October 28, 2020, I will leave on a 2-year service opportunity. During that time, I will be unable to work on any of my open-source projects.

Since my date of departure is drawing closer, I've decided it is time to begin looking for a new lead maintainer for Eta.

Maintainer Requirements

  • Proficiency in TypeScript
  • Open-source experience. Preferably the maintainer/developer of an open-source JS/TS project with 50+ stars
  • Willing to test changes & not break anything important 😉
  • Willing to follow the Project Goals (see below)

Maintainer Jobs

  • Fix bugs
  • Answer questions

A maintainer could also update documentation, write tutorials, write plugins, write integrations (ex. for Fastify, Eleventy, Koa) etc. In case this sounds overwhelming, remember that Eta is only 2.5KB minzipped 😂

Ideally a maintainer would be willing to maintain Squirrelly as well (they share much of the same codebase) but that's definitely not a requirement.

Project Goals

  • Follow SemVer versioning guidelines
    • This means Eta's public API should remain backwards-compatible (at least within v1.x.x)
  • Remain lightweight
    • Browser build should never exceed 3KB minzipped
  • Remain stable
  • Keep parsing engine
    • Eta's parser has been optimized quite a bit for performance and reliability, and any significant changes run too high a risk of impacting either

Fallback Plan

There's always the possibility I will be unable to find a new lead maintainer before my departure. This is one of the reasons I've accelerated development so much. It's also the reason Eta and Squirrelly are so extensively tested.

I feel confident that Eta is stable enough it could continue to function, if needs be, without maintenance for several years. It has a stable API, is well tested, and has decent documentation. Many features can be added as 3rd-party plugins rather than core parts of the library. Moreover, Eta's small size reduces the likelihood that important bugs exist inside the code.

That scenario, though, would be far from ideal, so I've made several backup plans:

  • Give repository + npm access to a friend I trust to act in my behalf. This friend would not modify Eta's code, but could give access if, while I was gone, someone asked to become a maintainer
  • Add the project to


I'm going to be away for 2 years and unable to maintain Eta.

In case I am unable to find a maintainer before I leave, I will give repository access to a trusted friend and add the repository to (allowing anyone to apply for maintainership).

If you want to become one of Eta's maintainers and have experience with open-source and TypeScript, message me on Gitter, email me at nebrelbug [at] gmail [dot] com, or contact me some other way!

Top comments (8)

paulgoetze profile image
Paul Götze

Hey @nebrelbug , I'm wondering if you already considered posting Eta on Maybe it could help find more co-maintainers. There is quite some people interested in JavaScript & TypeScript over there, who will also see the project in their next newsletter.

nebrelbug profile image
Ben Gubler

For some reason it looks like Adoptoposs is throwing error 500 when I go to submit a project...

paulgoetze profile image
Paul Götze

Ah, thanks for trying. I saw the error coming in, will ping you again if it's fixed.

paulgoetze profile image
Paul Götze

It's fixed, you should be able to submit a project now 🙏
Thanks again for letting us know.

Thread Thread
nebrelbug profile image
Ben Gubler

Just submitted several of mine :)

nebrelbug profile image
Ben Gubler

That's a great idea! I'll add it right now.

Thanks for sharing the project!

shadowtime2000 profile image

Lead maintainer sounds a little hard, could I just sign up to be a maintainer?

nebrelbug profile image
Ben Gubler

That would be fantastic!

If you submit a PR in the Eta repo, I'll give you contributor permissions.

Other contribution ideas:

  • Write a plugin for Eta
  • Write a tutorial about Eta
  • Create a tool allowing people to use Eta more easily (ex. a Webpack loader, Gulp plugin, etc.)
  • Work on the Eta documentation

I look forward to working with you!