Commit graph

9 commits

Author SHA1 Message Date
c8b0ecbd87 add canonical permacomputer preamble to all source files 2026-02-25 17:40:12 -05:00
027f5afc57 Add public domain license and headers to all source files
- Add LICENSE file (public domain, permacomputer values)
- Add license headers to all 27 Python source files
- Restore full about_ch9_p2 with "terminated 🟣" content
- Translate about_ch9_p2 to all 26 languages

The permacomputer is community-owned infrastructure optimized around:
TRUTH, FREEDOM, HARMONY, LOVE
2026-01-08 15:38:28 -05:00
c6bf3c375e Fix /page/{uri_hash} to render directly instead of redirecting 2026-01-06 17:26:58 -05:00
d91c0592ca Fix remaining import paths in serp/server.py
- async_web_fetcher -> neopig.async_web_fetcher
- screenshot -> neopig.screenshot

These were missed during the module reorganization, causing
/page/view and other endpoints to fail with import errors.
2026-01-06 15:44:22 -05:00
58c93f217a Reorganize project structure: move modules to neopig/, scripts to scripts/, data to data/ 2026-01-06 14:06:43 -05:00
0974593873 Refactor language handling to FastAPI Depends
- Replace get_lang() calls with Depends(get_language) dependency
- Language resolution: ?lang=XX query > cookie > Accept-Language header
- Middleware sets cookie, frontend cleans URL via history.replaceState
- view_page_by_hash now redirects instead of direct call
2026-01-06 08:25:50 -05:00
e9c0cf965f The 5 Adventures: View Source rewards the curious
Setting Orange, 5th of Chaos, YOLD 3192 - Mungday

Adventure #1: View Source on any page
Adventure #2: /fnord - you weren't supposed to see it
Adventure #3: /5 - The Law of Fives is never wrong
Adventure #4: /23 - The 23 enigma
Adventure #5: /kallisti - ΚΑΛΛΙΣΤΙ - to the prettiest one

Hidden throughout:
- HTML comments in templates guide the seeker
- fnord appears where you least expect it
- 23 skidoo in the live feed
- The Sign Maker leaves breadcrumbs

Truth, Freedom, Harmony, Love.
2026-01-05 20:22:34 -05:00
81662f1781 Mungday chaos: Sign Maker easter eggs, fix OVER_9000, England flag
Setting Orange, 5th of Chaos, YOLD 3192 - Celebrate Mungday!

- Add Sign Maker comments throughout codebase
- Fix OVER_9000 = 9001 (it's OVER 9000, not exactly 9000)
- Change English flag from 🇺🇸 to 🏴󠁧󠁢󠁥󠁮󠁧󠁿 (St. George's Cross)
- Fnord. You didn't see this commit.
2026-01-05 20:18:23 -05:00
c7c20c5bce Refactor serp.py into serp/ package, add /eggs endpoint
- Extract serp.py into serp/ package for better testability
  - serp/app.py: FastAPI app, LanguageMiddleware
  - serp/server.py: All route handlers
  - serp/i18n.py: Translations, LANG_NAMES with flags
  - serp/models.py: CrawlRequest model
  - serp/archive.py: Tarball handling
  - serp/logging.py: Job logging
  - serp/utils.py: slugify function
- Add /eggs endpoint listing easter eggs:
  - #0: ?lang=XX forces language via middleware
  - #1: OVER_9000 pagination limit
  - #2: The 72 Rules of St. Benedict (A Way)
- Fix test module import issue (app_module -> app_config)
- LANG_NAMES includes flags and codes (e.g., 🇺🇸 EN English)
2026-01-05 19:16:04 -05:00