docs/building.md
Rama main · réplica de lectura del repositorio original.
# Building from source
[Documentation](README.md) / Building from source
You need [Node.js](https://nodejs.org/) and the
[Rust and Tauri toolchain](https://tauri.app/start/prerequisites/) for your
platform.
## Commands
```bash
# Install dependencies
npm install
# Start the app in development mode
npm run tauri dev
# Type-check and build the frontend
npm run build
# Run the unit tests
npm test
# Build the installers for the current platform
# (Windows: NSIS and MSI, Linux: AppImage and .deb)
npm run tauri build
```
`npm run dev` starts only the Vite frontend, without the native shell. That
is fine for pure UI work.
## Extra requirements for the Rust side
The voice feature uses `whisper-rs`, which needs LLVM and libclang at build
time.
- **Windows:** install LLVM **21 or older**, for example
`winget install LLVM.LLVM --version 18.1.8`. LLVM 22 generates bindings that
fail the layout checks of `whisper-rs-sys`.
- **Linux:** `libasound2-dev`, `libclang-dev` and `cmake`.
## Tech stack
| Layer | Technology |
|---|---|
| App shell | [Tauri 2](https://tauri.app/) |
| UI | React 18, TypeScript, Vite |
| Editor engine | [TipTap](https://tiptap.dev/) (ProseMirror) with `tiptap-markdown` |
| Styling | Tailwind CSS, shadcn/ui, lucide-react icons |
| State and i18n | Zustand, i18next (10 languages) |
| AI providers | Ollama, Jan.ai, LM Studio (local), OpenAI, Anthropic, Mistral (cloud) |
## Server Edition
The same frontend also builds for the browser (`npm run build:web`) and is
served by the server in `/server`. See the
[Server Edition guide](../server/docs/README.md) and its
[development page](../server/docs/development.md).
## Contributing
Issues and pull requests are welcome. If you want to add an AI provider, the
adapter design in `src/lib` keeps that contained.
[Back to the documentation index](README.md)