Inspiration & Why? As we sat around discussing project ideas, one thing that we noticed that we all have in common is the difficulty we find, as high school students, in finding learning materials for integration problems. Meet NightWalk--the software that makes learning integration a walk in the park and that cuts out all the endless YouTube tutorials, meaning that you can practice at night!
How it works: The Swift app offers users the ability to learn three different integration techniques: u-substitution, trigonometric substitution, and integration by parts. Each technique has its own dedicated lessons page; there, via the Gemini API, users generate custom integration problems. It works like this: first, via the generateProblem() function in our Gemini API Manager, a prompt is sent to Gemini asking it to develop an integral problem. The Gemini API responds in two ways: with Plaintext, a readable version for retrieval and sharing, and LaTeX, a user-oriented version for nice display. These are saved into state.generatedPlaintext and state.generatedLaTeX, respectively. Next, using the Wolfram Alpha API, we were able to take output from Gemini to come up with solutions (via the fetchSolutions() function). The plaintext response from Gemini was URL encoded and sent directly to the Wolfram Alpha calculator (made possible using our developer access to the Wolfram Alpha API). Wolfram then returned a JSON, which was stored in state.wolframAnswer, and subsequently used by the Gemini API Manager’s generateFeedback() function. This function returns a LaTeX-rendered textual explanation of the solution, backed by the enhanced accuracy of Wolfram Alpha (thereby allowing users to understand the process without fear of generative AI’s frequent mathematical inaccuracies). The result was stored in state.aiFeedbackLaTeX.
Challenges & accomplishments: We were challenged by our desire to make an incredible UI/UX. We ended up with the simplicity and brevity of our current, final UI, which satisfied debates over how sophisticated to make the project's design. We thought that best use of Gemini/Wolfram Alpha to assist with mathematical education should be prioritized over the UI.
What's next: Continuing with Nightwalk, there could be great improvements with additional features that create other purposes for users. A feature we planned to add was a competitive gamification of math, similar to how Leetcode does computer science. Users can compete with others to solve mathematical puzzles to score points and rank up.
Another idea was a feature that would work great with teachers. Teachers and staff in education can leverage Nightwalk to enhance their classes and aid students with better understanding math material. Nightwalk could adapt and change their approach based on a student’s learning style.
Built With
- gemini
- swift
- swiftui
- visionkit
- wolfram-technologies
Log in or sign up for Devpost to join the conversation.