diff --git a/.gitignore b/.gitignore index da0e496..53b9703 100644 --- a/.gitignore +++ b/.gitignore @@ -3,15 +3,11 @@ build/ # Generated cart exports (produced by `make web` / `make png`) npicomx.html -npicomx.p8.png # toolchain (managed by mise + uv; see mise.toml / requirements.txt) .venv/ node_modules/ -# headless PICO-8 home + screenshots (P8HOME defaults under /tmp) -/tmp/p8home-npicomx/ - # vendored tooling lives in tools/shrinko8 and IS tracked; ignore only its caches tools/shrinko8/__pycache__/ diff --git a/Makefile b/Makefile index 7d736fe..ee75b8d 100644 --- a/Makefile +++ b/Makefile @@ -96,7 +96,7 @@ ci-dist: ## Assemble dist/ from committed artifacts (no pico8/python3 required) .PHONY: ci-deploy ci-deploy: ci-dist ## Deploy committed artifacts to Cloudflare Pages (CI-safe, no pico8 needed) - CLOUDFLARE_ACCOUNT_ID=ebbd354a5e5728e183b95c92fbcfb770 npx wrangler pages deploy $(DIST) --project-name npicomx --commit-dirty=true + CLOUDFLARE_ACCOUNT_ID=ebbd354a5e5728e183b95c92fbcfb770 npx wrangler pages deploy $(DIST) --project-name npicomx --branch=main --commit-dirty=true # --- help / housekeeping ----------------------------------------------------- .PHONY: help diff --git a/npicomx.p8.png b/npicomx.p8.png new file mode 100644 index 0000000000000000000000000000000000000000..24764f5ed051605c72a91ba0368331b9a18a1110 GIT binary patch literal 21688 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
  • ^+dfe!gxjE4kiTuOm@;`}gxV|1E!4Pf)KZ`rrTepYOyE#p~Zc z{3ySyah|nZ|J%navn$^Gh!^|mqx;~n#@CJC%b(URdeHt}{@w}myA$|#M)H5|^OyY} zyY6M8+k>5f|E60O{SSJ|ct138{^!5#OB(Nm-YeT1pXOQ>|MSvwM*A-oxz5Uxz# z=zlu+X%c(QME$i;KOi4~V*9=;z1Ne!%e3!3@7}uKYTe)F z)Y{biS5vLL{k{L>=_|hrpBi&Jz4MDb@b+w7#>0DQ3+GKb{_VTr`R^Ma+kg9al&fyW zo-0l9Pnw@D75k$U9|b*w$+7alchkN4pOnBSF-G72^K7*^_YbA{yJJqV@9{aP|H<-n z>{Dj&;Z5$9D{2ma&S`qC(yuB10dyLa<%!@^?BF0e_DSt2Gehm`+4pO{-hKb~(DO<^ z{ZG*@_mrfh7HEuIoFk#%sH0mJ({*6yE^Ot&-!=sYh6bP0l+XkKenc>_ literal 0 HcmV?d00001