Gem2Browser/README.md
swee d11d63af6d
All checks were successful
Test web app / Check syntax (push) Successful in 8s
Test web app / Test server with Flask Dev Mode (push) Successful in 11s
Test web app / Test server with Gunicorn (WSGI) (push) Successful in 10s
Test web app / Test server with Hypercorn (ASGI) (push) Successful in 15s
Create Docker image (unstable) / deploy (push) Successful in 4m46s
Update README.md
2025-06-16 18:21:06 -07:00

981 B

Gem2Browser

"Take the web by storm."

A Gemini relay for HTTP using Python flask

Requirements:

  • Python 3
    • Flask
    • Hypercorn (or any other flask compatible WSGI/ASGI)
    • PyOpenSSL

Installation

Docker Compose

Use this docker-compose.yml

services:
  gem2browser:
    image: git.swee.codes/swee/gem2browser:latest
    restart: unless-stopped
    ports:
      - 2009:2009/tcp
    volumes:
      - ./certs:/root/certs

On your host

Install packages

Pip

pip install pyopenssl hypercorn flask asgiref

Debian/Ubuntu

sudo apt install python3-hypercorn python3-flask python3-openssl python3-asgiref

Alpine

apk add py3-openssl py3-flask py3-asgiref py3-pip

# Alpine Linux doesn't have a hypercorn package
pip install --break-system-packages hypercorn

Run server

hypercorn --bind 0.0.0.0:2009 server:app