kunkun/GEMINI.md
Huakun Shen 2f4ff6c9e7
Some checks failed
CI / build-test (macos-14) (push) Has been cancelled
CI / build-test (ubuntu-24.04) (push) Has been cancelled
CI / build-test (windows-latest) (push) Has been cancelled
JSR Publish / publish (push) Has been cancelled
NPM Package Publish / publish-npm (push) Has been cancelled
docs: add AI init summary for the project
claude, gemini, qwen, codex
2025-09-05 07:04:29 -04:00

2.3 KiB

Kunkun Project Overview

This document provides a comprehensive overview of the Kunkun project, its architecture, and development conventions, intended to be used as instructional context for future interactions.

Project Overview

Kunkun is a cross-platform desktop application built with Tauri. It features a Svelte-based frontend and a Rust backend. The project is structured as a monorepo, managed with pnpm for the frontend and Cargo for the backend.

The application appears to be an extensible tool, with a system for "extensions" that can be installed. It also includes a CLI and various other packages.

Key Technologies

  • Frontend: Svelte, TypeScript
  • Backend: Rust, Tauri
  • Monorepo Management: pnpm, Cargo, Turbo
  • Database: The project includes a db package, but the specific database is not immediately clear from the file names.
  • API: The project includes a grpc package, suggesting the use of gRPC for inter-process communication.

Building and Running

The project uses turbo to manage the monorepo. The main commands are defined in the root package.json:

  • Development: To run the application in development mode, use the following command:

    pnpm dev
    

    This will start the Svelte development server and the Tauri application.

  • Building: To build the application for production, use the following command:

    pnpm build
    

    This will build the frontend and the Tauri application.

  • Testing: To run the test suite, use the following command:

    pnpm test
    
  • Linting: To lint the codebase, use the following command:

    pnpm lint
    
  • Formatting: To format the codebase, use the following command:

    pnpm format
    

Development Conventions

  • Coding Style: The project uses Prettier for code formatting. The configuration is defined in .prettierrc.
  • Testing: The project has a test script, but the specific testing framework is not immediately clear. There are __tests__ directories in some packages, suggesting the use of a framework like Jest or Vitest.
  • Contribution: The CONTRIBUTING.md file should be consulted for contribution guidelines.