Go to file
Henrik Jess Nielsen e453d140b5
All checks were successful
Build and Deploy PunktFri / build-and-deploy (push) Successful in 1m19s
SEO & content optimization: meta tags, structured data, improved targeting
Major improvements:
- Add comprehensive meta tags (Open Graph, Twitter Cards, canonical URL)
- Implement schema.org structured data (Organization, FAQPage)
- Optimize H1 with keywords: "Non-profit registrator for .dk-domæner"
- Add robots.txt and sitemap.xml with Flask routes
- Improve hero intro with specific pain point (90-150 kr/year)
- Enhance DNSSEC description with technical details (DS-records)
- Update timeline to May 2026
- Add FAQ comparing PunktFri to commercial providers
- CSS styling for H1 subtitle

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-05-22 10:30:28 +02:00
2026-04-26 18:20:54 +02:00
2026-04-26 18:20:54 +02:00

PunktFri.dk

Flask landing page for PunktFri — a Danish non-profit registrar initiative for self-hosters.

Setup

python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python app.py

Visit http://localhost:5000

Environment variables

Variable Default Description
PORT 5000 Port to listen on
DATABASE punktfri.db SQLite database path
LOG_FILE signups.log Signup log file path
ADMIN_USER admin Admin username
ADMIN_PASS punktfri2024 Admin password

Change ADMIN_USER and ADMIN_PASS before deploying publicly.

Routes

  • / — Landing page + signup form
  • /tak — Confirmation page after signup
  • /admin — Signup table (HTTP Basic Auth)
  • /health — Health check (returns {"status": "ok"})

Data

Signups are stored in two places:

  • SQLite (punktfri.db) — queryable, used by /admin
  • Log file (signups.log) — append-only plaintext log

Both are created automatically on first run.

Admin

Visit http://localhost:5000/admin and enter the credentials above.

Description
No description provided
Readme 141 KiB
Languages
HTML 46.1%
CSS 35.6%
Python 11.7%
HCL 4.6%
Dockerfile 1.2%
Other 0.8%