Inspiration

The inspiration for Codiverse struck when I found myself immersed in the daunting task of knowledge transition meetings upon joining a new organization. I realized the immense strain it put on existing team members, torn between their ongoing deadlines and the necessity of guiding newcomers through intricate codebases. Moreover, the constant back-and-forth communication for clarifications added to the frustration. I saw an opportunity to alleviate this burden and streamline the process using cutting-edge technology.

What it does

Codiverse is a revolutionary no-code web app designed to facilitate seamless knowledge transition of codebases and provide comprehensive Q&A sessions, all powered by Google Gemini, an advanced generative AI model. It automates the knowledge transfer process, allowing existing team members to focus on their primary tasks while enabling newcomers to grasp the nuances of the existing project codebase quickly. Users can effortlessly navigate through code explanations and submit queries, receiving instant responses generated by the Gen-AI model. At last, It will also provide a PDF of code explanations generated along with snapshots of the codes to refer to later on.

How it was built

I leveraged a combination of innovative technologies to bring the project to life. The core of solution lies in Google Gemini, a powerful generative AI model renowned for its ability to comprehend and generate human-like text. To simplify integration and enhance functionality, Langchain, a Python library tailored for seamless interaction with generative AI models, was utlilized. For code explanation; uploaded code is broken down into sections like imports, classes, functions, and statements/line of codes for declarations/definitions. These sections are then uploaded to UI and explanations are lazily generated for each code block to avoid any API request limit error/ context limit error. After all explanations are generated, Download PDF button will be enabled to download a pdf file containing snippet screenshots along with their explanations. For Q&A chat; RAG technique was used on the code where code is being split into chunks and vectorized using Google Gemini Embeddings. Whenever user ask any query, corresponding context chunks are retrieved from vectorized documents and passed along with query to Generative AI model for response generation. For the user interface, Streamlit was used to create an intuitive web app UI using Python exclusively.

Challenges I ran into

Building Codiverse presented several challenges, notably in harnessing the capabilities of Google Gemini and integrating it effectively within the application. Ensuring smooth communication between different components of the tech stack, especially the UI part, posed another hurdle. Additionally, optimizing the user experience and handling potential scalability issues required meticulous planning and execution.

Accomplishments that I'm proud of

Despite the challenges, I am proud to have developed a transformative solution that enhances productivity and fosters knowledge sharing within teams. My accomplishment lies in successfully harnessing cutting-edge technology to address real-world challenges faced by software development teams. Codiverse represents a significant step forward in streamlining knowledge transition processes and empowering developers worldwide.

What I learned

Through the journey of building Codiverse, I gained valuable insights into the potential of generative AI models like Google Gemini in revolutionizing software development practices. I learned about the advantages as well as shortcomings of using Generative AI in real-world scenario. This project helped me deepen my understanding of integrating generative AI models into user-friendly applications.

What's next for Codiverse

Looking ahead, I envision expanding the capabilities of the platform to encompass a wider range of functionalities and support for additional programming languages. I aim to further enhance the AI model's comprehension and response generation abilities, making the knowledge transition process even more efficient and seamless. Additionally, I plan to incorporate feedback mechanisms to continuously improve the user experience and ensure Codiverse remains at the forefront of innovation.

Built With

  • github-api
  • google-gemini
  • langchain
  • python
  • reportlab
  • streamlit
  • vscode
Share this project:

Updates