aboutsummaryrefslogtreecommitdiffstats
path: root/AGENTS.md
diff options
context:
space:
mode:
Diffstat (limited to 'AGENTS.md')
-rw-r--r--[l---------]AGENTS.md71
1 files changed, 70 insertions, 1 deletions
diff --git a/AGENTS.md b/AGENTS.md
index e3c5a92d..d8f6d862 120000..100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -1 +1,70 @@
-GEMINI.md \ No newline at end of file
+# Karakeep Project Overview
+
+This document provides context about the Karakeep project for the different agents.
+
+## Project Overview
+
+Karakeep is a monorepo project managed with Turborepo. It appears to be a web application with a focus on collecting and organizing information, possibly a bookmarking or "read-it-later" service. The project is built with a modern tech stack, including:
+
+- **Frontend:** Next.js, React, TypeScript, Tailwind CSS
+- **Backend:** Hono (a lightweight web framework), tRPC
+- **Database:** Drizzle ORM (likely with a relational database like PostgreSQL or SQLite)
+- **Tooling:** Prettier,oxlint, Vitest, pnpm
+
+## Project Structure
+
+The project is organized into `apps` and `packages`:
+
+### Applications (`apps/`)
+
+- **`web`:** The main web application, built with Next.js.
+- **`browser-extension`:** A browser extension, likely for saving content to karakeep.
+- **`cli`:** A command-line interface for interacting with the service.
+- **`landing`:** A landing page for the project.
+- **`mobile`:** A mobile application (details unknown).
+- **`mcp`:** The Model Context Protocol (MCP) server to communicate with Karakeep.
+- **`workers`:** Background workers for processing tasks.
+
+### Packages (`packages/`)
+
+- **`api`:** The main API, built with Hono and tRPC.
+- **`db`:** Database schema and migrations, using Drizzle ORM.
+- **`e2e_tests`:** End-to-end tests for the project.
+- **`open-api`:** OpenAPI specifications for the API.
+- **`sdk`:** A software development kit for interacting with the API.
+- **`shared`:** Shared code and types between packages.
+- **`shared-react`:** Shared React components and hooks.
+- **`shared-server`:** Shared logic that's meant to be used on the server-side.
+- **`trpc`:** tRPC router and procedures. Most of the business logic is here.
+
+### Docs
+
+- **docs/docs/03-configuration.md**: Explains configuration options for the project.
+
+## Development Workflow
+
+- **Package Manager:** pnpm
+- **Build System:** Turborepo
+- **Code Formatting:** Prettier
+- **Linting:** oxlint
+- **Testing:** Vitest
+
+## Other info
+
+- This project uses shadcn/ui. The shadcn components in the web app are in `packages/web/components/ui`.
+- This project uses Tailwind CSS.
+- For the mobile app, we use [expo](https://expo.dev/).
+
+### Common Commands
+
+- `pnpm typecheck`: Typecheck the codebase.
+- `pnpm lint`: Lint the codebase.
+- `pnpm lint:fix`: Fix linting issues.
+- `pnpm format`: Format the codebase.
+- `pnpm format:fix`: Fix formatting issues.
+- `pnpm test`: Run tests.
+- `pnpm db:generate --name description_of_schema_change`: db migration after making schema changes
+
+Starting services:
+- `pnpm web`: Start the web application (this doesn't return, unless you kill it).
+- `pnpm workers`: Starts the background workers (this doesn't return, unless you kill it).