{"id":48029042,"url":"https://github.com/anchildress1/npm-nodejs-template","last_synced_at":"2026-04-04T13:53:43.760Z","repository":{"id":314542128,"uuid":"1016419794","full_name":"anchildress1/npm-nodejs-template","owner":"anchildress1","description":"A plain npm template starter for JS, including 1️⃣ basic scaffold 2️⃣ Lefthook with Jira support 3️⃣ Prettier auto-format staged files 4️⃣ ESLint validations (strict) 5️⃣ CSpell checks","archived":false,"fork":false,"pushed_at":"2025-09-13T03:53:35.000Z","size":81,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-13T05:49:26.346Z","etag":null,"topics":["boilerplate-template","documented-training","es6-modules","javascript","npm","volta"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/anchildress1.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-07-09T01:57:00.000Z","updated_at":"2025-09-13T03:53:38.000Z","dependencies_parsed_at":"2025-09-13T05:49:29.490Z","dependency_job_id":"e392fe23-8b5d-4569-9820-c3d41376b07a","html_url":"https://github.com/anchildress1/npm-nodejs-template","commit_stats":null,"previous_names":["anchildress1/npm-nodejs-template"],"tags_count":null,"template":true,"template_full_name":null,"purl":"pkg:github/anchildress1/npm-nodejs-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anchildress1%2Fnpm-nodejs-template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anchildress1%2Fnpm-nodejs-template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anchildress1%2Fnpm-nodejs-template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anchildress1%2Fnpm-nodejs-template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/anchildress1","download_url":"https://codeload.github.com/anchildress1/npm-nodejs-template/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anchildress1%2Fnpm-nodejs-template/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31402276,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-04T10:20:44.708Z","status":"ssl_error","status_checked_at":"2026-04-04T10:20:06.846Z","response_time":60,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["boilerplate-template","documented-training","es6-modules","javascript","npm","volta"],"created_at":"2026-04-04T13:53:43.690Z","updated_at":"2026-04-04T13:53:43.748Z","avatar_url":"https://github.com/anchildress1.png","language":"JavaScript","funding_links":["https://www.buymeacoffee.com/anchildress1"],"categories":[],"sub_categories":[],"readme":"# 🚀 NodeCraft: The Ultimate NPM/Node.js Starter Kit\n\nShaping the Ultimate Starter Kit Together\n\n\u003e [!IMPORTANT]\n\u003e 🦄 Hack Time Update: Contest Mode Activated!\n\u003e\n\u003e I’m off chasing glory in a coding contest through the end of September, 2025, so this repo’s usual hustle is on a quick coffee break. I’ll ninja-drop updates whenever I can between rounds, but please hang tight while I duke it out on the leaderboard.\n\u003e\n\u003e Thanks for your patience - and may your builds always pass! 🏅✨\n\n---\n\n\u003e [!WARN]\n\u003e This is a work in progress and may take a few weeks before I have anything truly useful, but feel free to use anything available as a starting point.\n\u003e\n\u003e 📝 I'm open to suggestions. Dive into the [Dev.to post](https://dev.to/anchildress11/calling-all-nodejs-wizards-what-would-you-add-to-the-ultimate-boilerplate-38aj) for more context!\n\n---\n\n## ✨ Repo Pulse: Badges, Stars \u0026 Fuel\n\nIf you find this project useful or want to support its development, consider sharing it, starring the repo, or even buying me a coffee! Your support keeps the code flowing and the caffeine strong 💪\n\n\u003e [!TIP]\n\u003e This list only includes what's already in the repo or tools used to build it, not what I plan to add later.\n\n| Pulse Points | Badges |\n|--------------|-------------|\n| 🫶 Show Some Love | [![BuyMeACoffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-ffdd00?style=for-the-badge\u0026logo=buy-me-a-coffee\u0026logoColor=black)](https://www.buymeacoffee.com/anchildress1) [![dev.to Badge](https://img.shields.io/badge/dev.to-0A0A0A?logo=devdotto\u0026logoColor=fff\u0026style=for-the-badge)](https://dev.to/anchildress1) [![LinkedIn](https://img.shields.io/badge/linkedin-%230077B5.svg?style=for-the-badge\u0026logo=linkedin\u0026logoColor=white)](https://www.linkedin.com/in/anchildress1/) |\n| 🛼 Recent Activity | ![GitHub commit activity](https://img.shields.io/github/commit-activity/t/anchildress1/npm-nodejs-template?style=for-the-badge\u0026color=F054B2\u0026cacheSeconds=3600) ![GitHub last commit](https://img.shields.io/github/last-commit/anchildress1/npm-nodejs-template?display_timestamp=author\u0026style=for-the-badge\u0026color=34A853\u0026cacheSeconds=3600)\u003cbr/\u003e![GitHub Created At](https://img.shields.io/github/created-at/anchildress1/npm-nodejs-template?style=for-the-badge\u0026color=EDC531) |\n| 📊 At a Glance | [![JavaScript Badge](https://img.shields.io/badge/JavaScript-F7DF1E?logo=javascript\u0026logoColor=000\u0026style=for-the-badge)](https://developer.mozilla.org/en-US/docs/Web/JavaScript) [![Markdown Badge](https://img.shields.io/badge/Markdown-000?logo=markdown\u0026logoColor=fff\u0026style=for-the-badge)](https://www.markdownguide.org)\u003cbr/\u003e[![Project Type Badge](https://img.shields.io/badge/project_type-toy-blue?style=for-the-badge)](https://project-types.github.io/) [![GitHub License](https://img.shields.io/github/license/anchildress1/npm-nodejs-template?style=for-the-badge\u0026cacheSeconds=3600)](https://github.com/anchildress1/npm-nodejs-template/blob/main/LICENSE)|\n| 🧩 The Non-Negotiables | [![Volta Badge](https://img.shields.io/badge/Volta-3377CC.svg?style=for-the-badge)](https://volta.sh) [![NPM](https://img.shields.io/badge/NPM-%23CB3837.svg?style=for-the-badge\u0026logo=npm\u0026logoColor=white)](https://www.npmjs.com/) [![Node.js Badge](https://img.shields.io/badge/Node.js-5FA04E?logo=nodedotjs\u0026logoColor=fff\u0026style=for-the-badge)](https://nodejs.org/) |\n| 🔧 Nerd Tools I Can't Live Without\u003cbr/\u003e- Dependencies | [![Conventional Commits Badge](https://img.shields.io/badge/Conventional%20Commits-FE5196?logo=conventionalcommits\u0026logoColor=fff\u0026style=for-the-badge)](https://conventionalcommits.org/) [![commitlint Badge](https://img.shields.io/badge/commitlint-000?logo=commitlint\u0026logoColor=fff\u0026style=for-the-badge)](https://commitlint.js.org/) \u003cbr /\u003e |\n| 👾 Bots in the Basement\u003cbr/\u003e- Co-authored-by | [![GitHub Copilot Badge](https://img.shields.io/badge/GitHub%20Copilot-000?logo=githubcopilot\u0026logoColor=fff\u0026style=for-the-badge)](https://github.com/features/copilot) [![OpenAI Badge](https://img.shields.io/badge/OpenAI-412991?logo=openai\u0026logoColor=fff\u0026style=for-the-badge)](https://openai.com/chatgpt)|\n| 💬 Meta Magic \u0026 Shiny Things\u003cbr/\u003e | [![Git](https://img.shields.io/badge/git-%23F05033.svg?style=for-the-badge\u0026logo=git\u0026logoColor=white)](https://git-scm.com/) [![GitHub](https://img.shields.io/badge/github-%23121011.svg?style=for-the-badge\u0026logo=github\u0026logoColor=white)](https://github.com/) [![gitignore.io Badge](https://img.shields.io/badge/gitignore.io-204ECF?logo=gitignoredotio\u0026logoColor=fff\u0026style=for-the-badge)](https://www.toptal.com/developers/gitignore/api/node,dotenv,visualstudiocode,macos)\u003cbr/\u003e[![Shields.io Badge](https://img.shields.io/badge/Shields.io-000?logo=shieldsdotio\u0026logoColor=fff\u0026style=for-the-badge)](https://shields.io/badges/static-badge) ![Simple Icons Badge](https://img.shields.io/badge/Simple%20Icons-111?logo=simpleicons\u0026logoColor=fff\u0026style=for-the-badge)\u003cbr/\u003e[![VS Code Insiders](https://img.shields.io/badge/VS%20Code%20Insiders-35b393.svg?style=for-the-badge\u0026logo=visual-studio-code\u0026logoColor=white)](https://code.visualstudio.com/updates/v1_102) [![macOS](https://img.shields.io/badge/mac%20os-000000?style=for-the-badge\u0026logo=macos\u0026logoColor=F0F0F0)](https://www.apple.com/shop/buy-mac?afid=p240%7Cgo~cmp-21640797485~adg-171722772185~ad-756023446016_kwd-978205588~dev-c~ext-~prd-~mca-~nt-search\u0026cid=aos-us-kwgo-mac-bts-launch-061725-) |\n\n---\n\n### 🎛️ Dependencies + Versions\n\nThis is a detailed list of the above dependencies, including their versions currently in use.\n\n|  **Dependencies** | **Dev Dependencies** |\n| :---: | :---: |\n|  | ![@commitlint/cli dependency version](https://img.shields.io/github/package-json/dependency-version/anchildress1/npm-nodejs-template/dev/%40commitlint%2Fcli?style=for-the-badge\u0026color=00BBF9)\u003cbr/\u003e![@commitlint/config-conventional dependency version](https://img.shields.io/github/package-json/dependency-version/anchildress1/npm-nodejs-template/dev/%40commitlint%2Fconfig-conventional?style=for-the-badge\u0026color=00BBF9) |\n\n---\n\n### 📢 Shoutouts\n\nI want to additionally thank the following communities and tools that have (often unknowingly) helped this project:\n\n- [Ileriayo/markdown-badges](https://github.com/Ileriayo/markdown-badges/tree/master) - for the awesome badge collection\n- [Simple Badges](https://badges.pages.dev/) - for the incredible list of searchable, copy-paste badges\n- [Project Types](https://project-types.github.io/) - for the great overview of how to properly categorize your repo\n- [GitHub Wiki - Design and Implementation](https://github.com/practicalseries/GitHub-Wiki-Design-and-Implementation/wiki) - for the expert-level digging to figure this thing out before me (seriously, I owe you one!)\n\n\u003e [!IMPORTANT]\n\u003e If you want to start using badges in your own projects, I highly recommend you donate or support the [shields.io project](https://shields.io/) by authorizing their GitHub App, which is free and is a great way to show appreciation for their work! Learn more about it [here](https://shields.io/blog/token-pool).\n\n---\n\n## 🧠 Looking for Ideas, Not Code\n\nHave thoughts on:\n\n- What makes a JS template actually useful?\n- Underrated tools or workflows that you swear by?\n- Opinions about what should (or shouldn’t) be included in the starter pack?\n- Quirky pain points only Node devs understand?\n\nDrop a comment (when Discussions are enabled!) or [reply on Dev.to](https://dev.to/anchildress11/calling-all-nodejs-wizards-what-would-you-add-to-the-ultimate-boilerplate-38aj). Your input could help shape this into something everyone can steal... I mean, use. 😇\n\n---\n\n## 📦 Planned Features (So Far)\n\nHere’s what I’ve mapped out, but this is absolutely up for discussion. Have a hot take? Let me know!\n\n1️⃣ Basic scaffold\n2️⃣ Husky with Jira support\n3️⃣ Conventional commits \u0026 CHANGELOG generation\n4️⃣ Prettier auto-format\n5️⃣ ESLint validation (strict)\n6️⃣ CSpell checks\n7️⃣ Vitest for unit and integration testing\n8️⃣ Documentation with GitHub Markdown\n9️⃣ GitHub Copilot starter\n\n---\n\n## 🤔 What’s Already Here\n\n### Very basic scaffold\n\n- [`README.md`](./README.md) – Project overview and starter info (you're reading it!)\n- [`commitlint.config.js`](./commitlint.config.mjs) – ES6 Commit message linting rules (not yet enforced)\n- [`package.json`](./package.json) – NPM Node.js project manifest\n- [`LICENSE`](./LICENSE) – Apache 2.0 License file\n- [`index.js`](./index.js) – Entry point placeholder\n- [`src/`](./src/) – Empty source code folder\n- [`tests/`](./tests/) – Empty test folder\n- [`wiki/`](./wiki/) – Wiki submodule for comprehensive documentation\n\n---\n\n## 📚 Working with Submodules\n\nThis project includes a wiki submodule for comprehensive documentation. Here's how to get it set up:\n\n### First-time setup\n\n```bash copy\ngit submodule init\ngit submodule update\n```\n\n**Or in one command**\n\n```bash copy\ngit submodule update --init --recursive\n```\n\n### To pull the latest wiki updates\n\n```bash copy\ngit submodule update --remote wiki\n```\n\nFor more detailed documentation and guides, check out [wiki pages](https://github.com/anchildress1/npm-nodejs-template/wiki) or, once you've loaded the submodule, [/wiki](./wiki/Home.md) in your IDE!\n\n---\n\n## Tooling wish list (all up for feedback!)\n\n### 🦊 Husky \u0026 Jira\n\n- Optional, enforced branch names with Jira keys\n- Commit messages that keep the PMs happy\n- Lintstaged, because why wait until CI to fail?\n\n### 📝 Conventional commits \u0026 changelog (started)\n\n- In this area, I'm still a noob, but the goal is to have a system that:\n  - Auto-enforce conventional commit format\n  - Handles Semver versioning\n  - Automatically generates a CHANGELOG\n\n### ✨ Prettier\n\n- Runs on pre-commit. Because who doesn’t want their code auto-prettified?\n\n### 🕵️ Strict ESLint\n\n- Leaning toward Airbnb + Unicorn configs—unless you have a spicier suggestion\n- Some aggressive custom rules that I can't live without\n- No warnings allowed at commit time (too strict?)\n\n### 🪄 CSpell\n\n- Spell checking everywhere\n- Project-specific dictionary - still figuring out the best spot for it\n\n### 🧪 Vitest\n\n- I'll find an example something to test, with coverage and reporting\n- Docs somewhere explaining the “why” of testing, not just the “how”\n\n### 📖 Documentation\n\n- Added wiki submodule for comprehensive documentation (link to full docs coming soon!)\n- Explainers for each tool, folder, and weird decision\n\n### 🤖 GitHub Copilot\n\n- Starter tips for using Copilot well (not just “type // todo and hope for magic”)\n- Would love to crowdsource actual examples and best practices\n\n\u003e If you don't know me, check out my recent blog posts on [Dev.to](https://dev.to/anchildress1) - then that last one will make perfect sense \\:innocent:\n\n---\n\n## 🌱 How You Can Help (Without Writing a Single Line of Code)\n\n- Share stories: What’s the most annoying thing about starting a new Node project?\n- Suggest tools: What’s one library you can’t live without (and why)?\n- Vote: What do you think is overkill, and what’s missing?\n- Philosophize: What does a “good” JS backend template mean to you?\n\nDrop your thoughts here once Discussions are enabled, or leave a comment on my [Dev.to post](https://dev.to/anchildress11/calling-all-nodejs-wizards-what-would-you-add-to-the-ultimate-boilerplate-38aj).\n\n---\n\n## 🛠️ Next Steps\n\n- [ ] Add a starting place in Discussions for people to share their thoughts (do we really want this? 🤔)\n- [ ] Set up wiki and docs for conventional commits\n- [ ] Finish the basics (as described above)\n- [ ] Iterate on feedback and turn this template into something worth forking\n\n---\n\n## 🙏 Thanks for Stopping By\n\nStay tuned, and thanks in advance for your brainpower! 🧠💡\n— Ashley\n\nP.S. If you’re here from the future and Discussions are already open... go wild!\n\n\u003e Most likely, future me forgot to update this README, so if you see any typos or outdated info, please open an issue. Thanks!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanchildress1%2Fnpm-nodejs-template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fanchildress1%2Fnpm-nodejs-template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanchildress1%2Fnpm-nodejs-template/lists"}