Inspiration
Every creative knows how hard it is to finish a project. As a fiction writer, I wanted an AI tool to help me craft narrative storylines for my characters, inspired by the existing literary corpus. I wanted to query books not by their author or resume, but by their storylines.
What it does
MOIRAI is:
- a database of characters' emotional arc
- a GUI to visualise characters and their arc
- A tool to automatically extract characters and storylines from a user-provided novel
How I built it
I began by creating a database of characters and their arc using a third-party Python library called BookNLP. Once I had a working prototype running on the Railway hosting platform, I deployed it to Google Cloud. I then created a new version of the database by using Gemini agents.
I use Gemini's coding capabilities through and through to help me navigate the APIs, the tech stacks i was not familiar with.
Challenges I ran into
Learning cloud deployment. Running out of Gemini credits :')
Accomplishments that I am proud of
I'm proud of:
- the original idea
- climbing the learning curve
What I learned
Everything.
- Database: learned SQLite, PostgreSQL, Gemini's gen-ai API, NLP techniques, prompt engineering
- BackEnd: learned FastAPI, sqlalchemy, pydantic
- FrontEnd: learned to use React, Vite and npm.
- FullStack: learned to coordinate volumes, PostgreSQL database, front and back ends.
- DevOps: learned to use Docker, testing environments
- Hosting: learned to use Google Cloud CLI
What's next for MOIRAI
Continuing MOIRAI, I will:
- Process more books to complete the database
- Build a business-facing book recommender system that includes the characters' storylines
- Leverage Gemini's API and connect it to the database to build a client-facing tool to craft storylines.
Log in or sign up for Devpost to join the conversation.