readme-updates
About
The readme-updates skill helps developers create and maintain high-quality README files by managing setup instructions, features, tech stack, and usage examples. It's ideal for updating project documentation, adding new features, or improving contributor onboarding. The skill can automatically update READMEs across a monorepo using tools like Read, Edit, Write, Bash, Grep, and Glob.
Documentation
README Updates Skill
This skill helps you create and maintain high-quality README files across the monorepo.
When to Use This Skill
- Creating README for new packages
- Updating project features
- Documenting setup instructions
- Adding usage examples
- Updating tech stack information
- Adding badges and shields
- Improving documentation clarity
- Onboarding new contributors
README Structure
Root README.md
# SG Cars Trends
[](LICENSE)
[](https://github.com/sgcarstrends/sgcarstrends/actions)
[](https://codecov.io/gh/sgcarstrends/sgcarstrends)
> Platform for accessing Singapore vehicle registration and COE bidding data
## Features
- π **Comprehensive Data**: Access car registration and COE bidding data
- π **Real-time Updates**: Automated daily data updates from LTA DataMall
- π **AI-Generated Blog**: Automated insights using Google Gemini
- π **Social Media**: Auto-post updates to Discord, LinkedIn, Telegram, Twitter
- π **Interactive Charts**: Visualize trends with Recharts
- π **Modern Stack**: Next.js 16, Hono, SST v3, PostgreSQL, Redis
## Quick Start
```bash
# Clone repository
git clone https://github.com/sgcarstrends/sgcarstrends.git
cd sgcarstrends
# Install dependencies
pnpm install
# Set up environment variables
cp .env.example .env
# Run database migrations
pnpm db:migrate
# Start development servers
pnpm dev
\```
## Documentation
- **[Documentation](https://docs.sgcarstrends.com)** - Full documentation
- **[API Reference](https://docs.sgcarstrends.com/api-reference)** - API endpoints
- **[Architecture](https://docs.sgcarstrends.com/architecture)** - System design
- **[Contributing](CONTRIBUTING.md)** - Contribution guidelines
## Tech Stack
### Frontend
- **Next.js 16** - React framework with App Router
- **HeroUI** - React UI component library
- **Recharts** - Data visualization
- **Tailwind CSS** - Utility-first CSS
### Backend
- **Hono** - Fast web framework for Edge
- **tRPC** - End-to-end type-safe APIs
- **Drizzle ORM** - TypeScript ORM
- **PostgreSQL** - Relational database
- **Upstash Redis** - Caching layer
### Infrastructure
- **SST v3** - Serverless framework
- **AWS Lambda** - Serverless compute
- **Cloudflare** - DNS and SSL
- **Vercel Blob** - File storage
### AI & Automation
- **Google Gemini** - AI blog generation
- **QStash** - Workflow engine
- **Better Auth** - Authentication
## Project Structure
sgcarstrends/ βββ apps/ β βββ api/ # Hono API service β βββ web/ # Next.js web app β βββ admin/ # Admin panel β βββ docs/ # Mintlify documentation βββ packages/ β βββ database/ # Drizzle ORM schemas β βββ types/ # Shared TypeScript types β βββ ui/ # UI component library β βββ utils/ # Shared utilities β βββ logos/ # Car logo management βββ infra/ # SST infrastructure ```
Development
# Start all development servers
pnpm dev
# Start specific service
pnpm -F @sgcarstrends/api dev
pnpm -F @sgcarstrends/web dev
# Run tests
pnpm test
# Build for production
pnpm build
# Lint and format
pnpm biome check --write .
\```
## Deployment
```bash
# Deploy to staging
pnpm deploy:staging
# Deploy to production
pnpm deploy:prod
\```
See [Deployment Guide](https://docs.sgcarstrends.com/guides/deployment) for details.
## Contributing
Contributions are welcome! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
## License
[MIT](LICENSE) Β© SG Cars Trends
## Support
- **Documentation**: https://docs.sgcarstrends.com
- **Issues**: [GitHub Issues](https://github.com/sgcarstrends/sgcarstrends/issues)
- **Discussions**: [GitHub Discussions](https://github.com/sgcarstrends/sgcarstrends/discussions)
Package README Template
# @sgcarstrends/database
Database schema and migrations for SG Cars Trends using Drizzle ORM.
## Installation
```bash
pnpm add @sgcarstrends/database
\```
## Usage
```typescript
import { db } from "@sgcarstrends/database";
import { cars } from "@sgcarstrends/database/schema";
// Query cars
const allCars = await db.query.cars.findMany();
// Insert car
await db.insert(cars).values({
make: "Toyota",
model: "Corolla",
month: "2024-01",
number: 150,
});
\```
## Schema
### Cars Table
| Column | Type | Description |
|--------|------|-------------|
| `id` | `uuid` | Primary key |
| `make` | `text` | Car manufacturer |
| `model` | `text` | Car model |
| `month` | `text` | Registration month (YYYY-MM) |
| `number` | `integer` | Number of registrations |
## Migrations
```bash
# Generate migration
pnpm db:generate
# Run migrations
pnpm db:migrate
# Push schema (dev only)
pnpm db:push
\```
## Development
```bash
# Run tests
pnpm test
# Type check
pnpm tsc --noEmit
\```
## License
MIT
README Components
Badges
<!-- License -->
[](LICENSE)
<!-- CI Status -->
[](https://github.com/user/repo/actions)
<!-- Coverage -->
[](https://codecov.io/gh/user/repo)
<!-- npm version -->
[](https://www.npmjs.com/package/@sgcarstrends/database)
<!-- Downloads -->
[](https://www.npmjs.com/package/@sgcarstrends/database)
<!-- TypeScript -->
[](https://www.typescriptlang.org/)
Table of Contents
## Table of Contents
- [Features](#features)
- [Quick Start](#quick-start)
- [Installation](#installation)
- [Usage](#usage)
- [API Reference](#api-reference)
- [Configuration](#configuration)
- [Development](#development)
- [Deployment](#deployment)
- [Contributing](#contributing)
- [License](#license)
Code Examples
## Usage
### Basic Example
```typescript
import { db } from "@sgcarstrends/database";
const cars = await db.query.cars.findMany();
console.log(cars);
\```
### Advanced Example
```typescript
import { db } from "@sgcarstrends/database";
import { cars } from "@sgcarstrends/database/schema";
import { eq, desc } from "drizzle-orm";
// Get Toyota cars from January 2024
const toyotaCars = await db.query.cars.findMany({
where: eq(cars.make, "Toyota"),
orderBy: [desc(cars.number)],
limit: 10,
});
\```
Screenshots
## Screenshots
### Homepage

### Dashboard

Features List
## Features
- β
**Feature 1**: Description of feature 1
- β
**Feature 2**: Description of feature 2
- π§ **Upcoming**: Description of planned feature
- β **Not Supported**: Description of unsupported feature
Best Practices
1. Clear Project Description
# β Unclear
This is a project for cars.
# β
Clear
> Platform for accessing Singapore vehicle registration and COE bidding data with AI-generated insights
2. Installation Instructions
# β Incomplete
Install dependencies
# β
Complete
## Installation
\```bash
# Clone repository
git clone https://github.com/sgcarstrends/sgcarstrends.git
cd sgcarstrends
# Install dependencies
pnpm install
# Set up environment variables
cp .env.example .env
# Edit .env with your credentials
# Run migrations
pnpm db:migrate
# Start development server
pnpm dev
\```
3. Working Examples
# β Non-working example
\```typescript
import { db } from "database";
const data = await db.query();
\```
# β
Working example
\```typescript
import { db } from "@sgcarstrends/database";
import { cars } from "@sgcarstrends/database/schema";
const allCars = await db.query.cars.findMany();
console.log(`Found ${allCars.length} cars`);
\```
4. Links to Documentation
# β No documentation links
See docs for more info
# β
Linked documentation
For detailed documentation, see:
- [Getting Started](https://docs.sgcarstrends.com/quickstart)
- [API Reference](https://docs.sgcarstrends.com/api-reference)
- [Deployment Guide](https://docs.sgcarstrends.com/guides/deployment)
Maintaining README Files
Update Checklist
- Update features list when new features added
- Update tech stack when dependencies change
- Update setup instructions when process changes
- Update badges (CI, coverage, version)
- Update screenshots for UI changes
- Update links (check for broken links)
- Update examples for API changes
- Add new sections as needed
Check for Broken Links
# Install markdown-link-check
pnpm add -g markdown-link-check
# Check README for broken links
markdown-link-check README.md
# Check all README files
find . -name "README.md" -exec markdown-link-check {} \;
Validate Markdown
# Install markdownlint
pnpm add -D markdownlint-cli
# Lint README
pnpm markdownlint README.md
# Fix issues automatically
pnpm markdownlint --fix README.md
Template for New Packages
# @sgcarstrends/[package-name]
> Brief description of what this package does
## Installation
\```bash
pnpm add @sgcarstrends/[package-name]
\```
## Usage
\```typescript
import { functionName } from "@sgcarstrends/[package-name]";
// Example usage
const result = functionName();
\```
## API
### `functionName(param: string): ReturnType`
Description of function.
**Parameters:**
- `param` (string): Description of parameter
**Returns:**
- `ReturnType`: Description of return value
**Example:**
\```typescript
const result = functionName("example");
\```
## Development
\```bash
# Run tests
pnpm test
# Build
pnpm build
# Type check
pnpm tsc --noEmit
\```
## License
MIT
Common Sections
Prerequisites
## Prerequisites
Before you begin, ensure you have:
- **Node.js** 20 or later
- **pnpm** 8 or later
- **PostgreSQL** 14 or later
- **Redis** (via Upstash account)
Environment Variables
## Environment Variables
Create a `.env` file in the root directory:
\```env
# Database
DATABASE_URL=postgresql://user:password@localhost:5432/sgcarstrends
# Redis
UPSTASH_REDIS_REST_URL=https://your-redis.upstash.io
UPSTASH_REDIS_REST_TOKEN=your-token
# API Keys
LTA_API_KEY=your-lta-api-key
GEMINI_API_KEY=your-gemini-api-key
\```
Troubleshooting
## Troubleshooting
### Database Connection Error
**Issue:** Cannot connect to database
**Solution:**
1. Verify DATABASE_URL is correct
2. Ensure PostgreSQL is running
3. Check firewall settings
### Build Fails
**Issue:** Build fails with TypeScript errors
**Solution:**
\```bash
# Clear caches
rm -rf node_modules .turbo dist
pnpm install
pnpm build
\```
Automation
Update Version Badge
# Get current version
VERSION=$(node -p "require('./package.json').version")
# Update badge in README
sed -i "s/version-[0-9.]*-blue/version-$VERSION-blue/" README.md
Generate Table of Contents
# Install markdown-toc
pnpm add -g markdown-toc
# Generate TOC
markdown-toc -i README.md
References
- Awesome README: https://github.com/matiassingers/awesome-readme
- Shields.io: https://shields.io (for badges)
- markdown-link-check: https://github.com/tcort/markdown-link-check
- markdownlint: https://github.com/DavidAnson/markdownlint
- Related files:
README.md- Root READMEpackages/*/README.md- Package READMEs- Root CLAUDE.md - Documentation guidelines
Best Practices Summary
- Clear Description: Concise, clear project description at the top
- Quick Start: Immediate value with quick start section
- Working Examples: Provide copy-paste ready code examples
- Visual Aids: Use screenshots, diagrams, and badges
- Complete Instructions: Step-by-step setup and usage
- Link Documentation: Link to comprehensive docs
- Keep Updated: Regularly update when features change
- Check Links: Regularly check for broken links
Quick Install
/plugin add https://github.com/sgcarstrends/sgcarstrends/tree/main/readme-updatesCopy and paste this command in Claude Code to install this skill
GitHub δ»εΊ
Related Skills
sglang
MetaSGLang is a high-performance LLM serving framework that specializes in fast, structured generation for JSON, regex, and agentic workflows using its RadixAttention prefix caching. It delivers significantly faster inference, especially for tasks with repeated prefixes, making it ideal for complex, structured outputs and multi-turn conversations. Choose SGLang over alternatives like vLLM when you need constrained decoding or are building applications with extensive prefix sharing.
evaluating-llms-harness
TestingThis Claude Skill runs the lm-evaluation-harness to benchmark LLMs across 60+ standardized academic tasks like MMLU and GSM8K. It's designed for developers to compare model quality, track training progress, or report academic results. The tool supports various backends including HuggingFace and vLLM models.
llamaguard
OtherLlamaGuard is Meta's 7-8B parameter model for moderating LLM inputs and outputs across six safety categories like violence and hate speech. It offers 94-95% accuracy and can be deployed using vLLM, Hugging Face, or Amazon SageMaker. Use this skill to easily integrate content filtering and safety guardrails into your AI applications.
langchain
MetaLangChain is a framework for building LLM applications using agents, chains, and RAG pipelines. It supports multiple LLM providers, offers 500+ integrations, and includes features like tool calling and memory management. Use it for rapid prototyping and deploying production systems like chatbots, autonomous agents, and question-answering services.
