mirror of
https://github.com/markuryy/shark.git
synced 2025-12-12 19:51:01 +00:00
docs(readme): update project overview
This commit is contained in:
72
README.md
72
README.md
@@ -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.
|
||||||
Reference in New Issue
Block a user