You are browsing as a guest. Sign up (or log in) to start making projects!

Numera

  • 1 Devlogs
  • 1 Total hours

Numera is an AI-powered platform that makes math easier to understand by bringing mathematical formulas and concepts to life through beautiful animated explanations. The tool uses symbolic math, large language models, and the Manim animation engine to produce high-quality educational animations that explain concepts in a visual way. With Numera, you can ask to show a calculation or describe what you want to explain in natural language, and get a clear visual representation of how to solve it or what you wanted to explain. It is perfect for students who want to better understand mathematics, educators who want to provide engaging lectures, and anyone else who wants to fall in love with math all over again!

Ship #1 Changes requested

# MathGen

A tool which allows the user to generate a manim animation from an natural language prompt without having to write a single line of code.

[Try Demo →](your-demo-link-here)

![Demo screenshot or GIF of the sin(x) tangent animation from the example](assets/demo.gif)

## Description

Type "derivative of sin(x)" and MathGen will generate the manim code for you and display the animation, along with the code so that you can change it or try out different prompts.

MathGen is ideal for people who have struggled to grasp mathmatical concepts visually, and who dont want to spend hours learning an animation library just to produce a quick explainer video.

## Process

1. The user types in a prompt

2. This prompt is validated before being passed to an LLM

3. The LLM (we used chatgpt 5.6 and claude fable 5) produces the manim code based on the prompt

4. This code is then run and debugged on replit

5. Finally, the animation is displayed along with the code used to produce it

The stack includes HTML/CSS/JS for the frontend, FastAPI, Flask, Node for the backend, and Manim, Matplotlib, and sympy for the math and animations.

## Example

Prompt: "derivative of sin(x)"

Code:

from manim import *

import numpy as np

class SinTangent(Scene):

def construct(self):

axes = Axes(x_range=[-4, 4, 1], y_range=[-2, 2, 1])

curve = axes.plot(lambda x: np.sin(x), color=BLUE)

self.play(Create(axes), Create(curve))

x_tracker = ValueTracker(-4)

def get_tangent_line():

x = x_tracker.get_value()

slope = np.cos(x)

point = axes.c2p(x, np.sin(x))

return Line(

point + np.array([-1, -slope, 0]),

point + np.array([1, slope, 0]),

color=YELLOW,

)

tangent = always_redraw(get_tangent_line)

self.play(Create(tangent))

self.play(x_tracker.animate.set_value(4), run_time=6, rate_func=linear)

This produces a 30 second long animation of a tangent line tracing around the curve y=sin(x).

## Installation

git clone

cd mathgen

pip install -r requirements.txt

# add any missing setup commands for the frontent/backend here, and test them

python app.py

## What was challenging

Getting the LLM to produce working manim code in the first place was challenging, as there was a lot of trial and error involved in prompting it.

The sympy dependency also proved to be somewhat challenging to setup, as one syntax error took several days to fix.

Finally, making sure that the animation looked good while also being mathematically correct was also a balancing act.

## Future work

The ability to change what rendering engine is used, and what mathematical fields are supported, with the ultimate goal of making a general purpose visual reasoning assistant for math.

  • 1 devlog
  • 1h
Try project → See source code →
Open comments for this post

1h 4m 8s logged

First working prototype of Numera is officially up and running.

I spent the last few days building the core system, and today I finally got to test it end to end. The results were really encouraging, the main idea works, and the prototype is performing much better than I expected.

There’s still a lot that needs to be improved, polishing the UI, fixing edge cases, and making everything faster and more reliable. But getting from an idea to something that actually works pretty great.

Excited to keep iterating and see where it goes next.

2
1
580

Delete project?

Are you sure you want to permanently delete this project? This action cannot be undone.

All devlogs, followers, and associated data will be removed.

Followers

Loading…