https://github.com/midnighttale/hynse-upload
https://github.com/midnighttale/hynse-upload
Last synced: over 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/midnighttale/hynse-upload
- Owner: MidnightTale
- License: mit
- Created: 2024-07-12T00:59:19.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-08-05T22:30:42.000Z (almost 2 years ago)
- Last Synced: 2024-10-25T12:01:36.732Z (over 1 year ago)
- Language: JavaScript
- Homepage: https://upload.hynse.net
- Size: 2.01 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://github.com/MidnightTale/hynse-upload/blob/main/public/img/banner.png)
> [!WARNING]
> This project is currently under non-active development. While it's functional, some features may be incomplete or subject to change. Use with caution in production environments.
# ๐ Hynse Upload
Hynse Upload is a robust and efficient file upload server built with Next.js and Bun. It offers a seamless file sharing experience with temporary storage and easy management.




> [!NOTE]
> Hynse Upload is designed for temporary file storage. Files are automatically deleted after a set period.
## โจ Features
- ๐ Drag-and-drop file uploads
- โณ ~~Temporary file storage with Redis~~ on rewrite
- ๐ Asynchronous file handling
- ๐งต ~~Multithreaded server-side processing~~ on rewrite
- ๐ก๏ธ ~~Rate limiting to prevent abuse~~ on rewrite
- ๐ Comprehensive logging system
## ๐ Getting Started
> [!IMPORTANT]
> Ensure you have Redis installed and running on your system before starting the application.
1. **Clone the repository**
```bash
git clone https://github.com/MidnightTale/hynse-upload.git
cd hynse-upload
```
2. **Install dependencies**
```bash
bun install
```
3. **Set up Redis**
Ensure Redis is installed and running on your system.
4. **Configure the application**
Edit `config.js` to set your desired options.
5. **Run the development server**
```bash
bun --bun run dev
```
6. **Open the application**
Visit [http://localhost:3000](http://localhost:3000) in your browser.
> [!CAUTION]
> Be careful when modifying the `config.js` file. Incorrect settings may cause the application to malfunction.
## ๐ API Routes
### Custom Server Routes
| Method | Route | Description |
|--------|-------|-------------|
| POST | `/api/upload` | Upload files |
| GET | `/d/:fileId` | Download a file by ID |
> [!NOTE]
> The custom server routes are handled directly by Express, bypassing Next.js routing.
## ๐ป CLI Commands
Run administrative commands using:
```bash
node cli.js [command]
```
> [!WARNING]
> Some CLI commands may permanently delete files or clear data. Use with caution.
## ๐ค Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
## ๐ License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.