A web client for Gemini! https://swee.codes/apps/gem2browser
Find a file
swee 7eab772a0e
All checks were successful
Test web app / Check syntax (push) Successful in 10s
Test web app / Test server with Flask Dev Mode (push) Successful in 17s
Test web app / Test server with Gunicorn (WSGI) (push) Successful in 17s
Test web app / Test server with Hypercorn (ASGI) (push) Successful in 21s
Create Docker image (unstable) / deploy (push) Successful in 40s
Update .forgejo/workflows/docker-unstable.yml
2025-04-07 14:55:00 -07:00
.forgejo/workflows Update .forgejo/workflows/docker-unstable.yml 2025-04-07 14:55:00 -07:00
.gitignore Initial commit 2025-01-12 21:30:24 -08:00
cross-server.png Upload files to "/" 2025-01-13 15:35:25 -08:00
Dockerfile Update Dockerfile 2025-03-29 20:35:25 -07:00
external.png Upload files to "/" 2025-01-13 15:35:25 -08:00
gem2browser-icon.svg Upload files to "/" 2025-03-25 18:46:04 -07:00
gem2browser.png Upload files to "/" 2025-01-14 17:28:48 -08:00
gem2browser.service Add gem2browser.service 2025-01-18 22:18:35 -08:00
gem2browser.svg Upload files to "/" 2025-01-14 17:28:48 -08:00
home.html Update home.html 2025-01-20 14:14:33 -08:00
LICENSE Initial commit 2025-01-12 21:30:24 -08:00
loadcert.html Update loadcert.html 2025-01-15 21:33:05 -08:00
README.md Update README.md 2025-03-28 17:45:43 -07:00
server.py Update server.py 2025-02-16 22:41:44 -08:00
style.css Update style.css 2025-01-20 14:27:06 -08:00
version Update version 2025-02-16 21:28:42 -08:00
write.png Upload files to "/" 2025-02-16 21:15:59 -08:00

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

Debian/Ubuntu

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

Alpine

apk add py3-openssl py3-flask 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