|
|
|
# anssxustawai
|
|
|
|
A Not Shitty ShareX Upload Server That Actually Works As Intended (Pronounced "an-zoo-sta-why")
|
|
|
|
|
|
|
|
## Features
|
|
|
|
|
|
|
|
- [x] Token authorization via HTTP `Authorization` header
|
|
|
|
- [x] Upload images, videos, files
|
|
|
|
- [ ] Thumbnail support
|
|
|
|
- [x] Delete support
|
|
|
|
- [ ] Multiple database types (JSON, Mongo, MySQL, PostgreSQL, etc.)
|
|
|
|
- [ ] Multiple access types (original, mixed-case alphanumeric, [ZWS](https://zws.im), etc. Currently uses ZWS)
|
|
|
|
|
|
|
|
## Installation
|
|
|
|
|
|
|
|
1. First of all you must have Node.js 14 or later installed. It might work with Node.js 12 but just use 14.
|
|
|
|
2. Clone this repo using `git clone https://github.com/tycrek/anssxustawai.git && cd anssxustawai/`
|
|
|
|
3. Install the required dependencies using `npm i`
|
|
|
|
4. Configure `.env.example` *before* running if you wish to
|
|
|
|
5. Run `npm start` to start. This will:
|
|
|
|
- Automatically copy `.env.example` to `.env`
|
|
|
|
- Creates `data.json` & `auth.json`
|
|
|
|
- Generates your first authorization token & saves it to `auth.json`
|
|
|
|
|
|
|
|
## Configure ShareX
|
|
|
|
|
|
|
|
1. Add a new Custom Uploader in ShareX by going to `Destinations > Custom uploader settings...`
|
|
|
|
2. Under **Uploaders**, click **New** & name it whatever you like.
|
|
|
|
3. Set **Destination type** to `Image`, `Text`, & `File`
|
|
|
|
4. **Request** tab:
|
|
|
|
- Method: `POST`
|
|
|
|
- URL: `https://your.domain.name.here/`
|
|
|
|
- Body: `Form data (multipart/form-data)`
|
|
|
|
- File from name: `file`
|
|
|
|
- Headers:
|
|
|
|
- Name: `Authorization`
|
|
|
|
- Value: (the value provided by `npm start` on first run)
|
|
|
|
5. **Response** tab:
|
|
|
|
- URL: `$json:.resource$`
|
|
|
|
- Deletion URL: `$json:.delete$`
|
|
|
|
6. The file `sample_config.sxcu` can also be modified and imported to suit your needs
|