Chủ đề: tutorial

47 bài

· rag / pgvector

Cách xây dựng RAG pipeline với pgvector và Drizzle ORM

Hướng dẫn từng bước: lưu embeddings trong Neon Postgres, truy vấn bằng cosine similarity qua Drizzle ORM, và kết nối GPT-4o để trả lời — tất cả bằng TypeScript.

· nextjs / better-auth

Cách thêm Better Auth vào ứng dụng Next.js — từng bước một

Hướng dẫn thực tế cài đặt Better Auth v1.6.14 với Drizzle ORM, Neon Postgres và GitHub OAuth trên Next.js 15 App Router — bao gồm mọi lỗi phổ biến đáng lưu ý.

· cloudflare / cloudflare-workers

Cách thiết lập Cloudflare Workers AI: Hướng dẫn từng bước

Chạy inference ở edge với Workers AI: scaffold Worker, bind AI, gọi model, stream SSE, tạo embeddings và ảnh. Có đầy đủ pricing và rate limit chính xác.

· resend / react-email

Cách gửi transactional email với Resend và React Email

Hướng dẫn từng bước: cài Resend và React Email, viết template có type, gửi từ Next.js route, và preview trên local. Bao gồm thay đổi import trong React Email 6.

· typescript / turso

Hướng dẫn dùng Turso (libSQL) trong ứng dụng TypeScript

Thiết lập Turso libSQL trong TypeScript: cài @libsql/client, thực hiện CRUD, tích hợp Drizzle ORM và quản lý local dev — kèm những lỗi phổ biến nhất.

· nextjs / llm

Cách stream phản hồi LLM trong Next.js với Vercel AI SDK

Stream LLM token-by-token trong Next.js với 50 dòng code dùng AI SDK v6. Hướng dẫn route handler, client hook, và hai bẫy timeout Vercel mà hầu hết tutorial bỏ qua.

· cloudflare / workers

Cách dùng Cloudflare Durable Objects — hướng dẫn thực chiến

Durable Objects cho bạn compute đơn luồng, duy nhất toàn cầu, đặt cùng vị trí SQLite. Không cần lớp phối hợp, không race condition. Đây là cách kết nối.

· ai-tools / vercel-ai-sdk

Cách dùng Vercel AI SDK — streaming, tool call, và agent

AI SDK 6 cung cấp một API thống nhất cho 20+ provider, typed streaming, và ToolLoopAgent cho các vòng lặp agent nhiều bước. Đây là cách dùng.

· nextjs / cloudflare

Cách deploy Next.js lên Cloudflare Workers (2026)

Hướng dẫn deploy Next.js lên Cloudflare Workers 2026: @opennextjs/cloudflare, wrangler.jsonc, 330 edge city trong 90 giây, và pipeline GitHub Actions CI/CD.

· ai-tools / cursor

Chọn công cụ AI coding năm 2026 — framework thực tế

Bốn yếu tố quyết định: tự chủ agent, phụ thuộc IDE, quyền riêng tư/self-host, và giá. Lần lượt đánh giá theo thứ tự và bạn có câu trả lời rõ trong mười phút.

· cursor / mcp

Cách xây dựng MCP tools tùy chỉnh hoạt động trong Cursor

Hướng dẫn từng bước xây dựng MCP server tùy chỉnh bằng TypeScript và kết nối với Cursor Pro. Đăng ký tool, quirk khi restart, và năm lỗi cấu hình thường gặp.

· cursor / ai

Cursor rules hiệu quả: định dạng, chế độ và cách tổ chức

Cursor rules nhúng quy ước dự án vào AI trước khi viết code. Đề cập hai định dạng file, bốn chế độ kích hoạt và những lỗi âm thầm phá vỡ chúng.

· mcp / claude-code

Cách tạo và sử dụng MCP server với Claude Code (2026)

MCP là cách nhanh nhất để cung cấp context cho Claude Code mà không cần paste file mỗi phiên. Đây là hướng dẫn thực tế từ scaffold đến tool hoàn chỉnh.

· paddle / billing

Cách thiết lập Paddle Billing cho SaaS: hướng dẫn từng bước

Hướng dẫn từng bước: tích hợp Paddle Billing vào SaaS Node.js/TypeScript. Gồm product catalog, Paddle.js v2 checkout, xác thực webhook, và customer portal.

· cloudflare / cloudflare-pages

Cách cache static assets đúng cách trên Cloudflare

Cấu hình Cache-Control đúng cho fingerprinted assets, index.html và service workers trên Cloudflare. Xác minh bằng cf-cache-status; sáu lỗi BYPASS phổ biến.

· fly-io / heroku

