A three-card tarot spread where every face is unique procedural sigil-art, woven into one reading.
I built this project to test a three-card tarot spread where every face is unique procedural sigil-art, woven into one reading. The goal was simple: push interactive browser rendering using HTML5 Canvas and see how smoothly the system responds to direct user interaction.
WHAT I WAS TESTING:
I wanted to focus on two core engineering aspects:
Procedural generation of unique runic card sigils from mathematical formulas
Dynamic typography and card flipping choreography without heavy 3D frameworks
THE TECHNICAL SIDE:
The card faces render directly onto an HTML5 Canvas using polar coordinate trigonometric curves and procedural geometry. Every draw call is computed dynamically without image textures or external SVGs.
Everything runs in the browser using HTML5 Canvas, Procedural Sigil Geometry, Seeded Randomness. No plugins, no heavy dependencies, and no external tracking.
WHAT I LEARNED:
Balancing procedural symmetry with organic irregularity was the main hurdle. Pure mathematical curves looked too synthetic, so adding minor pseudo-random offsets gave the sigils their handcrafted appearance.
Finding the sweet spot between mathematical precision and tactile visual feedback took several iterations, but the end result runs consistently at 60 FPS.
TRY IT YOURSELF:
The live experiment is deployed on Netlify. You can open it in any modern browser, interact with the controls, and test the response times.
If you are working on similar 3D, physics, or creative web projects and want to collaborate, message me here on Contra.
AI-powered tenant communication and maintenance follow-up system designed to help property management teams automate repetitive communication around maintenance requests.
The system takes a tenant maintenance request, analyzes the issue, creates a structured work order, generates a professional tenant update, tracks follow-ups, and prepares completion messages as the maintenance workflow progresses.
Workflow:
Tenant request → AI analysis → Work order → Tenant update → Follow-up → Resolution
Key features:
AI maintenance request analysis
Automatic issue categorization and prioritization
Work-order workflow management
AI-generated tenant communication
Editable tenant messages
Maintenance follow-up queue
Follow-up status detection
Automatic communication drafts when status changes
Completion notifications
Database-driven workflow
The system uses stored property and work-order information to keep generated communication grounded in the actual maintenance records.
Built with: Python, Flask, SQLite, HTML, CSS, JavaScript, and AI-assisted workflow automation.
This project was built as a portfolio demonstration of AI-powered maintenance communication and workflow automation for property management operations.