Code Monkey home page Code Monkey logo

readme-ai's Introduction


README-AI

๐Ÿš€ Generate aesthetic, structured, and informative README.md files

โš™๏ธ Powered by OpenAI's GPT language model APIs and the software below:

Markdown OpenAI Pandas Python pytest Bash Anaconda


๐Ÿ“ Table of Contents


๐Ÿค– Overview

README-AI is a powerful, user-friendly tool that automatically generates high-quality README files for your Git repositories using OpenAI's language model APIs. By simply providing the path or url to your project's codebase, this tool will craft a well-structured and comprehensive README that highlights your project's features, installation steps, usage instructions, and more.

โš ๏ธ Note:

This project is currently under development and has an opinionated configuration and setup. While README-AI provides an excellent starting point for any project that requires documentation, it is important to review all text that is generated by the OpenAI API to ensure that it accurately represents your codebase.

๐Ÿ” Return


๐Ÿ”ฎ Features

1.
๐Ÿ‘‡

๐Ÿ”– Codebase Documentation

๐Ÿ“ Repository File Summaries

  • Code summaries of each script in your repository are generated via OpenAI's large language model APIs, such as gpt-3.5-turbo.
  • Your codebase is parsed and file contents are converted to natural language, and displayed in Markdown table format.
docs

โ†•๏ธ

docs

โ’‰
๐Ÿ‘‡

๐ŸŽ– Badges

๐Ÿ“ Introduction, Badges, Table of Contents

  • The OpenAI API generates a 1-sentence phrase describing your project.
  • Project dependencies and software visualized using beautiful SVG icon badges.
  • Badges are sorted by hex code, displayed from light to dark hues.
  • A table of contents is also provided for your README.md file.

header

โ’Š
๐Ÿ‘‡

๐Ÿงš Text Generation

๐Ÿ“ Project Feature Table

  • These sections are generated using detailed prompts, embedded with your repository metadata.
  • The Overview section describes your project's use case and application.
  • The Features section highlights attributes of your codebase, formatted in a Markdown table.
  • Working on fine-tuning the prompts to improve the accuracy and relevance to your project.
overview features

โ’‹
๐Ÿ‘‡

๐ŸŒฒ Repository Tree

Why not a directory tree as well? Visualize your codebase structure in your README.

tree

โ’Œ
๐Ÿ‘‡

๐Ÿ“ฆ Installation and Run Guides

Dynamically generates installation and run guides to help others explore and use your code!

๐Ÿ“ Setup


Support for:

  • Python
  • Rust
  • Go
  • C
  • Kotlin
  • Java
  • JavaScript
  • TypeScript
setup

โ’
๐Ÿ‘‡

๐Ÿ‘ฉโ€๐Ÿ’ปContributing Guidelines & more!

Adds additional standard sections to build out a robust README file!

contribute
license

โ’Ž
๐Ÿ‘‡

๐Ÿ’ฅ Example Files

Markdown example files generated by the README-AI app!

Example File Repository Language Bytes
1๏ธโƒฃ README-Python.md readme-ai Python

19,839

2๏ธโƒฃ README-TypeScript.md chatgpt-app-react-typescript TypeScript, React

988

3๏ธโƒฃ README-JavaScript.md assistant-chat-gpt-javascript JavaScript, React

212

4๏ธโƒฃ README-Kotlin.md file.io-android-client Kotlin, Java, Android

113,649

5๏ธโƒฃ README-Rust-C.md rust-c-app C, Rust

72

6๏ธโƒฃ README-Go.md go-docker-app Go

41

7๏ธโƒฃ README-Java.md java-minimal-todo Java

17,725

8๏ธโƒฃ README-FastAPI-Redis.md async-ml-inference Python, FastAPI, Redis

355

9๏ธโƒฃ README-Python-MLOps.md mlops-course Python, Jupyter

8,524

๐Ÿ”Ÿ README-Apache-Flink.md local directory PyFlink

32

โ’
๐Ÿ‘‡

๐Ÿ“œ Custom templates and styles coming soon!

Developing a feature that allows the user to select from a variety of README formats and styles.

Example template options include data and ML focused, research, hackathons, minimal, and more!

๐Ÿ” Return


๐Ÿš€ Getting Started

โœ… Dependencies

Before you begin, ensure that you have the following prerequisites installed:

  • Python 3.7 or higher
  • Conda package manager (recommended)
  • Access to the OpenAI API (see OpenAI API Setup below)

๐Ÿ“‚ Repository

Most user's will run README-AI using the command-line interface, specifying their repository on run-time. However, if you would like to use the default configuration, you will need to update the configuration file with your repository's remote URL (GitHub, GitLab) or local directory pat on your machine.

# Repository Configuration
[git]
repository = "INSERT YOUR REPOSITORY URL / PATH HERE"

๐Ÿ” OpenAI API Setup

To use README-AI, you will need an API key for OpenAI. Follow the steps below to create an API key:

User Guide - OpenAI API
  1. Go to the OpenAI website.
  2. Click the "Sign up for free" button.
  3. Fill out the registration form with your information and agree to the terms of service.
  4. Once logged in, click on the "API" tab.
  5. Follow the instructions to create a new API key.
  6. Copy the API key and keep it in a secure place.

๐Ÿ’ป Installation

  1. Clone the README-AI repository:
git clone https://github.com/eli64s/README-AI.git && cd README-AI
  1. Create a Conda environment and install the required dependencies:
# With Bash
bash setup/setup.sh

# With Conda
conda env create -f setup/environment.yaml
conda activate readme_ai
pip install -r requirements.txt
  1. Set up the OpenAI API key by creating an environment variable:
export OPENAI_API_KEY=<your-api-key>

๐Ÿช„ Using README-AI

Use the command-line to provide the OpenAI API key (if not already set) and specify an output path for your README file, along with the path to your local repository or remote code repository.

Command-Line Arguments:

  • --api_key : Provide your OpenAI API key.
  • --output : Provide a path where to write the output file.
  • --repository : Provide a remote Git URL or a local directory.
python src/main.py --api_key skabc123 --output README_AI.md --repository https://github.com/eli64s/README-AI

Alternatively, run the bash script to run README-AI with the default configuration.

bash scripts/run.sh

๐Ÿงช Running Tests

To run the unit-tests for README-AI, use the following command.

bash scripts/test.sh

๐Ÿ” Return


๐Ÿ›  Future Development

  • Add additional language setup guides for populating the ๐Ÿš€ Getting Started README section.
  • Implement multiple README templates with different formats and styling.
  • Add feature to select the language of text written to the README file.
  • Add a UI using Textual or another framework to improve the user experience.

๐Ÿค Contributing

Contributions are welcomed and encouraged! Please follow these steps in the Contributing Guidelines, thank you!


๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


๐Ÿ‘ Acknowledgments

SVG Icons

๐Ÿ” Return


readme-ai's People

Contributors

eli64s avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.