Cách chuyển ứng dụng Heroku sang Fly.io theo từng bước

Fly.io chạy ứng dụng Heroku với chi phí ~$4/tháng. Hướng dẫn từng bước với lệnh CLI đã kiểm chứng cho Postgres, Redis, file storage và scheduled tasks.

· redux / zustand

Cách migrate từ Redux sang Zustand: hướng dẫn từng bước

Zustand v5 nhẹ hơn Redux Toolkit + react-redux 34×. Hướng dẫn 6 bước: nhân bản slice, thay component, xóa Redux, xử lý middleware thunk/saga và DevTools.

· stripe / nextjs

Cách tích hợp Stripe Checkout vào ứng dụng Next.js (2026)

Hướng dẫn từng bước: thêm Stripe Hosted hoặc Embedded Checkout vào Next.js 15 App Router. Bao gồm Checkout Sessions, webhooks, và lưu ý về req.text().

· astro / pagefind

Cách thêm tính năng tìm kiếm vào Astro với Pagefind

Tích hợp full-text search không cần server vào bất kỳ Astro static site nào bằng Pagefind 1.5: cài đặt, Astro integration, Component UI, data attributes, CSP, và deploy.

· monorepo / pnpm

Cách dùng Changesets để tự động hóa release trong monorepo

Tích hợp @changesets/cli v2.31.0 vào monorepo pnpm + Turborepo — từ changeset file đầu tiên đến pipeline publish tự động trên GitHub Actions.

· postgres / pgvector

Cách thiết lập Vector Search với pgvector trong Postgres

Thêm semantic search vào Postgres với pgvector v0.8.2 — cài extension, tạo cột vector, sinh embeddings với OpenAI và build HNSW index. Ví dụ Node.js và Python.

· testing / vitest

Thiết lập Vitest trong monorepo Turborepo: hướng dẫn 2026

Vitest 4.x bỏ workspace, dùng projects. Hai cách cho Turborepo: per-package cache trong CI, root Vitest Projects cho local, turbo.json wiring và gộp coverage.

· astro / mdx

Cách thêm MDX vào Astro 5 Content Collections

Hướng dẫn cài đặt @astrojs/mdx và kết nối với Content Layer API của Astro 5 — frontmatter có kiểu dữ liệu, import component, và các lỗi thường gặp.

· jsr / deno

Cách publish TypeScript package lên JSR: hướng dẫn chi tiết

Hướng dẫn từng bước để publish TypeScript package lên JSR: cấu hình jsr.json, khắc phục slow types, publish qua Deno hoặc GitHub Actions, đạt điểm score tối đa.

· cloudflare / workers

Cách rate-limit Cloudflare Workers không cần Redis

Rate-limit Cloudflare Workers thuần native — không cần Redis. Rate Limiting API chặn abuse, KV cho quota hàng ngày, Durable Objects đếm chính xác cho billing.

· astro / mdx

Viết frontmatter cho Astro đúng cách (và validate nó)

Thêm Zod schema vào src/content.config.ts. Frontmatter fields của Markdown và MDX có TypeScript type và validate lúc build — không cần dependency ngoài.

· cloudflare / cloudflare-workers

Cách deploy Cloudflare Worker với D1 + Stripe Webhooks

Xây dựng Stripe webhook handler trên Cloudflare Workers với D1. Từng bước: scaffold, wrangler.toml, Drizzle migrations, raw-body, và production deploy.

· product-hunt / tutorial

Cách launch trên Product Hunt cho lập trình viên solo (2026)

Thuật toán tính comments nặng hơn upvotes, phát hiện spike bất thường, và bỏ qua Hunter nổi tiếng. Playbook dựa trên cơ chế thực tế cho solo dev.

· cloudflare / aws

Cách chuyển từ AWS sang Cloudflare 2026: Hướng dẫn đầy đủ

Workers cắt 50–80% chi phí Lambda, R2 zero egress. Hướng dẫn migrate đầy đủ: Lambda→Workers, S3→R2, RDS→D1, SQS→Queues — code trước/sau và khi nào không nên.

· npm / typescript

Cách publish npm package đúng chuẩn trong năm 2026

Dual ESM/CJS với tsup, exports map chuẩn, changesets để quản lý version, và provenance — quy trình đầy đủ cho 2026 mà các tutorial xếp hạng cao vẫn còn thiếu.

· astro / rss

Cách thêm RSS feed vào trang Astro bằng @astrojs/rss

Thêm RSS feed vào trang Astro trong 20 phút với @astrojs/rss — bao gồm content collections, rssSchema, auto-discovery, nội dung đầy đủ và kiểm tra W3C.

· trpc / nextjs

Hướng dẫn cài đặt tRPC với Next.js App Router (2026)

