An open-source, Metro-inspired visual app builder prototype.
TileForge is a browser-based visual editor with a free-positioning canvas, a properties inspector, and a simple block-programming workspace. It uses native browser APIs and ES modules—no npm dependencies or build step are required.
Status: working early prototype. It exports standalone HTML previews and
.tileforgeproject files. It does not yet compile native Windows x64.appxpackages.
Serve the repository root with any static web server, then open src/index.html. For example, from the repository root:
python -m http.server 8000Open http://localhost:8000/src/ in your browser. Serving the files over HTTP avoids browser restrictions around JavaScript modules when opening an HTML file directly.
- Windows 8.1 Metro-inspired interface
- Drag components around a 960×600 design canvas
- Text, button, image, and Metro tile components
- Edit names, text, position, dimensions, colors, font size, and image URL
- Duplicate and delete components
- Save and reopen
.tileforgeJSON project files - Export a standalone HTML preview
- Visual block workspace with event, text, message, and motion blocks
- GitHub Actions packages source and attaches ZIPs to versioned GitHub Releases
src/
index.html Application structure
styles.css UI and editor styling
app.js App startup, project state, and UI events
editor.js Canvas rendering, dragging, and properties inspector
blocks.js Visual block workspace and simple block execution
project.js Project schema, validation, saving, and HTML export
.github/
workflows/
package-release.yml
Pushes to main create a downloadable source ZIP workflow artifact. To publish a GitHub Release with the source ZIP and SHA-256 checksum attached, push a version tag:
git tag v0.1.0
git push origin v0.1.0- Modular browser editor prototype
- Free-positioning visual canvas and component inspector
- Save/open project files
- Standalone HTML export
- Basic visual programming blocks
- Automated source ZIP and GitHub Releases
- More component types and multi-page projects
- Richer block logic, variables, conditions, and events
- Native Windows project generation
- Windows x64
.appxpackaging and signing
MIT. See LICENSE.