Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fele-systems/upp
Simple app for simple file uploads
https://github.com/fele-systems/upp
Last synced: about 1 month ago
JSON representation
Simple app for simple file uploads
- Host: GitHub
- URL: https://github.com/fele-systems/upp
- Owner: fele-systems
- License: gpl-3.0
- Created: 2023-12-12T01:29:53.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-06-25T01:53:30.000Z (6 months ago)
- Last Synced: 2024-06-25T02:57:21.789Z (6 months ago)
- Language: C++
- Size: 40 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# upp
Upp is a lightweight single page web application where you can enable upload areas to your server.
You can create upload areas available for everyone to use, or protect with a passphrase.## Installing
Download the latest version from this repository's [release](https://github.com/fele-systems/upp/releases) page and extract it.
```shell
wget -nv https://github.com/fele-systems/upp/releases/download/v1.0-alpha/upp.zip
unzip upp.zip
cd upp
chmod +x upp
```## Building from source
First, make sure you have conan and CMake installed.
```shell
wget -O conan-ubuntu-64.deb https://github.com/conan-io/conan/releases/download/2.4.1/conan-2.4.1-amd64.deb
dpkg -i conan-ubuntu-64.deb
rm conan-ubuntu-64.deb
```If you haven't created your conan profile, execute `conan profile detect` before these steps.
```shell
conan install . -of build --build=missing -s build_type=Release
cmake -B ./build -DCMAKE_TOOLCHAIN_FILE=build/conan_toolchain.cmake -DCMAKE_BUILD_TYPE=Release
cmake --build ./build --config Release
```Then run it with `build/upp`.
## Getting started
Make sure you've a file named upp.yaml in the same directory as the executable (and the current working directory). This file will tell upp where it should store the uploaded files.
Sample configuration:
```yaml
server:
base_path: ./
port: 80
dirs:
- path: /tmp
passphrase:
- path: uploads/uploaded.txt
passphrase: uploadin
file: true
```The upload areas can be a directory, which several files can be stored, or can be a file (`file: true`), in which only a sigle file can exist and it will always be overrided when the next upload comes.
The `base_path` is the parent path of any relative path'ed upload areas (like the uploads.uploaded.txt upload area above).
The `passphrase` is a password that is required in order to upload files.