Website POC for shakecities https://cities.hnshosting.au
Go to file
Nathan Woodburn 6f92a6738d
All checks were successful
Build Docker / Build Main Image (push) Successful in 37s
Build Docker / Build SLDs Image (push) Successful in 44s
feat: Add umami
2023-12-20 17:00:30 +11:00
.gitea/workflows fix: Fix copy templates into cities image 2023-11-15 18:06:44 +11:00
sites feat: Dynamically inject analytics into head of sites 2023-12-13 15:04:28 +11:00
templates feat: Add umami 2023-12-20 17:00:30 +11:00
.gitignore feat: Add image uploading 2023-11-18 00:25:59 +11:00
accounts.py feat: Add error page 2023-11-17 23:36:15 +11:00
avatar.py fix: Overriding avatar didn't update DNS record 2023-11-18 12:10:37 +11:00
db.py feat: Allow tribe renaming 2023-11-22 13:16:36 +11:00
Dockerfile fix: Remove mounting data for frontends 2023-11-08 18:28:33 +11:00
LICENSE.md Initial commit 2023-11-08 16:42:47 +11:00
main.py feat: Add alternative tlds to account page 2023-12-13 10:52:40 +11:00
PLACEHOLDERS.md feat: Add new templates with donate footer 2023-11-20 11:51:44 +11:00
proposal.md feat: Add HIP02 addresses 2023-11-09 12:13:59 +11:00
README.md feat: Add placeholder documentation 2023-11-20 11:37:40 +11:00
requirements.txt feat: Add home page info 2023-11-15 22:51:30 +11:00
server.py feat: Add home page info 2023-11-15 22:51:30 +11:00
template.py feat: Add initial tribes 2023-11-22 13:00:04 +11:00
varo.py fix: Stop duplicating A and TLSA records and fix alts 2023-12-12 14:51:38 +11:00

ShakeCities

A joint project between Nathan.Woodburn/ and crymzyn/
ShakeCities is a geocities clone with an emphasis on Handshake domains.
Create a free site on yourname.shakecities/. You control that site and can add whatever you want to it.
Every domain comes enabled with HTTPS via DANE. We have support HIP02 aliases, so you can send HNS to yourname.shakecities/

Template testing

Replace new with your template name

cd <Git-REPONAME>
# Copy template
cp templates/city_template.html templates/city_new.html
# Edit template
# Test site with template
python3 -m pip install -r requirements.txt
python3 template.py city_new

Visit http://127.0.0.1:5000/ to view the template
Here is a list of placeholders you can use PLACEHOLDERS.md

Deployment

version: '3'
services:
  main:
    image: git.woodburn.au/nathanwoodburn/shakecities:latest
    depends_on:
      - db
    volumes:
      - images:/data
    environment:
      DB_HOST: db
      DB_USER: main
      DB_PASSWORD: your-db-password
      DB_NAME: main
      CITY_DOMAIN: exampledomainnathan1
      REG_KEY: <your-varo-apikey>
      CITY_ALIAS: city.hnshosting.au # ICANN domain that points to the IP for the cities server
      MAIN_DOMAIN: cities.hnshosting.au
      WORKERS: 2 # number of workers to run (should be 2 * number of cores)

  sites:
    image: git.woodburn.au/nathanwoodburn/shakecities-sites:latest
    depends_on:
      - db
    environment:
      DB_HOST: db
      DB_USER: main
      DB_PASSWORD: your-db-password
      DB_NAME: main
      MAIN_DOMAIN: cities.hnshosting.au
      WORKERS: 2 # number of workers to run (should be 2 * number of cores)

  db:
    image: linuxserver/mariadb:latest
    environment:
      MYSQL_ROOT_PASSWORD: your-root-password
      MYSQL_DATABASE: main
      MYSQL_USER: main
      MYSQL_PASSWORD: your-db-password
    volumes:
      - db_data:/var/lib/mysql
volumes:
  db_data:
  images: