Docify simplifies the process of generating essential project documentation such as UML diagrams, code coverage reports, generic READMEs, test plans, and lists of external dependencies. Connect your GitHub account, import your repositories, and start generating the documentation you need with ease.
- UML Diagrams: Automatically generate UML diagrams for your project.
- Code Coverage Reports: Create detailed code coverage reports.
- Generic README: Generate a standard README file for your project.
- Test Plan: Create comprehensive test plans.
- External Dependencies: List and manage external dependencies used in your project.
- Automation: Automates the process of generating documentation.
- GitHub Integration: Generated documentation is directly pushed to a new branch on the user's GitHub repository.
- Next.js: React framework for building the user interface.
- Prisma: ORM for database management with SQLite.
- SQLite: Lightweight database.
- Docker: Containerization for easy deployment.
- FastAPI: High-performance backend API.
Currently, Docify supports projects written in Java and Python. We aim to expand support to more languages in future.
-
Clone the repository:
git clone https://github.com/yourusername/docify.git cd docify
-
Install the dependencies:
npm install
-
Set up environment variables:
Create a
.env
file in theclient
directory and add the credentials from.env.example
.Next you need to get credentials for Google PALM API and add the client_secret*.json(rename it to client_secret.json) file in the
llm-api
directory. -
Run database migrations:
npx prisma migrate dev
-
Start the development server:
npm run dev
-
Build and run the Docker container: There are several dockerfiles in the repository. You can use the
Dokerfile_all_java
andDockerfile_all_py
one in thedocker/dockerfiles
directory to build and run the container.docker build -f docker/dockerfiles/Dockerfile_all_java -t docify_java . docker build -f docker/dockerfiles/Dockerfile_all_py -t docify_python . docker run -p 3000:3000 docify_java # For Java support docker run -p 3000:3000 docify_python # For Python support
-
Running Fast API server for LLM Go to the
llm-api
directory and run the following commands.- To Install FastAPI and Uvicorn
pip install fastapi uvicorn
- To run the server
uvicorn main:app --reload
- Open your browser and go to
http://localhost:3000
. - Connect your GitHub account by authorizing and installing the github app.
- Import your repository.
- Select the documentation you want to generate.
We welcome contributions! Please contact any of the maintainers or open an issue to discuss the changes you would like to make.
- Thanks to the developers of Next.js, Prisma, FastAPI, Docker, and SQLite for providing the great tools and frameworks that make this project possible.
- Thanks to all the maintainers, contributors, and supporters of this project. This project would not be possible without your help. The team effort is greatly appreciated.