Image sharing web app.
Go to file
dependabot[bot] 85b2664483
build(deps): Bump bottle from 0.12.19 to 0.12.20
Bumps [bottle](https://github.com/bottlepy/bottle) from 0.12.19 to 0.12.20.
- [Release notes](https://github.com/bottlepy/bottle/releases)
- [Changelog](https://github.com/bottlepy/bottle/blob/master/docs/changelog.rst)
- [Commits](https://github.com/bottlepy/bottle/compare/0.12.19...0.12.20)

---
updated-dependencies:
- dependency-name: bottle
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-03 22:50:24 +00:00
Dockerfile feat: Reduce image size from ~930M to ~85M 2022-03-17 21:42:06 +03:00
LICENSE feat: Update LICENSE 2022-01-05 07:13:50 +03:00
README.md fix: Fix typo in README 2022-01-23 16:47:49 +03:00
Upload to imgs fix: Naitilus script fixed 2022-01-29 02:43:50 +03:00
favicon.ico feat: Add favicon 2022-01-05 07:14:47 +03:00
imgs feat: Add shell-scripts 2022-01-05 08:32:46 +03:00
imgs.ini feat: Update imgs.ini 2022-01-05 08:33:18 +03:00
imgs.py fix: Fixed WSGI app startup 2022-01-05 09:31:27 +03:00
index.tpl feat: Update version 2022-01-05 08:18:54 +03:00
requirements.txt build(deps): Bump bottle from 0.12.19 to 0.12.20 2022-06-03 22:50:24 +00:00
style.css init 2021-08-08 00:33:09 +03:00

README.md

imgs

imgs is a minimalictic image sharing web app written with Bottle framework.

No database. No image compression. No time limits. No additional dependencies.

Features:

  • Upload images via Drag&Drop
  • Easy copy share link
  • MIME type detecting

See deployment options in Bottle documentation: https://bottlepy.org/docs/dev/deployment.html

Run imgs in Docker

Clone repository and edit imgs.ini.

Build Docker image:

docker build --tag imgs .

Run container from image. Replace /path/to/your/uploads/dir with path to directory where you want to store images:

sudo docker run --rm --name imgs --detach --publish 127.0.0.1:5000:5000 --volume /path/to/your/uploads/dir:/opt/imgs/uploads imgs

imgs will launched on 127.0.0.1:5000. Set up reverse proxy server. I recommed to use basic authentication to prevent abuses. Nginx virtual host example:

server {
    listen 80;
    server_name yourdomain.tld;
    root /path/to/imgs/root;

    location / {
        auth_basic "Authentication required";
        auth_basic_user_file /path/to/.htpasswd;
        proxy_pass http://127.0.0.1:5000;
    }

    location ~* ^/favicon.ico$ {
        try_files $uri $uri/ =404;
    }

    location ~* \..* {
        auth_basic off;
        proxy_pass http://127.0.0.1:5000;
    }
}

Additional

imgs client with CLI

imgs has a simple CLI tool based on curl. Copy imgs script to your PATH.

sudo cp imgs /usr/bin/imgs

Nautilus integration

Push files to your imgs instance via GNOME Files (former name: Nautilus). Depends on: curl, libnotify (notify-send utility).

Just place Upload to imgs script into ~/.local/share/nautilus/scripts/ directory.