Home
Softono
folderhost

folderhost

Open source TypeScript
216
Stars
9
Forks
1
Issues
3
Watchers
2 weeks
Last Commit

About folderhost

Your own private cloud in one executable. Share files, collaborate on code, and manage users without complex setup.

Platforms

Web Self-hosted Cloud Linux Windows

Languages

TypeScript

image

Go Language Latest Release License Downloads Docker pulls

Self-hosted cloud platform in a single binary - Share files, collaborate in real-time, and manage users with zero dependencies.

πŸš€ No Dependencies Required!

⚑ Lightweight: Windows / Linux ~19MB


πŸ–₯️ Screenshots

image
More Screenshots image image image image

πŸ“¦ Download & Run (Recommended)

⚠️ Beta Notice: FolderHost is currently in beta. Some features may be incomplete or subject to change.


Download Latest Release

🐳 Docker

# Run container, you can access the files using docker volumes
  docker run -d \
    --name folderhost-server \
    -p 5000:5000 \
    -v folderhost_data:/app \
    --restart unless-stopped \
    mertjsx/folderhost:latest

πŸͺŸ Windows

# Download the .exe, then:
folderhost.exe

🐧 Linux

πŸš€ Just copy and paste this and folderhost will start working. It's around 17 mb for linux.


wget https://github.com/MertJSX/folderhost/releases/latest/download/folderhost-linux-amd64.tar.gz
tar -xzf folderhost-linux-amd64.tar.gz
chmod +x folderhost-linux-amd64

Run

./folderhost-linux-amd64


---

## πŸ“Š Why FolderHost?
**Lightweight alternative to Nextcloud** - Get the same file sharing features without the complexity.

| Feature | FolderHost | Nextcloud |
|---------|-----------|-----------|
| **Binary Size** | ~19MB | 200MB+ |
| **Dependencies** | None | PHP+Database |
| **Setup Time** | 30 seconds | 15+ minutes |
| Single Binary | βœ… | ❌ |
| Real-time Editing | βœ… | ❌ |
| Easy Setup | βœ… | ❌ |

---

## ✨ Features

### πŸš€ Core
- **Single Binary Deployment** - No dependencies, just run
- **High Performance** - Built with Go backend + React frontend
- **Real-time Collaboration** - Live code editing with Monaco Editor
- **Multi-user Support** - Permissions system

### πŸ”§ File Management
- Full file operations (upload, download, move, copy, rename)
- Chunked file uploads for large files
- Recovery bin with configurable limits
- Storage quota management per folder

### πŸ”’ Security & Monitoring
- JWT-based authentication
- Granular user permissions
- Audit logs for all activities
- Configurable storage limits


---

## βš™οΈ Configuration
> If you encounter any issues or have questions, please feel free to open an [issue](https://github.com/MertJSX/folderhost/issues) or provide feedback. Your input is highly appreciated!

On first run, a `config.yml` file will be created. Edit it to customize:

⚠️ **Important:** Change admin password before starting to use!

<details>
  <summary>Show config</summary>

  ```yml
#      _______   __   __
#     / _____/  / /  / /
#    / /__     / /__/ /
#   / ___/    / ___  /
#  / /       / /  / /
# /_/       /_/  /_/  By MertJSX
#
# Thanks for using my application!!! Please report if you catch any bugs!
# Here is the GitHub page of Folderhost: https://github.com/MertJSX/folderhost
#

# Port is required. Don't delete it!
port: 5000

# This is folder path. You can change it, but don't delete.
folder: "./host"

# Limit of the folder. Examples: 10 GB, 300 MB, 5.5 GB, 1 TB...
# You can remove it if you trust users.
storage_limit: "10 GB"

# This is secret json web token key to create tokens. If you don't have one, it will be autogenerated.
secret_jwt_key: "auto"

# Admin account properties
admin:
  username: "admin"
  password: "123"
  email: "[email protected]"
  scope: "" # for example "/yourfolder", this attribute will set a specific location for user and user can't escape it
  permissions:
    read_directories: true
    read_files: true
    create: true
    change: true
    delete: true
    move: true
    download: true
    upload: true
    rename: true
    extract: true
    archive: true
    copy: true
    read_recovery: true
    use_recovery: true
    read_users: true
    edit_users: true
    read_logs: true

# Holds deleted files. Accidentally, you might delete files that you don't want to delete.
recovery_bin: true

# Optionally you can limit recovery_bin storage. You can remove it if you want.
bin_storage_limit: "5 GB"

# Enable/Disable logging activities
log_activities: true

# Clears logs automatically after some days. If you want to disable it set the value to 0.
clear_logs_after: 7 # Days

🎯 Default Access

Once running, open your browser to:

http://localhost:5000

Default credentials: admin / 123 (⚠️ Change immediately!)

πŸ“– View All Releases β€’ πŸ› Report Issues

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.


πŸ“ License

GPL-3.0 License


πŸ™ Credits

Built with ❀️ by MertJSX

Tech Stack:

  • Backend: Go
  • Frontend: React + TypeScript + Vite
  • Editor: Monaco Editor
  • Database: SQLite