You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -9,6 +9,17 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
9
9
-**Clear intent over clever code**: Prioritize readability and maintainability
10
10
-**Simple over complex**: Keep all implementations simple and straightforward - prioritize solving problems and ease of maintenance over complex solutions
11
11
12
+
## Claude Code Eight Honors and Eight Shames
13
+
14
+
-**Shame** in guessing APIs, **Honor** in careful research
15
+
-**Shame** in vague execution, **Honor** in seeking confirmation
16
+
-**Shame** in assuming business logic, **Honor** in human verification
17
+
-**Shame** in creating interfaces, **Honor** in reusing existing ones
18
+
-**Shame** in skipping validation, **Honor** in proactive testing
19
+
-**Shame** in breaking architecture, **Honor** in following specifications
20
+
-**Shame** in pretending to understand, **Honor** in honest ignorance
21
+
-**Shame** in blind modification, **Honor** in careful refactoring
22
+
12
23
## Project Overview
13
24
14
25
Pake transforms any webpage into a lightweight desktop app using Rust and Tauri. It's significantly lighter than Electron (~5M vs ~100M+) with better performance.
@@ -21,146 +32,43 @@ Pake transforms any webpage into a lightweight desktop app using Rust and Tauri.
21
32
22
33
## Development Workflow
23
34
24
-
### 1. Planning Phase
25
-
26
-
Break complex work into 3-5 stages:
35
+
1.**Understand**: Study existing patterns in codebase
36
+
2.**Plan**: Break complex work into 3-5 stages
37
+
3.**Test**: Write tests first (when applicable)
38
+
4.**Implement**: Minimal working solution
39
+
5.**Refactor**: Optimize and clean up
27
40
28
-
1. Understand existing patterns in codebase
29
-
2. Plan implementation approach
30
-
3. Write tests first (when applicable)
31
-
4. Implement minimal working solution
32
-
5. Refactor and optimize
33
-
34
-
### 2. Implementation Flow
35
-
36
-
**Understanding First:**
41
+
**Key Commands:**
37
42
38
43
```bash
39
-
# Explore codebase structure
40
-
find src-tauri/src -name "*.rs"| head -10
41
-
grep -r "window_config" src-tauri/src/
44
+
pnpm test# Run comprehensive test suite
45
+
pnpm run cli:build # Build CLI for testing
46
+
pnpm run dev # Development with hot reload
42
47
```
43
48
44
-
**Development Commands:**
45
-
46
-
```bash
47
-
# Install dependencies
48
-
pnpm i
49
-
50
-
# Development with hot reload (for testing app functionality)
51
-
pnpm run dev
52
-
53
-
# CLI development
54
-
pnpm run cli:dev
55
-
56
-
# Production build
57
-
pnpm run build
58
-
```
59
-
60
-
### 3. Testing and Validation
61
-
62
-
**Key Testing Commands:**
63
-
64
-
```bash
65
-
# Run comprehensive test suite (unit + integration + builder)
66
-
pnpm test
67
-
68
-
# Build CLI for testing
69
-
pnpm run cli:build
70
-
71
-
# Debug build for development
72
-
pnpm run build:debug
73
-
74
-
# Multi-platform testing
75
-
pnpm run build:mac # macOS universal build
76
-
```
77
-
78
-
**Testing Checklist:**
79
-
80
-
-[ ] Run `npm test` for comprehensive validation (35 tests)
- Do NOT use `PAKE_NO_CONFIG_OVERWRITE=1` - this environment variable is not implemented
51
+
- Always run `pnpm test` before committing
91
52
- For CLI testing: `node dist/cli.js https://example.com --name TestApp --debug`
92
-
-**For app functionality testing**: Use `pnpm run dev` to start development server with hot reload. This allows real-time testing of injected JavaScript changes without rebuilding the entire app.
93
-
- The dev server automatically reloads when you modify files in `src-tauri/src/inject/` directory
53
+
- For app functionality testing: Use `pnpm run dev` for hot reload
94
54
95
55
## Core Components
96
56
97
-
### CLI Tool (`bin/`)
98
-
99
-
-`bin/cli.ts` - Main entry point with Commander.js
This file is already in `.gitignore` and should not be committed to the repository.
78
78
79
-
**Root Cause**: macOS 26 Beta uses newer system frameworks that aren't yet supported by the current Xcode SDK (15.5). This configuration forces the build to use the compatible SDK version.
79
+
**Root Cause**: macOS 26 Beta uses newer system frameworks that aren't yet fully compatible with Tauri's dependencies. This configuration uses the universal SDK symlink which automatically points to your system's available SDK version.
80
80
81
81
### Common Build Issues
82
82
83
83
-**Rust compilation errors**: Run `cargo clean` in `src-tauri/` directory
84
+
-**`cargo` command not found after installation**: Pake CLI now reloads the Rust environment automatically, but if the issue persists reopen your terminal or run `source ~/.cargo/env` (macOS/Linux) / `call %USERPROFILE%\.cargo\env` (Windows) before retrying
84
85
-**Node dependency issues**: Delete `node_modules` and run `pnpm install`
85
86
-**Permission errors on macOS**: Run `sudo xcode-select --reset`
Copy file name to clipboardExpand all lines: README.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -29,6 +29,7 @@
29
29
-**Beginners**: Download ready-made [Popular Packages](#popular-packages) or use [Online Building](docs/github-actions-usage.md) with no environment setup required
30
30
-**Developers**: Install [CLI Tool](docs/cli-usage.md) for one-command packaging of any website with customizable icons, window settings, and more
31
31
-**Advanced Users**: Clone the project locally for [Custom Development](#development), or check [Advanced Usage](docs/advanced-usage.md) for style customization and feature enhancement
32
+
-**Troubleshooting**: Check [FAQ](docs/faq.md) for common issues and solutions
0 commit comments