Skip to content

πŸ§™ A simple CLI tool to auto-generate clean, professional README.md files for your projects using AI and code analysis.

Notifications You must be signed in to change notification settings

PIYUSH1SAINI/ReadMe-wiz

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

60 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

ReadMe-wiz

A command-line tool for generating README files. Utilizes code parsing and prompts to create comprehensive documentation.

Version License Downloads GitHub Stars

πŸ“š Table of Contents

Description

ReadMe-wiz is a command-line tool designed to simplify the process of generating comprehensive README files for software projects. It leverages code parsing capabilities to extract key information from your project's source code, then uses prompts to gather additional details and generate a polished README.md. The make-readme CLI command, defined in the package.json file, provides a user-friendly interface for generating READMEs. The tool supports a wide range of programming languages, demonstrated by its ability to parse various file types in the test directory. Key functions like generateReadme and parseCode highlight its core functionality.

Tech Stack

Node.js Inquirer.js Chalk Tree-sitter Google Generative AI JavaScript C++ C# CSS Go HTML5 Java PHP Python Ruby Rust TypeScript Vue.js ✨ Made with ReadME Wiz

Architecture Overview

graph TD
    A[PromptBuilder] --> B(generateReadme);
    C[codeParser] --> B;
    D[gitUtils] --> B;
    E[uiHelpers] --> A;
    B --> F[README.md];

Loading

File Structure

graph TD
    A[package.json] --> B(bin);
    B --> C[index.js];
    A --> D(lib);
    D --> E[codeParser.js];
    D --> F[generateReadme.js];
    D --> G[gitUtils.js];
    D --> H[promptBuilder.js];
    D --> I[uiHelpers.js];
    A --> J(test);
    J --> K["sample.*"];

Loading

Features

  • Parses various programming languages (C++, C#, CSS, Go, HTML, Java, JavaScript, JSX, PHP, Python, Ruby, Rust, TypeScript, TSX, Vue) to extract code information.
  • Generates a README.md file based on parsed code and user input.
  • Uses prompts to guide the user through the README creation process.
  • Utilizes Git integration to fetch contributor information.
  • Supports API key validation (for example, validateGeminiApiKey).
  • Provides a user-friendly CLI interface via make-readme.

Installation

Prerequisites

Note

Node.js >=14 is required for compatibility. Ensure you have Node.js and npm installed.

Setup

  1. Global CLI Installation: Install the CLI tool globally.

    npm install -g readme-wiz
  2. Clone Repository: Clone the repository and install dependencies.

    git clone https://github.com/PIYUSH1SAINI/ReadMe-wiz.git
    cd ReadMe-wiz
    npm install

Tip

Use npm install -g readme-wiz for the quickest setup.

Usage

Execution Options

Global CLI

Important

Ensure that you have cloned the repository and run npm install before using the CLI.

To generate a README, simply run:

make-readme

The following options are available:

Command Description
make-readme Creates a new README file using default settings. Overwrites existing README.
make-readme --new Creates a completely new README file. Overwrites existing README.
make-readme --new "some user requests" Creates a new README file incorporating specified user requests. Overwrites existing README.
make-readme "some user requests" Updates an existing README file with specified user requests. Creates a new one if none exists.

Testing

This project includes a test suite for the multilanguage feature. The tests are located in the test folder. To run the tests, execute the following command:

node runParserTests.js

Contributors

@PIYUSH1SAINI

License

MIT License

This software is licensed under the MIT License. See the LICENSE file for details.

ReadMe Wiz Logo