diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,27 @@ +# blit-tech + +## 0.1.0 + +### Minor Changes + +- Add display size and tick counter APIs to Core +- Add cache checking APIs to AssetLoader +- Add modern variable-width bitmap font system with .btfont format +- Add ImageBitmap support and destroy() method to SpriteSheet +- Add TextSize type and measurement caching to BitmapFont +- Enhance Color32, Rect2i, and Vector2i utility classes with new methods + +### Patch Changes + +- Add Cloudflare Pages deployment configuration +- Refactor Renderer texture handling and frame state management +- Add Plausible Analytics tracking to examples for production deployments +- Update developer experience guide, testing guide, and refine examples documentation +- Add new animation and sprite effects demos to examples +- 576de03: Add Electron desktop packaging for Steam Deck deployment +- Reorganize root directories and consolidate scripts into unified location +- Add sync-rules script to manage AI assistant rules across the project +- Fix double requestAnimationFrame wait for canvas initialization +- Add Uberspace auto-deployment workflow +- a9e3543: Support multiple textures per frame with proper sprite batch queue +- Upgrade dependencies including new ESLint plugins for security and code quality diff --git a/cspell.json b/cspell.json new file mode 100644 --- /dev/null +++ b/cspell.json @@ -0,0 +1,39 @@ +{ + "words": [ + "ABGR", + "asar", + "blit", + "bmfont", + "Bresenham", + "BTAPI", + "btfont", + "Fabrizio", + "flac", + "lerp", + "libatspi", + "libnotify", + "libnss", + "libuuid", + "libxss", + "libxtst", + "nsis", + "palettized", + "RBAPI", + "RGBA", + "RRGGBB", + "RRGGBBAA", + "scanlines", + "Schiavi", + "tilemap", + "timestep", + "unorm", + "Vančura", + "Václav", + "WASD", + "WebGPU", + "WGSL", + "xadvance", + "xoffset", + "yoffset" + ] +} diff --git a/package.json b/package.json --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "blit-tech", - "version": "0.0.1", + "version": "0.1.0", "type": "module", "description": "A lightweight WebGPU retro game engine for TypeScript, inspired by RetroBlit.", "author": "Václav Vančura", @@ -29,10 +29,10 @@ }, "main": "./dist/blit-tech.cjs", "module": "./dist/blit-tech.js", - "types": "./dist/BlitTech.d.ts", + "types": "./dist/blit-tech.d.ts", "exports": { ".": { - "types": "./dist/BlitTech.d.ts", + "types": "./dist/blit-tech.d.ts", "import": "./dist/blit-tech.js", "require": "./dist/blit-tech.cjs" } diff --git a/vite.config.ts b/vite.config.ts --- a/vite.config.ts +++ b/vite.config.ts @@ -40,6 +40,10 @@ include: ['src/**/*.ts'], exclude: ['src/main.ts'], rollupTypes: true, + beforeWriteFile: (filePath, content) => ({ + filePath: filePath.replace(/BlitTech\.d\.ts$/, 'blit-tech.d.ts'), + content, + }), }), // Copy static assets (fonts) to dist for Electron builds ...(!isLibBuild diff --git a/.changeset/petite-areas-stick.md b/.changeset/petite-areas-stick.md deleted file mode 100644 --- a/.changeset/petite-areas-stick.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'blit-tech': patch ---- - -Add Electron desktop packaging for Steam Deck deployment diff --git a/.changeset/tricky-pianos-hammer.md b/.changeset/tricky-pianos-hammer.md deleted file mode 100644 --- a/.changeset/tricky-pianos-hammer.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'blit-tech': patch ---- - -Support multiple textures per frame with proper sprite batch queue diff --git a/.claude/settings.local.json b/.claude/settings.local.json --- a/.claude/settings.local.json +++ b/.claude/settings.local.json @@ -7,7 +7,13 @@ "Bash(find:*)", "Bash(pnpm typecheck:*)", "Bash(grep:*)", - "Bash(cat:*)" + "Bash(cat:*)", + "Bash(plutil:*)", + "Bash(defaults read:*)", + "Bash(python3:*)", + "Bash(~/bin/sync-mcp-servers.py:*)", + "mcp__github__list_pull_requests", + "mcp__github__search_issues" ], "deny": [], "ask": [] diff --git a/.vscode/settings.json b/.vscode/settings.json --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -44,7 +44,7 @@ "RGBA", "RRGGBB", "RRGGBBAA", - "Scanlines", + "scanlines", "Schiavi", "tilemap", "timestep", @@ -54,7 +54,7 @@ "vite", "WASD", "webgpu", - "webp", + "WebP", "WGSL", "xadvance", "xoffset",