template

Nuxt 4 Feature-Based Starter

Scalable architecture with feature-based structure, auto routing, and per-feature i18n.

Structure

All features live under app/features/. Each one is a self-contained module.

app/features/blog/
  ├── components/   → <FBlogCard />
  ├── composables/  → useBlog()
  ├── stores/       → useBlogStore()
  ├── types/        → import type { Post }
  ├── pages/        → /blog, /blog/create, /blog/:slug
  └── locales/      → t('blog.title')
Features
📦

Feature-Based

Organize code by business domain, not file type

🧩

Component Prefix

Feature components auto-imported with prefix

🔥

Hot Reload

Add pages and components without restart

🚀

Type-Safe

Full TypeScript support out of the box

📍

Auto Routing

Pages inside features become routes automatically

Auto Imports

Composables, stores and utils available globally

🌍

i18n

Per-feature locale files, auto-namespaced by feature name

Usage

Components — auto-imported with feature prefix

<FTodoItem :todo="todo" />

Composables & stores — available globally, no import needed

const store = useTodoStore()
const { todos } = useTodo()

i18n — feature-namespaced keys, no config needed

t('todo.add')

Types — explicit import for clarity

import type { Todo } from '~/features/todo/types/todo.types'
Quick Start
npm run create:feature blog

Creates a feature with components, stores, pages and routes.

POW!