Files
gigachad-library/README.md
T

97 lines
3.6 KiB
Markdown

# Library of GigaChad
A complete, expanded, self-contained mirror of the **Library of Chadnet**
([wiki.chadnet.org](https://wiki.chadnet.org/)) — every category, every
subcategory, every hosted article, PDF and audio file — **plus** a lot more:
- **New categories** — **3D Printing & Fabrication** (printers, materials,
CAD, DIY firearms, workshop), **Physical Culture** (strength, bodyweight,
combat, mobility), **Homesteading & Off-Grid** (food preservation, water,
power, livestock), **Engineering & Radio** (electronics, embedded, ham
radio, right-to-repair).
- **Expanded existing categories** — many new curated resources under
Computers & Internet (self-hosting, distros, command line, privacy),
Practical Skills (metalworking, blacksmithing, auto, gardening), Health,
History and Science.
- Same spirit, same do-it-yourself, self-reliant viewpoint. No sign-up,
no JavaScript required to read.
## Why every page is a `.html` file
The original site uses extensionless URLs, which causes many static hosts
(and the local dev server) to offer the page as a *download* instead of
rendering it. This build names every page `name.html` and rewrites all
internal links to `.html`, so **clicking any category or article renders
it on any host** — no server rewrites needed. PDFs and media keep their
real filenames and still open/download normally.
## The name
Working title is **"Library of GigaChad"** (keeps the original's
"Library of …" feel while standing on its own). To change it anywhere,
edit the two constants in `tools/generate.py`:
```python
SITE_NAME = "Library of GigaChad"
SITE_SHORT = "GigaChad"
```
…then re-run the generator. Other name ideas if you want a different
flavour:
- **The Omega Library**
- **Library of the Sovereign**
- **The Chad Compendium**
- **Lexicon of Chad**
## Structure
```
repo root ← deploy this directory to any static host
index.html homepage
about.html, donate.html, theme.html
<category>.html every category & subcategory (renders normally)
<page>.html every hosted article (renders normally)
*.pdf, *.jpg, … hosted files (open/download normally)
/files/*, /icons/* embedded media and theme assets
tools/
crawl.py fetches the full Chadnet site into site_data.json + mirror/
generate.py builds this site from site_data.json + content_extra.py
content_extra.py all new curated categories and expansions (easy to edit)
site_data.json the crawled link catalog (structure + every link)
```
## Deploy / host
Point any static host or web server (Netlify, GitHub Pages, nginx,
Caddy, Cloudflare Pages…) at the **repo root**. Everything is relative,
so it works on any domain or subpath.
## Size note
The repository is ~14 GB because it includes the full original media
collection (248 audio files ~11 GB, plus PDFs). If your host has a
repo size limit or you'd rather keep the code light, either:
- use **Git LFS** for `*.mp3`, `*.pdf`, `*.jpg`, `*.png`, `*.mp4`, or
- drop `*.mp3` from the repo and re-push them straight to your web
root (the files stay hot-linked by their names).
## Rebuild
```bash
# crawl the latest Chadnet (only needed when mirroring new content)
python3 tools/crawl.py
python3 tools/scan_embedded.py # fetch images inside hosted articles
# regenerates the whole site from the captured catalog
python3 tools/generate.py
```
## Credits
The Library of Chadnet (and all original hosted works, articles, PDFs and
recordings) is the work of its original author and contributors. This
project is an expanded mirror; we link back to the originals and hold no
copyright over the mirrored content.