Inspiration

As someone who does olympiad mathematics, I’ve spent hours creating a single geometry diagram in Asymptote. The mathematics itself can be challenging enough, but turning that idea into precise, publication-quality code is often tedious. I wanted to build a tool that lets mathematicians focus on the problem instead of spending hours manually drawing it.

What it does

GeoEngine transforms mathematical descriptions and code into accurate, geometry diagrams. Users can create complex diagrams with points, lines, circles, intersections, transformations, This also helps makes the process faster and more accessible than writing every line of Asymptote manually, which takes more time and effort.

How we built it

We built GeoEngine with a React and TypeScript frontend, a custom mathematical parsing system, and computational geometry logic to interpret mathematical constructions and generate visualizations that are precise. We also integrated AI to help translate natural-language descriptions into structured geometric constructions that GeoEngine can understand.

Challenges we ran into

One of our biggest challenges was making natural language reliable enough for mathematical geometry. Small misunderstandings can change a diagram, so we had to carefully structure how mathematical instructions were interpreted to the AI. We also had to handle geometric dependencies, such as ensuring that points, intersections, and constructions were created in the correct order, which was a huge issue within the code.

Accomplishments that we're proud of

We are proud to have built a working system that allows for mathematical ideas and technical diagram creation. GeoEngine can turn complex geometric instructions into visualizations, which saves mathematicians hours of repetitive coding and making advanced diagram creation much more accessible.

What we learned

We learned that building mathematical software requires more than just implementing formulas. Precision, structure, and the relationships between geometric objects are all incredibly important. We also learned how to combine AI with deterministic computational geometry, using AI to interpret intent while relying on code to produce accurate results.

What's next for GeoEngine

Next, we want to make GeoEngine even more powerful by improving natural-language understanding, supporting more advanced geometric constructions, and adding better editing and collaboration tools. Our long-term goal is to make creating complex mathematical diagrams as simple as describing the mathematics behind them.

Built With

Share this project:

Updates