🚀 TL;DR
I’m kicking off a new NodeJS starter template and crowdsourcing the best tips, packages, and “why didn’t anyone tell me?!” stories from the community. Drop your go-to NPM tools, must-have configs, or even horror stories in the comments. Bonus points for anything that saves headaches or sparks “aha” moments!
🏗️ Why I’m Building This
It’s hack time again and, okay, this project isn’t exactly going to win any beauty contests – but it’s overdue. I’ve been wanting a solid, ESM NodeJS repo template with all my favorite dev goodies baked in and ready to go: Husky, Prettier, ESLint, Vitest, and more.
✨🧑💻 If we haven’t met: I don’t do anything halfway. I’m either all-in, or it sits in my “when I have time (that never happens)” pile. So I decided to go all out and create a no-nonsense, highly functional, plug-and-play template – one I wish I’d had at the start of half my projects.
🧭 The Plan (So Far)
Here’s what I’m thinking for v1:
-
Project structure:
/src
,/tests
,/docs
-
Husky hooks:
- Enforce Jira keys in branch names
- Warn about big commits
- Make sure all tests pass (debating how to handle skip…)
- 85%+ unit test coverage
-
Prettier: Auto-format staged files
- JS, JSON, Markdown—what else should I include?
-
ESLint (strict):
- Airbnb + maybe Unicorn
- Auto-fix
- No warnings allowed
- My custom rules:
- Ban try/catch in test files
- Block inline ESLint disables
-
CSpell:
- Preloaded dictionaries + project-specific terms
-
Conventional commits / Semver / CHANGELOGS:
- I’m a noob here – I know commitlint, but would love advice!
-
Vitest:
- Unit + integration test scaffolding
-
Docs:
- Simple, clean, GitHub-flavored Markdown
- My goal is plug-and-play scaffold with an ELI5 “why” baked in
-
GitHub Copilot:
- Starter instructions included
🤖 If the last one surprises you, see my last few posts!
🦆 For the Backend Ducks (and Frontend Folks Too!)
I’m a backend duck-typist at heart, so the first release will be vanilla JS (think REST/GraphQL/MVC logic), not frontend. But if you’ve got killer ideas for TypeScript or React setups, hit me up anyway! I’ll collect your suggestions for a “future features” list.
🧙🏻 Share your wisdom below!
Stories, links, random “don’t do this” advice – all welcome.
Let’s make NodeJS onboarding boringly reliable… and maybe a little less boring. 🫶