asepharyana 9a48fbf227 fix: satisfy deploy lint gate for S3 compatibility work
- Apply Biome organize-import/formatting fixes across changed S3 files
- Replace remaining string concatenations with template literals for lint
- Make home page inline handlers explicit via window.* and add button types
- Clean S3 auth lint issues with dot-property access and optional chaining
- Keep GetObject proxy and production/S3 SDK tests passing

Verification:
- bun run lint (0 errors, 1 CSS specificity warning)
- S3_SECRET_KEY=<env> bun test test/production-e2e.test.ts (29 pass)
- S3_SECRET_KEY=<env> bun test test/s3-sdk.test.ts (20 pass)
- bun test test/s3-auth.test.ts (5 pass)
2026-07-07 03:07:51 +07:00

Telegram Bot Uploader Backend

Backend production-ready untuk upload file ke Telegram yang tersimpan di private channel.

Setup

  1. Install PostgreSQL database
  2. Buat database: createdb telegram_uploader
  3. Setup environment: cp .env.example .env
  4. Edit .env dengan nilai yang sesuai
  5. Create table: bun run db:migrate
  6. Install dependencies: bun install

Telegram Private Channel Setup

  1. Buat private channel Telegram
  2. Tambah bot sebagai admin di channel
  3. Dapatkan STORAGE_CHANNEL_ID (misalnya -1001234567890)

Running

bun run dev      # Development mode
bun run start    # Production mode

API Endpoints

  • POST /api/upload - Upload file
  • GET /f/:public_id - Download redirect
  • GET /file/:public_id/info - File metadata
  • GET /health - Health check

FAQ

URL permanen maksudnya apa? URL backend tetap permanen: https://tele.asepharyana.my.id/f/{public_id} Ini berarti URL service Anda fix, bukan jaminan file Telegram abadi.

Testing

Gunakan bot Telegram untuk upload, atau upload API langsung via HTTP.

S
Description
FileDrop Telegram-backed S3-compatible uploader
Readme
995 KiB
Languages
TypeScript 89.5%
HTML 8%
Shell 1.8%
Nix 0.5%
Dockerfile 0.2%