About the Project
Inspiration
Modern AI can generate code surprisingly well, but I found that the real bottleneck is no longer programming—it's transferring design knowledge into a form that AI can reliably understand. Specially nested structured, graph-structure and so on. Last month I made UISketch, and I tried to DB design. That is difficult to refactor after releasing because it needs to migrate data and it sometimes to require too long a duration.
After many conversations with Codex, I realized that valuable architectural decisions were buried inside long chat histories. I wanted to preserve that knowledge as reusable assets instead of repeatedly explaining the same ideas.
This led to the idea of Knowledge-Centric Development: treat structured knowledge, rather than prompts, as the single source of truth.
What it does
ERDSketch is an agile style data modeling tool that helps developers to create database design step by step by using refinement features.
Instead of simply drawing ER diagrams, it supports the entire modeling process by:
- Growing models from seed ideas to mature designs
- Applying explicit refinement patterns
- Generating multiple views from the same knowledge, including ER diagrams, Data Flow Diagrams, and CRUD matrices
- Supporting real-time peer-to-peer collaboration through WebRTC
- It supports Markdown, draw.io, SQL generation
How we built it
The project started with approximately 25 focused Codex sessions.
Instead of keeping long conversations, I distilled each discussion into reusable Codex Skills and organized them into a knowledge base containing more than 270 concepts connected by over 1,400 relationships.
Each concept is stored as a Markdown document. A custom Knowledge Compiler generates searchable metadata, allowing AI to retrieve relevant knowledge efficiently.
Once the knowledge base was ready, I gave Codex a single implementation goal. Much of the application was generated from this structured knowledge, demonstrating that high-quality specifications can dramatically improve AI-assisted development.
Challenges
The biggest challenge wasn't writing code—it was organizing knowledge.
Design decisions must be independent, reusable, searchable, and understandable by both humans and AI. Finding the right granularity for concepts and defining clear relationships required far more iteration than implementing the software itself.
Another challenge was balancing flexibility with guidance. The tool needed to support experienced engineers while also helping newcomers progressively refine their models.
What I learned
This project changed how I think about software development.
As AI becomes better at writing code, the competitive advantage shifts toward creating high-quality, structured knowledge that AI can reuse.
I believe the future of software engineering is Knowledge-Centric Development, where knowledge becomes the single source of truth and AI turns that knowledge into working software.
Log in or sign up for Devpost to join the conversation.