In real-world tech environments, documentation is a critical but broken part of the software development lifecycle. Writing it is slow, repetitive, and often skipped. Reading it is painful and time-consuming, especially for new joiners. Maintaining it is impractical in fast-changing systems — documentation quickly becomes outdated, misleading, or irrelevant. This leads to onboarding delays, wasted engineering time, and avoidable bugs — all due to poor or outdated docs.
Design and build a smart documentation assistant/tool that improves how technical documentation is created, consumed, and maintained in evolving software environments.
Since we are currently in the development phase, thus we set up the project in the local environment for development, testing, and debugging. This document explains the steps to run our application in a local development environment.
To get the application up and running, you'll need to start both the frontend and the backend services.
The frontend is a React application. To start the development server, navigate to the project's root directory in your terminal and run the following command:
npm run dev
This command will compile the React code and launch a local server, typically accessible at http://localhost:5173. This is a hot-reloading server, so any changes you make to the source files will automatically update in your browser.
The backend is built with Python and the FastAPI framework. It provides the API endpoints for the frontend and handles data processing and business logic.
To start the backend server, open a new terminal window or tab and run this command from the project's root:
fastapi dev backend/server.py
Our backend leverages the Google Gemini 2.5 Flash model to provide AI-powered features. We use the LangChain framework to manage the connection and interactions with this model, ensuring a smooth and efficient way to deliver AI-driven functionalities.
The application integrates with GitHub using OAuth. This allows users to connect their Github Repository to our application for a better service.