Maintain README files with setup instructions, features, tech stack, and usage examples...
# MotorMetrics
[](LICENSE)
[](https://github.com/motormetrics/motormetrics/actions)
> Platform for accessing Singapore vehicle registration and COE bidding data
## Features
- š **Comprehensive Data**: Car registration and COE bidding data
- š **Real-time Updates**: Automated daily updates from LTA DataMall
- š **AI-Generated Blog**: Automated insights using Google Gemini
## Quick Start
\`\`\`bash
git clone https://github.com/motormetrics/motormetrics.git
cd motormetrics
pnpm install
cp .env.example .env
pnpm db:migrate
pnpm dev
\`\`\`
## Tech Stack
- **Frontend**: Next.js 16, HeroUI v3 (+ HeroUI Pro), Tailwind CSS v4
- **Backend**: Drizzle ORM, PostgreSQL, Upstash Redis
- **Infrastructure**: Vercel
- **AI**: Google Gemini, Vercel AI SDK
## Project Structure
\`\`\`
motormetrics/
āāā apps/
ā āāā api/ # Hono API
ā āāā web/ # Next.js web app
āāā packages/
ā āāā database/ # Drizzle schemas
ā āāā ui/ # UI components
ā āāā utils/ # Shared utilities
\`\`\`
## Development
\`\`\`bash
pnpm dev # Start all servers
pnpm test # Run tests
pnpm build # Build for production
\`\`\`
## License
MIT
# /[package-name]
> Brief description
## Installation
\`\`\`bash
pnpm add @motormetrics/[package-name]
\`\`\`
## Usage
\`\`\`typescript
import { functionName } from "@motormetrics/[package-name]";
const result = functionName();
\`\`\`
## API
### `functionName(param: string): ReturnType`
Description.
**Parameters:** `param` (string) - Description
**Returns:** `ReturnType` - Description
## Development
\`\`\`bash
pnpm test
pnpm build
\`\`\`
## License
MIT
[](LICENSE)
[](actions)
[](npm)
[](typescript)
## Environment Variables
Create `.env` from `.env.example`:
\`\`\`env
DATABASE_URL=postgresql://user:pass@localhost:5432/db
UPSTASH_REDIS_REST_URL=https://your-redis.upstash.io
UPSTASH_REDIS_REST_TOKEN=your-token
\`\`\`
# Check for broken links
pnpm dlx markdown-link-check README.md
# Lint markdown
pnpm dlx markdownlint README.md