tRPC v11 hoạt động với Next.js 15 App Router. Bao gồm fetchRequestHandler, SSR prefetch, QueryClient pattern và năm lỗi phổ biến khi bắt đầu.

· astro / i18n

Cách xây dựng một site Astro đa ngôn ngữ (EN + VI)

Xây dựng site Astro 5 hai locale: i18n routing sẵn có, content collections, language switcher, hreflang và Cloudflare Workers deploy. Không plugin nào.

· drizzle / postgres

Hướng dẫn cài đặt Drizzle ORM với Postgres và pgvector

Cài đặt Drizzle ORM với Postgres 16 và pgvector. Bao gồm bước CREATE EXTENSION mà hầu hết hướng dẫn bỏ qua và mẫu query cosine distance để tận dụng HNSW index.

· bun / typescript

Cách viết CLI bằng TypeScript với Bun và Commander

Bun + Commander là lựa chọn tốt nhất để viết TypeScript CLI: chạy TS trực tiếp, không cần build, và xuất binary độc lập. Hướng dẫn từng bước kèm code thực tế.

· monorepo / pnpm

Cách thiết lập monorepo pnpm + Turborepo từ đầu

Dựng đúng monorepo pnpm + Turborepo từ đầu: task caching thực sự với cú pháp v2 "tasks", không phải "pipeline" deprecated trong hầu hết tutorial.

· astro / cloudflare

Cách deploy trang Astro lên Cloudflare Pages từng bước

Cloudflare Pages deploy Astro miễn phí, không giới hạn băng thông. Từng bước: cài adapter, fix cạm bẫy root directory monorepo, biến môi trường, custom domain.

· biome / eslint

Hướng dẫn đầy đủ: chuyển từ ESLint và Prettier sang Biome

Hai lệnh xử lý hầu hết việc migrate tự động. Bao gồm toàn bộ: cài đặt, rule mapping, editor setup, CI, gỡ cài đặt — và những gap chặn một số team.

· testing / vitest

Cách migrate từ Jest sang Vitest: hướng dẫn từng bước

Vitest chạy nhanh hơn Jest 28× trong watch mode. Hướng dẫn migrate đầy đủ: cài đặt, đổi tên globals, xử lý config files, và khắc phục sáu gotchas thường gặp.

· llm / fine-tuning

Cách fine-tune LLM nhỏ năm 2026 (LoRA trên laptop)

Fine-tune Llama 3.1 8B QLoRA trên GPU consumer — cài đặt ghim phiên bản, cấu hình training chính xác, xuất GGUF sang Ollama, và tám trường hợp lỗi.

· nextjs / app-router

Cách chuyển Next.js Pages Router sang App Router 2026

Chuyển Next.js Pages Router sang App Router trên v16.2.6: root layout, data fetching, Route Handlers, metadata API, và 8 vấn đề thực tế kèm cách xử lý.

· vite / webpack

Cách migrate từ Webpack sang Vite (dự án thực tế)

Hướng dẫn từng bước migrate Webpack 5 → Vite 8 trên dự án TypeScript + React: config trước/sau, đổi tên biến môi trường, CJS interop, và sáu vấn đề cần chú ý.

· multica / self-hosting

Hướng dẫn tự host Multica: Thiết lập cho nhóm AI agent

Tự host Multica v0.3.1 với ba Docker container và một lệnh make. Hướng dẫn khởi chạy nhanh, cứng hóa production và phân tích chi phí cho nhóm AI agent.

· claude-code / monorepo

Thiết lập Claude Code cho monorepo: Hướng dẫn đầy đủ 2026

Claude Code chạy tốt trong monorepo khi thiết lập đúng. Hướng dẫn CLAUDE.md hierarchy, per-package scoping, --add-dir và worktrees. Kiểm chứng v2.1.141.

· ollama / lm-studio

Ollama vs LM Studio — chạy LLM cục bộ trên Mac 2026

LM Studio thắng về throughput và bộ nhớ. Ollama thắng về time-to-first-token và cài đặt CLI. Đây là khi nào nên chọn cái nào trên Apple Silicon.

· claude-code / skills

Cách viết một Claude Code skill (và đưa vào sử dụng)

Claude Code skill là file Markdown theo yêu cầu, dạy Claude quy trình có thể tái sử dụng. Viết một skill, cài vào, gọi ra — từ đầu đến cuối chỉ mất 20 phút.

· mcp / claude-code

Cách xây dựng MCP server cho Claude Code

Dựng TypeScript MCP server với [email protected], đăng ký với Claude Code, và triển khai hai công cụ thời tiết NWS thực tế — không cần API key, xong trong 30 phút.