docs(readme): update project overview

This commit is contained in:
2025-10-01 19:25:55 -04:00
parent 1fc67d7e5c
commit dc62f71aec

View File

@@ -1,7 +1,71 @@
# Tauri + SvelteKit + TypeScript
# shark
This template should help get you started developing with Tauri, SvelteKit and TypeScript in Vite.
Desktop music management application written in Typescript.
## Recommended IDE Setup
## Tech Stack
[VS Code](https://code.visualstudio.com/) + [Svelte](https://marketplace.visualstudio.com/items?itemName=svelte.svelte-vscode) + [Tauri](https://marketplace.visualstudio.com/items?itemName=tauri-apps.tauri-vscode) + [rust-analyzer](https://marketplace.visualstudio.com/items?itemName=rust-lang.rust-analyzer).
- [Tauri 2](https://v2.tauri.app/start/) (desktop runtime)
- [SvelteKit 2](https://svelte.dev/docs/kit/introduction) with [Svelte 5](https://svelte.dev/docs/svelte/overview) (frontend)
- TypeScript
- [Bun](https://bun.sh/) (package manager)
- Not-very-faithful Windows 98-style UI theme ([98-dark.css](https://github.com/markuryy/98-dark.css))
## Setup
### Prerequisites
- Bun installed
- Rust toolchain (for Tauri)
### Installation
```bash
bun install
```
### Configuration
1. Run the app: `bun run tauri dev`
2. Go to Settings and configure:
- Music folder (where downloads will be saved)
- Playlists folder (for .m3u8 files)
- Download settings (format, concurrency, overwrite behavior)
## Development
```bash
# Run dev server (hot reload)
bun run tauri dev
# Build for production
bun run tauri build
# Type checking
bun run check
```
## How It Works
### Architecture
```
src/
├── routes/ # SvelteKit pages
│ ├── library/ # Local library view
│ ├── services/ # Downloads and metadata services UI
│ ├── downloads/ # Download queue UI
│ └── settings/ # App settings
├── lib/
│ ├── services/ # Downloads and metadata services
│ ├── library/ # Library scanner, album/playlist loaders
│ ├── stores/ # Svelte stores (settings, auth, queue)
│ └── types/ # TypeScript type definitions
src-tauri/
├── capabilities/ # Tauri security permissions
└── tauri.conf.json # Tauri configuration
```
## License
This repo has been made source available. It is not licensed under a single open source license. Check upstream libraries for license details.