Set up Skippy
Clone the repository, then create a .env file when you have a
public address:
PUBLIC_URL=https://notes.example.com
Choose the Compose command that fits your installation.
| Setup | Includes | Command |
|---|---|---|
| Standard | Skippy with SQLite and local attachment storage | docker compose up -d |
| Transcription and image text | Standard setup, Whisper, and Tesseract | docker compose -f docker-compose.yml -f docker-compose.simple.yml up -d |
| Full stack | Transcription, image text, and Garage S3 storage | docker compose -f docker-compose.yml -f docker-compose.simple.yml -f docker-compose.all.yml up -d |
Open Skippy at http://localhost:8787, or the address in
PUBLIC_URL.
Full-stack credentials
The full stack requires Garage credentials in .env before its
first start:
access_key="GK$(openssl rand -hex 16)"
secret_key="$(openssl rand -hex 32)"
printf 'GARAGE_RPC_SECRET='; openssl rand -hex 32
printf 'S3_ACCESS_KEY=%s\n' "$access_key"
printf 'GARAGE_DEFAULT_ACCESS_KEY=%s\n' "$access_key"
printf 'S3_SECRET_KEY=%s\n' "$secret_key"
printf 'GARAGE_DEFAULT_SECRET_KEY=%s\n' "$secret_key"
Copy the output into .env.
Install on a device
These commands install Skippy directly from a development machine. They do not publish it to an app store.
Android
Enable USB debugging, connect the device, then run:
cd app
flutter devices
flutter run --release -d <android-device-id>
iPhone or iPad
Use macOS with Xcode, enable Developer Mode on the device, and select your
Apple signing team in app/ios/Runner.xcworkspace. Then connect the
device and run:
cd app
flutter devices
flutter run --release -d <ios-device-id>
An app installed with a free Apple developer account needs refreshing every seven days.
Documentation site
The documentation container is included in the base Compose file:
docker compose up -d docs
Open it at http://localhost:8123. Set DOCS_PORT to
use a different host port.