release
This commit is contained in:
138
README.md
Normal file
138
README.md
Normal file
@@ -0,0 +1,138 @@
|
||||
# Lunar Code
|
||||
|
||||
A lightweight, VSCode-inspired desktop code editor built with Tauri 2, React, TypeScript, CodeMirror 6, and shadcn/ui.
|
||||
|
||||
## Install
|
||||
|
||||
### Arch Linux (recommended)
|
||||
|
||||
Download `lunar-code-0.1.0-1-x86_64.pkg.tar.zst` from the [latest release](https://github.com/luna/lunar-code/releases/latest), then:
|
||||
|
||||
```bash
|
||||
sudo pacman -U lunar-code-0.1.0-1-x86_64.pkg.tar.zst
|
||||
```
|
||||
|
||||
This installs the binary to `/usr/bin/lunar-code` and adds a `.desktop` entry so it shows up in your app launcher.
|
||||
|
||||
### Debian/Ubuntu
|
||||
|
||||
Download `Lunar.Code_0.1.0_amd64.deb` from the [latest release](https://github.com/luna/lunar-code/releases/latest), then:
|
||||
|
||||
```bash
|
||||
sudo dpkg -i Lunar.Code_0.1.0_amd64.deb
|
||||
```
|
||||
|
||||
### Fedora/RHEL
|
||||
|
||||
Download `Lunar.Code-0.1.0-1.x86_64.rpm` from the [latest release](https://github.com/luna/lunar-code/releases/latest), then:
|
||||
|
||||
```bash
|
||||
sudo rpm -i Lunar.Code-0.1.0-1.x86_64.rpm
|
||||
```
|
||||
|
||||
### Portable binary
|
||||
|
||||
Download the `lunar-code` binary from the release, make it executable, and run:
|
||||
|
||||
```bash
|
||||
chmod +x lunar-code
|
||||
./lunar-code
|
||||
```
|
||||
|
||||
## Build from Source
|
||||
|
||||
### Prerequisites
|
||||
|
||||
#### Arch Linux
|
||||
|
||||
```bash
|
||||
sudo pacman -S --needed \
|
||||
webkit2gtk-4.1 \
|
||||
base-devel \
|
||||
curl wget file openssl \
|
||||
appmenu-gtk-module \
|
||||
libappindicator-gtk3 \
|
||||
librsvg \
|
||||
rust
|
||||
```
|
||||
|
||||
Also requires:
|
||||
- Node.js >= 18
|
||||
- pnpm (`npm install -g pnpm`)
|
||||
- Rust stable toolchain (`rustup default stable`)
|
||||
|
||||
#### Other platforms
|
||||
|
||||
See [Tauri prerequisites](https://v2.tauri.app/start/prerequisites/).
|
||||
|
||||
### Development
|
||||
|
||||
```bash
|
||||
pnpm install
|
||||
pnpm tauri dev
|
||||
```
|
||||
|
||||
### Build
|
||||
|
||||
```bash
|
||||
pnpm tauri build
|
||||
```
|
||||
|
||||
### Build Arch package
|
||||
|
||||
```bash
|
||||
makepkg -f
|
||||
sudo pacman -U lunar-code-0.1.0-1-x86_64.pkg.tar.zst
|
||||
```
|
||||
|
||||
## Features
|
||||
|
||||
- Integrated terminal (Ctrl+`)
|
||||
- File explorer with context menu and search filter
|
||||
- Editor tabs with drag reorder, dirty indicators, and unsaved changes confirmation
|
||||
- Split editor (Ctrl+\)
|
||||
- Find & replace across files (Ctrl+Shift+F)
|
||||
- Go to line (Ctrl+G)
|
||||
- CodeMirror 6 editor with syntax highlighting for 18+ languages
|
||||
- Command palette (Ctrl+Shift+P)
|
||||
- Quick file open (Ctrl+P)
|
||||
- Find in file (Ctrl+F)
|
||||
- Dark and light themes
|
||||
- Custom CSS theme support
|
||||
- Auto-save
|
||||
- Recent workspaces
|
||||
- Welcome tab with shortcuts reference
|
||||
- Resizable sidebar and terminal panels
|
||||
- Status bar with language selector, cursor position, encoding
|
||||
- Settings: font size, tab size, word wrap, theme, auto-save, custom CSS
|
||||
|
||||
## Supported Languages
|
||||
|
||||
JavaScript/JSX, TypeScript/TSX, Python, Rust, C/C++, Java, Go, PHP, SQL, HTML, CSS, JSON, XML, Markdown, YAML, Shell/Bash, TOML, Dockerfile
|
||||
|
||||
## Keyboard Shortcuts
|
||||
|
||||
| Shortcut | Action |
|
||||
|---|---|
|
||||
| Ctrl+S | Save |
|
||||
| Ctrl+Shift+S | Save All |
|
||||
| Ctrl+W | Close Tab |
|
||||
| Ctrl+P | Quick Open |
|
||||
| Ctrl+Shift+P | Command Palette |
|
||||
| Ctrl+B | Toggle Sidebar |
|
||||
| Ctrl+F | Find in File |
|
||||
| Ctrl+G | Go to Line |
|
||||
| Ctrl+Shift+F | Search in Files |
|
||||
| Ctrl+` | Toggle Terminal |
|
||||
| Ctrl+\ | Split Editor |
|
||||
| Ctrl+Z | Undo |
|
||||
| Ctrl+Shift+Z | Redo |
|
||||
|
||||
## Tech Stack
|
||||
|
||||
- **Tauri 2** - Rust desktop shell
|
||||
- **React 18** + TypeScript + Vite
|
||||
- **shadcn/ui** - UI components (Radix + Tailwind)
|
||||
- **CodeMirror 6** - Code editor core
|
||||
- **xterm.js** - Integrated terminal
|
||||
- **Lucide React** - Icons
|
||||
Reference in New Issue
Block a user