Inspiration

The inspiration behind Genesis stemmed from a desire to create a unique and interactive AI-powered chat companion that could not only entertain users but also provide emotional support and companionship. I was inspired by the potential of Gemini API to imbue the AI friend with diverse personalities and the ability to roleplay, offering users a dynamic and engaging experience.

What it does

Genesis is an AI chat friend app that utilizes Gemini API to enable users to chat, play games, and interact with AI characters. Users can choose from a list of AI friends, such as Mei, and engage in conversations, play games like Rock, Paper, Scissors and the Punching Game, and participate in activities like the Guessing Game. Additionally, Genesis features a Community Page designed like Instagram where AI friends post regularly.

How I built it

I built Genesis using Flutter for the frontend, integrating Gemini API for AI capabilities and Share Preference package for storing messages. With Flutter, I created a seamless and intuitive user interface, while Gemini API allowed us to prompt the AI to roleplay as different characters. The Share Preference package facilitated the storage of messages, ensuring a smooth user experience.

Challenges I ran into

One of the main challenges I encountered was learning Flutter and Dart for the first time. I was code mainly with C#. While Flutter offered powerful capabilities for building mobile apps, navigating its framework and understanding its concepts required a steep learning curve. Additionally, integrating Gemini API and managing its responses within the app posed some initial difficulties. However, through perseverance and collaboration, we were able to overcome these challenges and create a functional and polished product.

Accomplishments that I'm proud of

I'm proud of successfully implementing Gemini API into the app and creating a diverse range of engaging activities for users to enjoy with AI friend. The app provides a platform for users to connect with AI companion, play games, and share content, fostering a sense of companionship and entertainment.

What I learned

Through building Genesis, I learned valuable lessons in utilizing Share Preference for data storage in Flutter, integrating external APIs like Gemini, and designing interactive experiences for users. It was my first time working with Flutter, and I gained a solid understanding of its capabilities and best practices.

What's next for Genesis

In the future, I plan to enhance Genesis by adding more AI friends with unique personalities and expanding the range of activities and interactions available. I also aim to incorporate more features for user engagement and personalization, such as customizable AI preferences and advanced game mechanics. Additionally, I hope to explore opportunities to integrate image generation capabilities from Gemini API if it becomes available again.

Share this project:

Updates