Offers two modes: browser offline decoding and Cardog API server-side decoding
nextjs-corgi-starter — Next.js Starter Template
By cardog-ai
A VIN decoding starter template based on Next.js and @cardog/corgi, offering two modes: browser-side offline decoding and Cardog API server-side decoding.
Explore the design
Compare the page layouts and mobile experience. Open any screenshot for a closer look.
Actual screenshot captured by the server browser.
All pages & views 2
Screenshots show visual appearance; interactive behavior may differ.
What stands out
A quick read of the recorded project description.
In browser mode, automatically fetches the VPIC database from Cardog CDN on first use, with no manual download required
Uses Next.js, TypeScript, and Tailwind CSS, with UI based on shadcn/ui components
Includes page components such as a VIN input form and decoding result display, plus decoding logic under lib
README provides a Vercel one-click deploy button and manual build/start deployment steps
Template Details
This template is used to build VIN (Vehicle Identification Number) decoding applications, with the core dependency being the @cardog/corgi decoding library. The README explains that it provides two decoding methods: the browser mode performs offline decoding on the client using a local database, automatically fetching the latest VPIC database from Cardog's public CDN on first use; the API mode decodes on the server via the Cardog API, requiring NEXT_PUBLIC_CARDOG_API_URL and NEXT_PUBLIC_CARDOG_API_KEY to be configured in .env.local.
The project structure includes app/ (layout, main page, global styles), components/ (VIN input form, decoding result display, and shadcn/ui components), and lib/ (browser decoder, API decoder, and utility functions). The README mentions the tech stack as Next.js, TypeScript, and Tailwind CSS, and lists a one-click deploy button for Vercel and manual build/deploy steps, but does not provide specific version numbers, performance data, or production environment validation notes.
Is it right for your project?
Use Cases
- Building a web application that requires entering a 17-digit VIN and displaying vehicle information
- Using browser-side offline decoding in scenarios without network access or where server-side calls are to be avoided
- Decoding on the server via the Cardog API and centrally managing API credentials
- Using this template as a starting point to extend custom pre- and post-decoding processing logic
Suitable For
- Next.js project developers who need VIN decoding functionality
- Teams that want to retain both offline and API decoding paths
- Developers customizing the interface with Tailwind CSS and shadcn/ui
Getting started & customization
Use these recorded setup notes alongside the repository instructions for your chosen version.
- 1
After cloning or using this template via create-next-app, run npm install (or pnpm/yarn install)
- 2
For API mode, copy .env.example to .env.local and fill in NEXT_PUBLIC_CARDOG_API_URL and NEXT_PUBLIC_CARDOG_API_KEY
- 3
Run npm run dev to start the development server; browser mode will automatically fetch the VPIC database
- 4
For production deployment, run npm run build followed by npm start, or use the Vercel one-click deploy button in the README
- 5
The README mentions that public/vpic.lite.db.gz must be added manually, but browser mode fetches the database from Cardog CDN by default
License & source material
Usage conditions & limitations
Free to use · keep license noticeThis entry covers the free version under the MIT license in the public repository; the free scope is the code of this version and does not mean external services or third-party assets are free.
Must comply with when using
- Free use, modification, commercial use, and distribution of this version's code are permitted.
- When distributing copies or substantial portions of the code, retain the original author's copyright notice and the full MIT license notice.
- The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.
Additional costs & items to verify
- Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses and cannot be judged solely by the code's MIT license.
- External services such as domains, hosting, databases, payments, or AI may incur additional charges.
- API mode requires a Cardog API key, which must be obtained by registering at cardog.ai (available for free).
- Browser mode requires network access on first use to automatically download the VPIC database from Cardog's CDN; fully offline first-time initialization is not possible.
- Browser mode relies on Cardog's public CDN to provide the VPIC database, defaulting to its external service address.
- public/vpic.lite.db.gz must be added manually; the repository does not include this database file.
View Original Text Basis
Permission is hereby granted, free of charge
Original License Text
> Get your free API key at [cardog.ai](https://cardog.ai)
Original README
Browser mode automatically fetches the latest VPIC database from Cardog's CDN on first use - no manual download needed!
Original README
Browser mode fetches the latest VPIC database from Cardog's public CDN (`https://corgi.cardog.io/vpic_lite_latest.db.gz`).
Original README
https://github.com/cardog-ai/nextjs-corgi-starter/blob/main/LICENSEhttps://github.com/cardog-ai/nextjs-corgi-starter/blob/main/README.md│ └── vpic.lite.db.gz # VPIC database (add manually)
Original README
Compiled by DeepSeek based on repository license and README ·2026-10-14. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.
Project checks & description sources
Template Information
- Source platforms
- GitHub
- Documentation and maintenance reference score
- More documented · 80 / 100
- Technologies
- Next.js · React
- Website type
- Starter
How this score is calculated
Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.
What to verify for this project
- Repository update recorded
- 2026-03-22
- Screenshot last checked
- 2026-10-14
A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.
The catalog identifies Next.js as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.
Use a selection guide →How this description was prepared
AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.
Review declaration: codex-user-requested-batch-review-20261015 · 2026-10-15
Inspect the recorded source material
SHA-256: dd0ccd057ccfa951bd03a69bd6d03bd2952de040767628f672262af84de28c30
2026-10-14T15:44:40.688Z
Source file / repository# Next.js + Corgi VIN Decoder Starter
A modern, production-ready Next.js starter template for building VIN decoder applications using [@cardog/corgi](https://github.com/cardog-ai/corgi) - the fastest open-source VIN decoding library.
[](https://vercel.com/new/clone?repository-url=https://github.com/cardog-ai/nextjs-corgi-starter&env=NEXT_PUBLIC_CARDOG_API_URL,NEXT_PUBLIC_CARDOG_API_KEY&envDescription=Optional%20API%20credentials%20for%20server-side%20VIN%20decoding&envLink=https://cardog.ai)



## Features
- **Dual Decoding Modes**
- **Browser Mode**: Fully offline VIN decoding with client-side database
- **API Mode**: Server-side decoding via Cardog API
- **Modern Stack**: Next.js 14, TypeScript, Tailwind CSS
- **Beautiful UI**: Clean, responsive interface with shadcn/ui components
- **Production Ready**: Optimized build, type-safe, error handling
- **SEO Friendly**: Server-side rendering, meta tags, sitemap ready
- **One-Click Deploy**: Deploy to Vercel with a single click
## Quick Start
### 1. Create Your Project
```bash
# Clone or download this template
npx create-next-app@latest my-vin-decoder --example https://github.com/cardog-ai/nextjs-corgi-starter
# Or clone directly
git clone https://github.com/cardog-ai/nextjs-corgi-starter.git my-vin-decoder
cd my-vin-decoder
```
### 2. Install Dependencies
```bash
npm install
# or
pnpm install
# or
yarn install
```
### 3. Configure Environment (Optional)
For API-based decoding, create a `.env.local` file:
```bash
cp .env.example .env.local
```
Edit `.env.local` and add your Cardog API credentials:
```env
NEXT_PUBLIC_CARDOG_API_URL=https://api.cardog.ai
NEXT_PUBLIC_CARDOG_API_KEY=your_api_key_here
```
> Get your free API key at [cardog.ai](https://cardog.ai)
### 4. Run Development Server
Browser mode automatically fetches the latest VPIC database from Cardog's CDN on first use - no manual download needed!
```bash
npm run dev
```
Open [http://localhost:3000](http://localhost:3000) and start decoding VINs!
## What's Included
```
nextjs-corgi-starter/
├── app/
│ ├── layout.tsx # Root layout with metadata
│ ├── page.tsx # Main VIN decoder page
│ └── globals.css # Global styles & theme
├── components/
│ ├── vin-input.tsx # VIN input form with mode toggle
│ ├── vin-result.tsx # Decoded vehicle information display
│ └── ui/ # shadcn/ui components
│ ├── button.tsx
│ ├── card.tsx
│ ├── input.tsx
│ └── badge.tsx
├── lib/
│ ├── utils.ts # Utility functions
│ ├── vin-decoder-browser.ts # Browser-based decoder
│ └── vin-decoder-api.ts # API-based decoder
├── public/
│ └── vpic.lite.db.gz # VPIC database (add manually)
└── package.json
```
## Customization
### Styling
This template uses Tailwind CSS with a customizable theme. Edit `tailwind.config.ts` to change colors, fonts, and more:
```typescript
// tailwind.config.ts
theme: {
extend: {
colors: {
// Add your brand colors
brand: {
primary: '#your-color',
secondary: '#your-color',
}
}
}
}
```
### Components
All UI components are in `components/ui/` and follow the shadcn/ui pattern. Customize them or add more:
```bash
# Add more shadcn components
npx shadcn-ui@latest add <component-name>
```
### Decoding Logic
Extend or modify the decoding logic in `lib/`:
```typescript
// lib/vin-decoder-browser.ts
export async function decodeBrowser(vin: string) {
// Add custom preprocessing
const cleanVin = vin.trim().toUpperCase();
// Decode with additional options
const result = await decodeVIN(cleanVin, adapter, {
includePatternDetails: true, // Enable for detailed analysis
});
// Add custom postprocessing
return enhanceResult(result);
}
```
## Deployment
### Deploy to Vercel (Recommended)
[](https://vercel.com/new/clone?repository-url=https://github.com/cardog-ai/nextjs-corgi-starter&env=NEXT_PUBLIC_CARDOG_API_URL,NEXT_PUBLIC_CARDOG_API_KEY&envDescription=Optional%20API%20credentials%20for%20server-side%20VIN%20decoding&envLink=https://cardog.ai)
1. Click the button above
2. Connect your GitHub account
3. Configure environment variables (if using API mode)
4. Deploy!
### Manual Deployment
```bash
# Build for production
npm run build
# Start production server
npm start
```
### Database Hosting
Browser mode fetches the latest VPIC database from Cardog's public CDN (`https://corgi.cardog.io/vpic_lite_latest.db.gz`).
The database is:
- **Always up-to-date**: Automatically updated monthly
- **Globally distributed**: Fast downloads worldwide via Cloudflare
- **Free to use**: No API key required for browser mode
Want to host your own? Modify `lib/vin-decoder-browser.ts` to point to your CDN URL.
## Usage Examples
### Basic VIN Decoding
```typescript
import { decodeBrowser } from "@/lib/vin-decoder-browser";
const result = await decodeBrowser("1HGCM82633A123456");
console.log(result.components.vehicle);
// {
// make: 'Honda',
// model: 'Accord',
// year: 2003,
// bodyStyle: 'Sedan',
// ...
// }
```
### With Error Handling
```typescript
try {
const result = await decodeBrowser(vin);
if (!result.valid) {
console.error("Invalid VIN:", result.errors);
return;
}
// Use the decoded data
displayVehicle(result.components.vehicle);
} catch (error) {
console.error("Decode failed:", error);
}
```
## API Reference
### Browser Decoder
```typescript
import { decodeBrowser, getDatabaseStatus } from "@/lib/vin-decoder-browser";
// Decode a VIN
const result = await decodeBrowser("VIN17CHARACTERS");
// Check database status
const status = getDatabaseStatus();
console.log(status.initialized); // true/false
```
### API Decoder
```typescript
import { decodeAPI, isAPIConfigured } from "@/lib/vin-decoder-api";
// Check if API is configured
if (isAPIConfigured()) {
const result = await decodeAPI("VIN17CHARACTERS");
}
```
## Contributing
Contributions are welcome! This template is designed to showcase [@cardog/corgi](https://github.com/cardog-ai/corgi).
1. Fork the repository
2. Create your feature branch
3. Commit your changes
4. Push to the branch
5. Open a Pull Request
## License
MIT License - feel free to use this template for any project!
## Acknowledgments
Built with:
- [@cardog/corgi](https://github.com/cardog-ai/corgi) - Fast, offline VIN decoding
- [Next.js](https://nextjs.org/) - React framework
- [Tailwind CSS](https://tailwindcss.com/) - Utility-first CSS
- [shadcn/ui](https://ui.shadcn.com/) - Beautiful components
- [Cardog](https://cardog.ai) - Automotive data platform
---
**Made by the automotive developer community**
Need help? [Open an issue](https://github.com/cardog-ai/nextjs-corgi-starter/issues) or visit [cardog.ai](https://cardog.ai)
Explore similar templates
Compare previews and descriptions within the same stack and category.

Next.js SaaS Starter
The official Next.js SaaS starter template, integrating email/password authentication, Stripe Checkout subscriptions, a dashboard with user/team CRUD, basic Owner/Member RBAC, and activity logging.
Next.js · SaaS

Next.js Commerce
Vercel's officially maintained Next.js App Router ecommerce starter with deep Shopify integration, offering a complete product catalog, cart, and checkout flow. Core logic is modular for swapping backends, and community provider versions exist for BigCommerce, Medusa, and Saleor.
Next.js · E-commerce

Next-js-Boilerplate
A developer-first Next.js 16 starter with Tailwind CSS 4 and TypeScript, supporting both App Router and Page Router.
Next.js · Starter

tailwind-nextjs-starter-blog
A Next.js and Tailwind CSS blog starter template using Contentlayer for Markdown/MDX, with built-in SEO, code highlighting, and tags. It targets personal technical blogs and migration from Jekyll/Hugo to React, and supports one-click Vercel deployment.
Next.js · Blog

next-forge
next-forge is a Turborepo-based Next.js template maintained by Vercel, positioned as a starting point for SaaS products.
Next.js · Starter

SaaS-Boilerplate
SaaS-Boilerplate is an open-source SaaS starter template built with Next.js App Router, React 19, TypeScript, Tailwind CSS, and Shadcn UI.
Next.js · SaaS
