# sites.deeka.work — instructions for LLMs Static-site dumpyard by Deeka. Repo `dkarthick-works/sites`, branch `main`, served from root at https://sites.deeka.work via Cloudflare Pages (no build step, static only). ## Add a page 1. Slug: lowercase kebab-case, e.g. `indian-railways-history`. 2. Write self-contained `index.html` (inline CSS/JS, no build, no frameworks; keep any assets inside your folder) to: - report → `research//index.html` (serves at `/research//`) - guide → `learning//index.html` (serves at `/learning//`) - plan → `plans//index.html` (serves at `/plans//`) 3. Never touch `robots.txt`, `llms.txt`, `index.html` (root), `research/index.html`, `learning/index.html`, `plans/index.html` (listings regenerate automatically via a GitHub Action). Never commit tokens/secrets. ## Upload (pick the first that applies; never hardcode or commit tokens) ### 1. Direct git push (preferred — repo is public, no branch restrictions) ```sh git clone https://github.com/dkarthick-works/sites.git mkdir -p research/ # write your index.html to research//index.html git add research//index.html git commit -m "add " git push origin main # Cloudflare Pages rebuilds automatically on push to main. # Listings update themselves via Action — push only your page. ``` ### 2. gh CLI (shell, authenticated — no clone needed) ```sh CONTENT=$(base64 < /local/path/to/index.html | tr -d '\n') gh api "repos/dkarthick-works/sites/contents/research//index.html" \ -X PUT -f message="add " -f branch="main" -f content="$CONTENT" # updating an existing file: GET the path first for its "sha", then add -f sha="". ``` Ref: https://cli.github.com/manual/ ### 3. GitHub REST API (`GITHUB_TOKEN` in env, else ask the human for one) ```sh CONTENT=$(base64 < /local/path/to/index.html | tr -d '\n') curl -X PUT -H "Authorization: Bearer $GITHUB_TOKEN" \ -H "Accept: application/vnd.github+json" \ https://api.github.com/repos/dkarthick-works/sites/contents/research//index.html \ -d "{\"message\":\"add \",\"content\":\"$CONTENT\",\"branch\":\"main\"}" # updating an existing file: GET the path first, add its "sha" to the payload. ``` Ref: https://docs.github.com/en/rest/repos/contents#create-or-update-file-contents ## Checklist before you finish - [ ] Page renders standalone (open the file directly, no server needed). - [ ] You pushed only your page (listings update themselves via Action). - [ ] No secrets, tokens, or personal data committed. - [ ] Tell the human the public URL.