# quickstart A zero-configuration Rust CLI for instantly serving any local directory over HTTP. ## Features - Static file serving with `index.html` fallback and directory listings - Zero-configuration: serve the current directory immediately with sensible defaults - Flexible options to override directory, port, and bind address - Graceful shutdown on Ctrl+C - Tiny release binary (~650KB) ## About `quickstart` takes any local directory and serves it over HTTP ***instantly***, letting you: - Bypass CORS restrictions when loading local files in browsers - Easily test static websites or single-page apps without complex server configuration - Quickly share files over your local network ## Installation ### Windows - Download the latest executable from the [releases page](https://git.caileb.com/Caileb/quickstart/releases) and double-click it to auto-install; then follow the [Add to PATH](#add-to-path) instructions below, and delete the executable from your Downloads folder. ### From Source ```bash git clone https://git.caileb.com/Caileb/quickstart.git cd quickstart cargo build --release ``` ### Auto-Install Command Use the built-in installer to copy `quickstart` into your user-local bin: ```bash quickstart install ``` By default, this installs to: - **Unix/macOS**: `$HOME/.quickstart/bin` - **Windows**: `$env:USERPROFILE\.quickstart\bin` (same as double-click) ### Add to PATH `quickstart` automatically attempts to add itself to your PATH on first run. If this succeeds, you'll see a confirmation message. **You may need to restart your terminal/IDE** for PATH changes to take effect. If automatic setup fails, manually ensure your local bin directory is in your PATH: **Windows (PowerShell)** ```powershell $env:Path += ";$env:USERPROFILE\.quickstart\bin" ``` **Unix/macOS (bash/zsh)** ```bash export PATH="$HOME/.quickstart/bin:$PATH" ``` ## Usage ```bash quickstart [OPTIONS] ``` ## Examples Serve the current directory on localhost port 8080: ```bash quickstart # Serving C:\Users\Caileb\Downloads at http://127.0.0.1:8080 ``` Serve the `public` directory on port 3000: ```bash quickstart -d public -p 3000 ``` Serve on all network interfaces (for LAN sharing): ```bash quickstart -b 0.0.0.0 -p 8080 ```