NotForm is a powerful, yet simple form validation and state management library for Vue and Nuxt. It focuses on providing a seamless developer experience with a type-safe API and minimal boilerplate. Built with TypeScript from the ground up, it offers a composable API that integrates perfectly with Vue 3's Composition API.
- Type-safe — Built with TypeScript from the ground up for end-to-end type safety.
- Composable — Easy to use with Vue 3 Composition API for flexible form management.
- Lightweight — Tiny footprint with no unnecessary bloat, keeping your bundles small.
- Flexible — Works with any validation library (Yup, Zod, etc.) via Standard Schema integration.
- Nuxt-ready — Drop in the
notform-nuxtmodule for auto-registration and zero config. - Minimal boilerplate — Get started quickly with simple, intuitive APIs.
This monorepo is managed with pnpm workspaces and Turborepo.
| Path | Package | Description |
|---|---|---|
packages/core |
notform |
Core Vue library for form validation and state management |
packages/nuxt |
notform-nuxt |
Official Nuxt module with auto-registration |
apps/docs |
docs |
Documentation site built with Nuxt Content |
playgrounds/vue |
vue-playground |
Vue development sandbox |
playgrounds/nuxt |
nuxt-playground |
Nuxt development sandbox |
# Install all dependencies
pnpm install
# Start all packages in watch mode
pnpm dev
# Build everything
pnpm build
# Lint, typecheck, build, and test in one go
pnpm ready| Command | What it does |
|---|---|
pnpm dev |
Starts all packages in watch/dev mode via Turborepo |
pnpm build |
Production build of all packages |
pnpm lint |
Lint all packages with ESLint |
pnpm typecheck |
Type-check all packages with vue-tsc / tsc |
pnpm test |
Run all test suites with Vitest |
pnpm ready |
Full pipeline: install → lint → typecheck → build → test |