diff --git a/README.md b/README.md index e7b23c3..1bab39a 100644 --- a/README.md +++ b/README.md @@ -6,18 +6,24 @@ ![Build](https://github.com/szabodanika/microbin/actions/workflows/rust.yml/badge.svg) ![crates.io](https://img.shields.io/crates/v/microbin.svg) [![Docker Image](https://github.com/szabodanika/microbin/actions/workflows/docker.yml/badge.svg)](https://hub.docker.com/r/danielszabo99/microbin) +[![Docker Pulls](https://img.shields.io/docker/pulls/danielszabo99/microbin?label=Docker%20pulls)](https://img.shields.io/docker/pulls/danielszabo99/microbin?label=Docker%20pulls) +[![Support Server](https://img.shields.io/discord/662017309162078267.svg?color=7289da&label=Discord&logo=discord&style=flat-square)](https://discord.gg/3DsyTN7T) MicroBin is a super tiny, feature rich, configurable, self-contained and self-hosted paste bin web application. It is very easy to set up and use, and will only require a few megabytes of memory and disk storage. It takes only a couple minutes to set it up, why not give it a try now? Install from Cargo: -`cargo install microbin` +```bash +cargo install microbin +``` And run with your custom configuration: -`microbin --port 8080 --public-path https://myserver.net --highlightsyntax --editable` +```bash +microbin --port 8080 --public-path https://myserver.net --highlightsyntax --editable +``` -Or get the Docker image from [Dockerhub: danielszabo99/microbin](https://hub.docker.com/r/danielszabo99/microbin) +Or get the Docker Image from [Dockerhub: danielszabo99/microbin](https://hub.docker.com/r/danielszabo99/microbin). On our website [microbin.eu](https://microbin.eu) you will find the following: @@ -27,31 +33,34 @@ On our website [microbin.eu](https://microbin.eu) you will find the following: - [Donations and Sponsorships](https://microbin.eu/donate/) - [Community](https://microbin.eu/community/) -### Features +## Features + - Is very small - Entirely self-contained executable, MicroBin is a single file! - Animal names instead of random numbers for pasta identifiers (64 animals) -- File uploads (eg. server.com/file/pig-dog-cat) -- Raw text serving (eg. server.com/raw/pig-dog-cat) +- File uploads (eg. `server.com/file/pig-dog-cat`) +- Raw text serving (eg. `server.com/raw/pig-dog-cat`) - URL shortening and redirection - QR code support - Very simple database (JSON + files) for portability, easy backups and integration -- Listing and manually removing pastas (/pastalist) +- Listing and manually removing pastas (`/pastalist`) - Private and public, editable and final, automatically and never expiring pastas - Syntax highlighting -- Automatic dark mode and custom styling support with very little CSS and only vanilla JS (see [water.css](https://github.com/kognise/water.css)) +- Automatic dark mode and custom styling support with very little CSS and only vanilla JS (see [`water.css`](https://github.com/kognise/water.css)) - Most of the above can be toggled on and off! -### What is a "pasta" anyway? +## What is a "pasta" anyway? + +In MicroBin, a pasta can be: -In microbin, a pasta can be: - A text that you want to paste from one machine to another, eg. some code, - A file that you want to share, eg. a video that is too large for Discord, a zip with a code project in it or an image, - A URL redirect. -### When is MicroBin useful? +## When is MicroBin useful? + +You can use MicroBin: -You can use MicroBin - As a URL shortener/redirect service, - To send long texts to other people, - To send large files to other people, @@ -62,9 +71,6 @@ You can use MicroBin ...and many other things, why not get creative? - -### License - -MicroBin and MicroBin.eu are available under the BSD 3-Clause License. +MicroBin and MicroBin.eu are available under the [BSD 3-Clause License](LICENSE). © Dániel Szabó 2022 diff --git a/src/endpoints/create.rs b/src/endpoints/create.rs index d2cb5c3..25fc445 100644 --- a/src/endpoints/create.rs +++ b/src/endpoints/create.rs @@ -81,6 +81,7 @@ pub async fn create( "10min" => timenow + 60 * 10, "1hour" => timenow + 60 * 60, "24hour" => timenow + 60 * 60 * 24, + "3days" => timenow + 60 * 60 * 24 * 3, "1week" => timenow + 60 * 60 * 24 * 7, "never" => { if ARGS.no_eternal_pasta { diff --git a/templates/index.html b/templates/index.html index 2f74907..791f827 100644 --- a/templates/index.html +++ b/templates/index.html @@ -35,6 +35,13 @@ {%- endif %} 24 hours + {% if args.default_expiry == "3days" %} + {% if args.default_expiry == "1week" %}