尚未收集仓库信息。
尚未检测到更新。GitHub 发布版本后会显示在这里。
制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗A self-hosted file-sharing application with a Go backend and Svelte frontend. Create password-protected, expiring shares, set download limits, and let others upload files to you via reverse shares.
my-project-files) or let one be auto-generatedREQUIRE_2FA); mutually exclusive with SSO/OIDC/#/settings/api-keysshare.created, file.upload.completed, etc.) with HMAC-SHA256 signed deliveries, retry logic, and a delivery logLoginRateLimiter (5 req/min) is applied to POST /auth/login, RegisterRateLimiter (3 req/min) to POST /auth/register, and TFAVerifyRateLimiter (5 req/min) to the 2FA verification endpoints. The APIRateLimiter (60 req/min) helper is available in internal/middleware/ratelimit.go but not wired up by default. When running behind a reverse proxy, configure TRUSTED_PROXIES so that forwarded client IPs are used for rate limiting instead of the proxy's address — see Networking / Reverse Proxy.All 34 screenshots (light and dark variants for every page) live in the
screenshots/directory and are regenerated automatically viamake screenshots.
docker run -d \
-p 8080:8080 \
-v enlace-data:/app/data \
-v enlace-uploads:/app/uploads \
-e BASE_URL=http://localhost:8080 \
ghcr.io/amalgamated-tools/enlace:latest
Open http://localhost:8080 and register your first user.
First admin bootstrap: The first user to register on a fresh instance is automatically granted admin privileges. This also applies to the first user created via OIDC sign-in when SSO is enabled. Subsequent registrations create regular users. Once an admin account exists, additional admins can be created or promoted via the admin panel or
POST /api/v1/admin/users.
For Docker Compose setup and production builds, see the Deployment guide.
| Topic | Link |
|---|---|
| Configuration | docs/configuration.md |
| API Reference | docs/api.md |
| Deployment | docs/deployment.md |
| Development | docs/development.md |
| OIDC / SSO | docs/oidc.md |
| Architecture | docs/architecture.md |
| Contributing | CONTRIBUTING.md |
| Code of Conduct | CODE_OF_CONDUCT.md |
cmd/enlace/ # main entrypoint
internal/
config/ # environment-based configuration
crypto/ # AES-GCM encryption helpers (secrets at rest)
database/ # SQLite helpers & migrations
handler/ # HTTP handlers and router (chi)
integration/ # integration tests (//go:build integration)
middleware/ # auth and rate-limiting middleware
model/ # domain types (Share, File, User)
otel/ # structured logging setup (slog)
repository/ # data-access layer
service/ # business logic
storage/ # Storage interface + local & S3 implementations
telemetry/ # two-level anonymous telemetry (mandatory boot ping + opt-in event telemetry)
frontend/ # Svelte + TypeScript + Vite app
e2e/ # Playwright end-to-end tests
docs/ # documentation and auto-generated OpenAPI specs
scripts/ # release and utility scripts
Enlace is released under the MIT License.