aboutsummaryrefslogtreecommitdiff
path: root/README
blob: 81b3cf52a0610d8b7b259db61c67a325961ec5e4 (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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
# YACE

**Yet Another Code Editor** — A lightweight, Tauri-based code editor built with CodeMirror 6, React, and TypeScript.

## Features

- Multi-tab editing with syntax highlighting for TypeScript, JavaScript, Rust, Python, HTML, CSS, JSON, Markdown
- File explorer with tree view, folder open/create
- Custom Tokyo Night syntax theme (soft, muted colors)
- Dark & light themes
- Command palette (`Ctrl+P`)
- Untitled file support — create and edit without a workspace folder
- Auto-save, word wrap, ruler, configurable font/tab size
- Custom title bar, sidebar, status bar, and context menus
- Resizable side panel

## Keyboard Shortcuts

| Shortcut | Action |
|----------|--------|
| `Ctrl+N` | New untitled file |
| `Ctrl+O` | Open file |
| `Ctrl+Shift+O` | Open folder |
| `Ctrl+S` | Save file |
| `Ctrl+W` | Close tab |
| `Ctrl+P` | Command palette |
| `Ctrl+B` | Toggle sidebar |
| `Ctrl+Tab` / `Ctrl+Shift+Tab` | Next / previous tab |

## Supported Languages

`.ts`, `.tsx`, `.js`, `.jsx`, `.mjs`, `.cjs`, `.rs`, `.json`, `.md`, `.mdx`, `.html`, `.htm`, `.css`, `.py`

## Getting Started

```bash
# Install dependencies
npm install

# Run in browser (Vite dev server)
npm run dev

# Run as desktop app
npm run tauri dev
```

## Build

```bash
npm run build          # Type-check + Vite build
npm run tauri build    # Production desktop build
```

## Tech Stack

- **Frontend:** React 18, TypeScript, Zustand, Tailwind CSS, CodeMirror 6
- **Desktop:** Tauri 1.x, Rust, Tokio
- **Build:** Vite

## Settings

Configurable via the gear icon in the activity bar: font size, tab size, word wrap, line numbers, ruler, theme, auto-save.

## Architecture

```
┌──────────────────────────────┐
│ TitleBar                     │
├──────┬───────────────────────┤
│      │ TabsBar               │
│ Acti │ Breadcrumbs           │
│ vity ├───────────────────────┤
│ Bar  │ YaceEditor            │
│      │ (CodeMirror 6)        │
│      │                       │
│ Side │                       │
│ Panel│                       │
├──────┴───────────────────────┤
│ StatusBar                    │
└──────────────────────────────┘
```