Inspiration
When trying to learn new things, you often get stuck not knowing where to start, as you don’t know what you need to learn yet. Online learning tools like Khan Academy offer a good start, but their resources are limited and often only go into topics at the surface level. Infinite Academy, on the other hand, can tailor-make lessons instantly, and can go infinitely deep into a topic you want.
What it does
Infinite academy is a website that uses artificial intelligence to generate specific lesson plans for the user. With subjects such as math, programming, investing, and science, Infinite academy is a hub for all your information and learning needs.
How we built it
The server is hosted using flask, with the OpenAI API used to generate new content. The new content is sent to the intended page through a websocket connection, where it is taken in, parsed, and added to the correct place in our data structure. This is then added into the webpage through javascript, where it can be seen.
Challenges we ran into
- When drawing the lines in between the nodes, the SVG tags would not display unless you effectively reloaded the page in the JS by setting the innerHTML of the page to itself.
- When creating new nodes, they would be placed at the very right of the screen, with the lines and node branches overlapping in a confusing order. To avoid overlaps, nodes are placed in the HTML by finding where the parent node’s neighbors are, and placing the new node in between the children of those neighbors.
Accomplishments that we're proud of
- Creating a tree data structure and using recursion to move around in and search for nodes in the tree, and linking this all to the webpage with DOM.
- Using websocket connections to run the tree between the JS logic of the webpage and the openAI API in the backend, and using these connections to create new educational nodes
What we learned
- How to incorporate difference aspects from html, java, and css to create a seamless and intricate website.
- How to incorporate Artificial Intelligence into our code in a new way that we have never done before.
- How to build and incorporate node tree data structures into a website setting
What's next for Infinite Academy
- Adding more subjects
- Updating the user interface
- Making our website easier to navigate
- Polishing our webpage
- Creating a template for the AI to put the lessons in to improve aesthetics and consistency between lessons

Log in or sign up for Devpost to join the conversation.