Skip to content

A webhook-driven document uploader that automatically downloads and sends PDFs to your reMarkable cloud through a web interface or API. Supports PDF conversion, compression, and organized file management.

License

Notifications You must be signed in to change notification settings

rmitchellscott/Aviary

Repository files navigation

Aviary Logo

A webhook-driven document uploader that automatically downloads and sends PDFs to your reMarkable tablet through a web interface or API. Compatible with both reMarkable Cloud and self-hosted rmfakecloud via rmapi, with features like automatic PDF conversion, compression, and organized file management.

Why the Name?

Aviary is a place where birds are kept, chosen to evoke sending documents into the clouds using avian couriers.

Features

Web Interface

  • Send documents from URL or local filesystem
  • Compression toggle for supported file types
  • Destination directory selector
  • Light/dark themes with system detection
  • Internationalization: 15 languages with auto-detected browser locale

Authentication & User Management

  • Single-user mode: Simple environment variable authentication
  • Multi-user mode: Database-backed user management with admin interface
    • Advanced auth: OIDC and proxy authentication support
    • Per-user API key management with expiration tracking
    • Password reset via e-mail

Document Processing

  • Webhook endpoint for HTTP integrations
  • Automatic PDF download with realistic browser User-Agent
  • PNG/JPEG to PDF conversion
  • Optional Ghostscript compression
  • Configurable conflict resolution (abort/overwrite/content-only)
  • Smart upload modes (simple or managed with retention via API)

Data Management (Mulit-User Mode)

  • SQLite (default) or PostgreSQL database support
  • Complete backup/restore system with cross-database migration
  • Per-user document storage and folder caching
  • Admin tools for user management and system settings

Screenshot

Aviary UI Screenshot

Quick Start

Simple Docker Setup

# Basic usage (pair through web interface)
docker run -d -p 8000:8000 -v ~/.config/rmapi:/root/.config/rmapi ghcr.io/rmitchellscott/aviary

Multi-User Setup

# Multi-user mode - first user becomes admin
docker run -d -p 8000:8000 \
  -e MULTI_USER=true \
  -v ./data:/data \
  ghcr.io/rmitchellscott/aviary

# Or pre-create admin user
docker run -d -p 8000:8000 \
  -e MULTI_USER=true \
  -e AUTH_USERNAME=admin \
  -e AUTH_PASSWORD=secure-password \
  -v ./data:/data \
  ghcr.io/rmitchellscott/aviary

Open http://localhost:8000 and pair with your reMarkable account.

Documentation

Data Management

Aviary includes comprehensive backup and restore capabilities.

Backup & Restore Features

  • Complete system backups: Database + user files + configurations
  • Cross-database migration: Migrate between SQLite and PostgreSQL
  • Large backup support: Background job processing for large datasets

Migration & Data Safety

When migrating from single-user to multi-user mode, Aviary automatically:

  • Creates initial admin user
  • Migrates existing cloud pairing, archived PDF files, and API key
  • Runs schema migrations for new features

See Data Management and Migration from Single-User Mode for more details.

Integrations

See API Reference for webhook details and integration examples.

Building from Source

See Deployment Guide for local build instructions and requirements.

About

A webhook-driven document uploader that automatically downloads and sends PDFs to your reMarkable cloud through a web interface or API. Supports PDF conversion, compression, and organized file management.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors 3

  •  
  •  
  •