Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 15 additions & 13 deletions src/content/docs/quickstart.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ Execute commands in your Sprite:
sprite exec echo "Hello, Sprites!"

# Run multiple commands
sprite exec "cd /tmp && ls -la"
sprite exec bash -c "cd /tmp && ls -la"

# Open an interactive shell
sprite console
Expand All @@ -88,15 +88,15 @@ Your Sprite comes pre-configured with common development tools (Node.js, Python,
See what's already installed and ready to use:

```bash
sprite exec "node --version && python3 --version && go version"
sprite exec bash -c "node --version && python3 --version && go version"
```

### Install a package

Install dependencies just like you would locally—they'll stick around:

```bash
sprite exec "pip install requests"
sprite exec pip install requests
```

### Create and read files
Expand All @@ -105,12 +105,12 @@ Files you create persist across sessions. Write once, read anytime:

```bash
# Create a file
sprite exec "echo 'Hello from my persistent Sprite!' > /home/sprite/greeting.txt"
sprite exec bash -c "echo 'Hello from my persistent Sprite!' > /home/sprite/greeting.txt"

# Disconnect, get coffee, come back later...
# Everything is still there!
sprite exec "cat /home/sprite/greeting.txt"
sprite exec "python -c 'import requests; print(requests.__version__)'"
sprite exec cat /home/sprite/greeting.txt
sprite exec python -c "import requests; print(requests.__version__)"
```

Unlike containers that reset on each run, your Sprite keeps your installed packages, files, and entire filesystem intact.
Expand All @@ -121,17 +121,19 @@ Every Sprite has a unique HTTP URL and can serve traffic. This makes it perfect

### Serve HTTP

Start a simple Python server and get your public URL:
First, get your Sprite's public URL:

```bash
# Start a simple HTTP server on port 8080
sprite exec "python -m http.server 8080 &"

# Get your Sprite's public URL
sprite url
```

Visit the URL in your browser—you'll see Python's directory listing page. Your Sprite automatically routes HTTP traffic to port 8080 and wakes up to handle requests.
Then start a simple Python server:

```bash
sprite exec python -m http.server 8080
```

Visit the URL in your browser—you'll see Python's directory listing page. Press `Ctrl+C` to stop the server when you're done. Your Sprite automatically routes HTTP traffic to port 8080 and wakes up to handle requests.

<Callout type="info">
By default, your Sprite's URL requires authentication. To make it publicly accessible, run:
Expand All @@ -140,7 +142,7 @@ By default, your Sprite's URL requires authentication. To make it publicly acces
sprite url update --auth public
```

The default `sprite` auth mode allows access using a Sprite token with Bearer authentication.
The `default` auth mode requires a Sprite token with Bearer authentication.
</Callout>

### Test on-demand wake-up
Expand Down