Bindle is a modern file sharing platform built with Go and Svelte. It provides a simple, secure way to upload and share files through a clean web interface.
Clone the repository:
git clone https://github.com/nuuner/bindle.git
cd bindle
Create a .env
file in the bindle-server
directory:
# local filesystem
FILESYSTEM_PATH=./files
UPLOAD_LIMIT_MB_PER_DAY=1000
or
# S3
S3_BUCKET=my-bucket
S3_KEY_ID=001a2b3c4d5e6f7g8h9i0j
S3_APP_KEY=K001AbCdEfGhIjKlMnOpQrStUvWxYz
S3_REGION=us-east-1
S3_ENDPOINT=https://s3.us-east-1.amazonaws.com
UPLOAD_LIMIT_MB_PER_DAY=1000
.env
file in the bindle-client
directory:[email protected]
docker compose up --build
The application will be available at http://localhost:3001
.
cd bindle-client
npm install
npm run dev
cd bindle-server
go run cmd/server/main.go
The project includes a Docker configuration for easy deployment. Build and run using:
docker compose up --build -d
GPLv3
Contributions are welcome! Please feel free to submit a Pull Request.