No description
Find a file
2024-04-08 17:29:49 +02:00
static feat: initial copy of pages from astro site 2024-04-08 17:20:08 +02:00
templates Merge branch 'main' of git.sr.ht:~ayoayco/ayco.io-flask 2024-04-08 17:29:49 +02:00
.gitignore chore: update gitignore 2024-04-08 16:15:49 +02:00
README.md chore: use command for dev server 2024-04-08 16:58:37 +02:00
web.py feat: initial copy of pages from astro site 2024-04-08 17:20:08 +02:00
wsgi.py refactor: rename api to web 2024-04-08 16:33:54 +02:00

Ayo Ayco's personal site built with Flask

Background

Yet another rewrite of my personal site

Development

  1. Set up your Debian (for MacOS, 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/ayco.io-flask
    
    # go into the project directory
    $ cd ayco.io-flask
    
    # create python environment:
    $ python3 -m venv .venv
    
    # activate python env:
    $ . .venv/bin/activate
    
    # install wheel:
    (.venv)$ pip install wheel
    
    # install gunicorn & flask:
    (.venv)$ pip install flask
    
    # rejoice!
    
  3. To start development, run the following:

    (.venv)$ flask --app web.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).