Skip to content

StanHsieh/vue-monorepo-kit

Repository files navigation

Vue 3 Monorepo with Turborepo

A modern Vue 3 monorepo project built with Turborepo, integrating Vuetify and PrimeVue UI frameworks.

🚀 Quick Start

Install Dependencies

pnpm install

Development Mode

pnpm dev

Build Project

pnpm build

Lint Code

pnpm lint

Format Code

pnpm format

📁 Project Structure

Applications (Apps)

  • web - Main Vue 3 application
    • Built with Vite as the build tool
    • Integrates Vuetify and PrimeVue UI component libraries
    • Supports Vue Router and Vue I18n
    • Uses Vee-Validate + Zod for form validation
    • Integrated with SWRV for data fetching

Shared Packages

  • @repo/vuetify - Vuetify component library wrapper
  • @repo/primevue - PrimeVue component library wrapper
  • @repo/eslint-config - Shared ESLint configurations
  • @repo/typescript-config - Shared TypeScript configurations

🛠 Tech Stack

Core Technologies

  • Vue 3 - Progressive JavaScript framework
  • TypeScript - Static type checking
  • Vite - Fast build tool
  • Turborepo - High-performance build system

UI Frameworks

  • Vuetify - Material Design component library
  • PrimeVue - Rich UI component collection

Development Tools

Additional Dependencies

📦 Package Management

This project uses PNPM as the package manager with workspace functionality, enabling dependency sharing and efficient disk space utilization.

🔧 Development Guide

Adding New Applications

  1. Create a new application directory under apps/
  2. Applications are automatically included via apps/* in pnpm-workspace.yaml

Adding New Shared Packages

  1. Create a new package directory under packages/
  2. Packages are automatically included via packages/* in pnpm-workspace.yaml

Cross-Package Dependencies

Use the workspace:* protocol to reference packages within the workspace:

{
	"dependencies": {
		"@repo/vuetify": "workspace:*"
	}
}

🏗 Build Optimization

Turborepo provides intelligent caching and parallel execution capabilities:

  • Incremental Builds - Only rebuild packages that have changed
  • Remote Caching - Configurable remote caching to accelerate CI/CD
  • Parallel Execution - Automatically execute independent tasks in parallel

📄 License

This project is open source under the MIT License.

About

Vue 3 monorepo with Turborepo, integrating Vuetify and PrimeVue UI frameworks

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published