A simple web application for sharing and storing files online. Single binary, no CGO, SQLite-backed, with built-in analytics.
- Go 1.25.2+
-
Clone the repository:
git clone https://github.com/jere-mie/fileorbit.git cd fileorbit -
Install dependencies:
go mod tidy
-
Create your config:
cp example.env .env
Edit
.envto set your admin password, port, and other options. -
Run the application:
go run . -
Visit http://localhost:8080 (or whatever port you specified in
.env).
# Run database migrations manually (also runs automatically on startup)
./fileorbit migrate
# Print the current version
./fileorbit versionBuild for your current platform:
go build -o bin/fileorbit .Cross-compile for all supported platforms:
# PowerShell
./scripts/build.ps1# Bash
./scripts/build.shBinaries are output to the bin/ directory.
The release scripts use the GitHub CLI to create a GitHub release from the version in version.txt and upload all binaries from bin/:
# PowerShell
./scripts/release.ps1# Bash
./scripts/release.shYou can use Air for live reloading during development:
go install github.com/air-verse/air@latest
airAll configuration is done via environment variables (or a .env file):
| Variable | Default | Description |
|---|---|---|
ADMIN_PASSWORD |
admin |
Password for the admin dashboard |
PORT |
8080 |
Server port |
HOST |
localhost |
Server bind address |
DATABASE_PATH |
openly.db |
Path to SQLite database file |
MIT - see LICENSE for details.
You can download a prebuilt binary directly from GitHub Releases without cloning the repo.
curl -Lo fileorbit https://github.com/jere-mie/fileorbit/releases/latest/download/fileorbit_linux_amd64
chmod +x fileorbitcurl -Lo fileorbit https://github.com/jere-mie/fileorbit/releases/latest/download/fileorbit_linux_arm64
chmod +x fileorbitcurl -Lo fileorbit https://github.com/jere-mie/fileorbit/releases/latest/download/fileorbit_darwin_arm64
chmod +x fileorbitcurl -Lo fileorbit https://github.com/jere-mie/fileorbit/releases/latest/download/fileorbit_darwin_amd64
chmod +x fileorbitInvoke-WebRequest -Uri "https://github.com/jere-mie/fileorbit/releases/latest/download/fileorbit_windows_amd64.exe" -OutFile "fileorbit.exe"| Platform | Architecture | Filename |
|---|---|---|
| Linux | amd64 | fileorbit_linux_amd64 |
| Linux | 386 | fileorbit_linux_386 |
| Linux | arm64 | fileorbit_linux_arm64 |
| Linux | arm | fileorbit_linux_arm |
| macOS | amd64 | fileorbit_darwin_amd64 |
| macOS | arm64 | fileorbit_darwin_arm64 |
| Windows | amd64 | fileorbit_windows_amd64.exe |
| Windows | 386 | fileorbit_windows_386.exe |
| Windows | arm64 | fileorbit_windows_arm64.exe |