blob: c08d8c8b6bc9624dd66b2d25439915ecba71e894 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
# CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
## Project Overview
SORMARK is a bookmark management application that uses LLMs to analyze and categorize bookmarks from Twitter (X), browser bookmarks, and other sources. The LLM processes each bookmark to categorize it, read linked content, and decide actions like storing in an Obsidian-like vault or creating calendar events.
## Tech Stack
- **Frontend**: Waku (React framework with server components)
- **Runtime**: Bun
- **Styling**: Tailwind CSS v4
- **Language**: TypeScript with strict configuration
- **Development**: Devenv for environment management
## Development Commands
### Getting Started
```bash
# Enter development environment
direnv allow # or devenv shell
# Install dependencies
bun install
```
### Running the Application
```bash
# Development server
bun dev
# Build for production
bun build
# Start production server
bun start
```
### Environment Setup
The project uses devenv for environment management. Key environment variables:
- `ANTHROPIC_BASE_URL`: Set to "https://api.moonshot.ai/anthropic"
- `ANTHROPIC_AUTH_TOKEN`: API key for LLM integration (already configured)
- `TWITTER_COKI`: Cookie used on the x.com frontend.
## Project Structure
```
app/
├── src/
│ ├── pages/ # Waku pages (file-based routing)
│ │ ├── _layout.tsx # Root layout component
│ │ ├── index.tsx # Home page
│ │ └── about.tsx # About page
│ ├── components/ # React components
│ │ ├── counter.tsx # Client-side counter example
│ │ ├── header.tsx # Site header
│ │ └── footer.tsx # Site footer
│ └── styles.css # Global styles with Tailwind
├── public/ # Static assets
└── package.json # Dependencies and scripts
```
## Architecture Notes
- Uses Waku framework with React Server Components
- File-based routing in `src/pages/` directory
- Static rendering configured for all pages
- Client components use `'use client'` directive
- Tailwind CSS v4 configured with PostCSS
|