Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/kagisearch/kite-public/llms.txt

Use this file to discover all available pages before exploring further.

Kagi News is a SvelteKit application that connects to the live data API at https://kite.kagi.com. Because the data is fetched at runtime, there is nothing special to configure for local development — clone the repo, install dependencies, and the app is ready to run. The steps below take you from zero to a fully functional local instance in under five minutes.
1

Install Prerequisites

You need Node.js LTS and npm (bundled with Node.js). Check your installed versions before proceeding:
node -v   # should be an LTS release, e.g. v20.x or v22.x
npm -v
Download Node.js LTS from nodejs.org if it is not already installed.
2

Clone the Repository

Clone the public repository from GitHub and move into the project directory:
git clone https://github.com/kagisearch/kite-public.git && cd kite-public
3

Install Dependencies

Install all project dependencies using your preferred package manager:
npm install
4

Configure Environment Variables

The repository ships with a .env file that points the app at the live Kagi News data API. No changes are required for local development — the defaults work out of the box:
.env
VITE_BASE_PATH=https://kite.kagi.com
VITE_STATIC_PATH=https://kite.kagi.com/static
VITE_BASE_PATH is the root URL used for all news data requests. VITE_STATIC_PATH is the URL for static assets such as publisher logos. Both values are embedded at build time by Vite, so any change requires a rebuild.
The news data served from kite.kagi.com — including kite.json and all files it references — is licensed under CC BY-NC 4.0. You can use it freely with attribution for non-commercial projects. For commercial use, contact support@kagi.com.
5

Start the Development Server

Launch the Vite development server with hot-module replacement:
npm run dev
The app opens at http://localhost:5173. The server proxies data requests to https://kite.kagi.com as configured in your .env file.
6

(Optional) Build for Production

When you are ready to produce a deployable artifact, run the production build:
npm run build
The build output is written to the build/ directory. Preview the production build locally with:
npm run preview

Useful Development Commands

CommandDescription
npm run devStart the Vite development server at localhost:5173
npm run buildCompile a production build into build/
npm run previewServe the production build locally for inspection
npm run checkRun svelte-kit sync then svelte-check for TypeScript diagnostics
npm run testRun the full Vitest test suite in watch mode
npm run lintLint the codebase with Biome

TypeScript Checking

Run a full type-check pass across the entire project with:
npm run check
This command first syncs the SvelteKit generated types (svelte-kit sync) and then runs svelte-check against tsconfig.json. It is recommended to run this before opening a pull request.

Running Tests

npm run test
Vitest runs in watch mode by default. Additional test commands are available for specific scenarios:
npm run test:all        # run the full suite once (no watch)
npm run test:unit       # unit tests only
npm run test:integration # integration tests only
npm run test:coverage   # generate a V8 coverage report

Next Steps

Self-Hosting

Deploy your own Kagi News instance to Netlify, Vercel, GitHub Pages, or any Node.js host.

News Model

Understand how once-daily updates, AI summarization, and multi-source clustering work together.

Contributing Feeds

Add new RSS sources or categories to the community-curated feed index.

Introduction

Learn about the philosophy and open-source model behind Kagi News.

Build docs developers (and LLMs) love