🪡 Show off your favorite public threads https://ayo.ayco.io/threads
Find a file
2024-04-27 13:21:41 +02:00
templates feat: anchor links for specific post 2024-04-27 13:21:41 +02:00
.gitignore feat: return cleaned up thread status and descendants 2024-04-19 19:23:47 +02:00
app.py feat: create flask blueprint 2024-04-24 11:32:36 +02:00
LICENSE chore: add license 2024-04-19 19:29:43 +02:00
README.md feat: add meta info per page 2024-04-26 21:35:57 +02:00
threads.py feat: shorter meta description 2024-04-27 07:45:48 +02:00

Threads

Show off your favorite public threads and offer hand-picked, fine-grained, topical subscriptions!

See it in action.

Project setup

  1. Set up your Debian (for other environments, search for counterpart instructions)

    # update repositories
    $ sudo apt update
    
    # install python stuff
    $ sudo apt install python3-pip python3-dev build-essential libssl-dev libffi-dev python3-setuptools python3-venv
    
  2. Install dependencies

    # clone the project 
    $ git clone git@git.sr.ht:~ayoayco/threads
    
    # go into the project directory
    $ cd threads
    
    # create python environment:
    $ python3 -m venv .venv
    
    # activate python env:
    $ . .venv/bin/activate
    
    # install dependencies
    (.venv)$ python -m pip install flask requests markdown
    
    # rejoice!
    
  3. To start development, run the following:

    (.venv)$ flask --app app.py --debug run
    

    Note: On a Mac, the default port 5000 is used by AirDrop & Handoff; you may have to turn those off

  4. After development session, deactivate the python env

    (.venv)$ deactivate
    

Deployment

For deployment, the recommended setup is with production server gunicorn and reverse proxy nginx. See the DigitalOcean tutorial (their website uses cookies).