chore(project): initialize cargo workspace, CI workflows, and package config
This commit is contained in:
@@ -1 +1,50 @@
|
||||
# CleanCopy
|
||||
|
||||
CleanCopy is a Windows utility that sits in the system tray, automatically sanitizing your clipboard text on trigger. Designed with a focus on privacy, ergonomics, and performance (it is written in Rust btw).
|
||||
|
||||
## Repository Structure
|
||||
|
||||
```
|
||||
clean-copy/
|
||||
├── app/ # Tauri desktop app (React frontend + Rust backend)
|
||||
├── shared/ # Shared Rust crate (types, licensing, cleansing logic)
|
||||
├── server/ # Axum web server (landing page, activation API, updater)
|
||||
├── licensing/ # Ed25519 key files (gitignored)
|
||||
├── licensing_profiles.json # Profile-based licensing config (compiled into binary)
|
||||
├── Cargo.toml # Workspace root
|
||||
└── package.json # Thin npm wrapper (delegates to app/)
|
||||
```
|
||||
|
||||
## Quick Start
|
||||
|
||||
### Prerequisites
|
||||
|
||||
- **Node.js** (v18+)
|
||||
- **Rust & Cargo** (latest stable)
|
||||
- **Windows C++ Build Tools** (for Tauri)
|
||||
|
||||
### Install & Run
|
||||
|
||||
```bash
|
||||
npm install # from repo root, installs app/ dependencies
|
||||
npm run tauri dev # starts Vite dev server + Tauri tray app
|
||||
```
|
||||
|
||||
### Run Tests
|
||||
|
||||
```bash
|
||||
cargo test --workspace # Rust tests (shared + app)
|
||||
cd app && npm test # Frontend tests (Vitest)
|
||||
```
|
||||
|
||||
### Lint & Format
|
||||
|
||||
```bash
|
||||
cd app && npm run lint # ESLint
|
||||
cd app && npm run format:check # Prettier
|
||||
```
|
||||
|
||||
## Documentation
|
||||
|
||||
- **[app/README.md](app/README.md)** — Desktop app: features, architecture, licensing system, CLI tools
|
||||
- **[server/README.md](server/README.md)** — Web server: routes, local dev, Docker deployment
|
||||
|
||||
Reference in New Issue
Block a user