🎥 Video | YoutubeFlutter: Primary constructors and private named parameters(17.09.2026 um 18:00 Uhr)
🎥 Video | YoutubeGoogle Workspace: Generate and edit graphics with Google Pics(17.09.2026 um 18:17 Uhr)
🎥 Video | YoutubeAndroid Developers: How Android Bench 2.0 pushes AI evaluations(17.09.2026 um 18:36 Uhr)
🎥 IT Security VideoBuild apps that talk with Firebase AI Logic text-to-speech(17.09.2026 um 18:20 Uhr)
🍏 iOS / Mac OSOnline-Audio erreicht drei Viertel der Bevölkerung(17.09.2026 um 18:28 Uhr)
🍏 iOS / Mac OSApple co-founder Woz launches new merch store(17.09.2026 um 18:30 Uhr)
🎥 Video | YoutubeFlutter: Primary constructors and private named parameters(17.09.2026 um 18:00 Uhr)
🎥 Video | YoutubeGoogle Workspace: Generate and edit graphics with Google Pics(17.09.2026 um 18:17 Uhr)
🎥 Video | YoutubeAndroid Developers: How Android Bench 2.0 pushes AI evaluations(17.09.2026 um 18:36 Uhr)
🎥 IT Security VideoBuild apps that talk with Firebase AI Logic text-to-speech(17.09.2026 um 18:20 Uhr)
🍏 iOS / Mac OSOnline-Audio erreicht drei Viertel der Bevölkerung(17.09.2026 um 18:28 Uhr)
🍏 iOS / Mac OSApple co-founder Woz launches new merch store(17.09.2026 um 18:30 Uhr)
🔧 Programmierung 🕛 vor 1 Monat 4 Min Lesezeit
0

Why I Stopped Copy-Pasting Repositories and Started Building My Own Starter CLI

↗ Quelle (dev.to)
🗣️ Stimme:
📑 Inhaltsübersicht

Every developer has a "starter project." Some keep a GitHub template. Some duplicate their previous SaaS project. Some run create-next-app and spend the next two hours installing the same dependencies, configuring the same tools, and recreating the same folder structure.



I was in the second group. Every new project started the same way.




CODE
bun create next-app






Then came the checklist.




  • Install Tailwind CSS.

  • Configure Biome.

  • Add shadcn/ui.

  • Organize folders.

  • Set up a UI library.

  • Configure TypeScript.

  • Add environment files.

  • Set up a monorepo.

  • Copy utility functions.

  • Configure path aliases.

  • Install development tools.



None of these tasks were difficult. They were just repetitive. After starting enough projects, I realized something:




I wasn't building products. I was rebuilding the same foundation over and over again.







The Starter Kit Trap



Like many developers, I created a "starter repository." Whenever I wanted to build something new, I'd clone it. It worked... until it didn't.



Eventually I had multiple starter repositories.




  • One for a monorepo.

  • One for a standalone project.

  • One with authentication.

  • One without authentication.

  • One for experiments.

  • One that was already outdated.



Keeping them synchronized became its own maintenance project. Fix a bug in one. Forget to fix it in another. Upgrade Next.js in one repository. Forget the rest.



The more starters I created, the less useful they became.






Why Existing Starters Didn't Quite Fit



There are already fantastic starter kits in the ecosystem. Some focus on minimalism. Others include every feature imaginable. The problem wasn't that they were bad. The problem was that they optimized for someone else's workflow.



Every project I build starts with almost the same stack.




  • Next.js

  • TypeScript

  • Bun/pnpm

  • Tailwind CSS v4

  • shadcn/ui

  • Biome

  • Production-ready project structure



I didn't want to answer twenty configuration questions every time I scaffolded a project.



I wanted one command.




CODE
npx create-notils my-app






…and be ready to start building.






Opinionated Doesn't Mean Inflexible



One thing I've learned is that being opinionated is often a strength. Frameworks like Laravel, Rails, and even Next.js provide sensible defaults. You can always change them later. The important thing is that you're productive on day one.



That's the philosophy I'm following. Instead of trying to support every possible technology combination, I picked a stack that I genuinely enjoy using every day.



Everything generated by the CLI lives inside your repository.




  • Nothing is hidden.

  • Nothing is hosted.

  • Nothing prevents you from changing it.



The starter gives you a foundation—not a cage.






Building for Myself First



A question I've been asked is:




"Why not make everything configurable from the beginning?"




Because I'm the first user. The goal wasn't to build the most flexible scaffolding tool. The goal was to eliminate repetitive work from my own workflow. Once something proves useful in real projects, it can become configurable.



Until then, I'd rather spend my time building products than building configuration screens.






The Beginning of create-notils



That idea eventually became create-notils.



Right now, it focuses on doing one thing well:




  • Scaffold a modern Next.js project.

  • Support both standalone and monorepo layouts.

  • Configure a shared shadcn/ui setup.

  • Use Bun, Biome, Tailwind CSS v4, and TypeScript out of the box.



It's intentionally small.



Future releases will add authentication, database integration, API clients, Docker support, and more—but only after those features have been battle-tested in my own projects.






What's Next?



One design decision turned out to be far more interesting than I expected. I wanted to support both standalone projects and monorepos. Most tools solve this by maintaining two different templates.



I chose a different approach: The monorepo is the single source of truth, and the standalone project is generated from it through a deterministic transform.



That means I only maintain one project while generating two different project shapes.



In the next article, I'll dive into how that architecture works, why I chose it, and how it avoids template duplication.






I'd love to hear how you start new projects.



Do you use GitHub templates, starter repositories, scaffolding tools, or something completely different?

Vollständiger Original-Artikel
Den kompletten Beitrag mit allen Details direkt auf dev.to lesen.
↗ Original-Artikel auf dev.to lesen
Wie bewertest du diesen Beitrag?
1 Klick Feedback
Teilen mit Netzwerk & Team:

Community-Analysen & Experten-Meinungen 0

Verfasse deine eigene Analyse, teile Workarounds oder diskutiere diesen Vorfall im Blog.
Noch keine Community-Analyse verfasst. Markiere einen Textabschnitt oder klicke oben auf Eigene Analyse verfassen“!
Community Pulse: Relevanz-Einschätzung
1 Klick Experten-Votum
🔴 Akute Relevanz 0%
🟡 In Evaluierung 0%
🟢 Keine Auswirkung 0%
Spannende Innovation 0%
Verwandte Story-Cluster & Quellen (Vektor-KI)
Port 8095 Engine
1 Quelle
Avision AD7100 & AD7100N - Dreifach kontrolliert gegen Doppelblätter und Papierstau
1 Quelle
Windows Server 2022: Mainstream-Support endet am 13. Oktober - ad-hoc-news.de
1 Quelle
Lenovo ThinkAgile VX850 V4: Neue Infrastruktur für KI und Virtualisierung - ad-hoc-news.de
Ähnliche Beiträge
🔍 Verwandte News

Auch interessante Nachrichten Why I Stopped Copy-Pasting Repositories and Started Building My Own Starter CLI

Thematisch verwandte Begriffe: Stopped, CopyPasting, Repositories, Started · 6 Treffer

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...