readme-writer
v2.0.0
Published
A tool to generate professional README files based on project structure
Maintainers
Readme
readme-gen
A tool to generate professional README files based on project structure.
Introduction
readme-gen is a sophisticated command-line tool designed to automate the creation of comprehensive and professional README files. By analyzing your project's structure and leveraging the power of Google's Generative AI, readme-gen intelligently generates a README that includes sections such as introduction, installation instructions, usage examples, and a description of the file structure and dependencies. This significantly reduces the time and effort required to create well-documented projects. The tool is designed for TypeScript projects and offers a high level of customization through configuration.
Installation
Clone the repository:
git clone <repository_url>Navigate to the project directory:
cd readme-genInstall dependencies:
npm installBuild the project:
npm run build
This will compile the TypeScript code into JavaScript, ready for execution.
Usage
readme-gen utilizes the command-line interface. After installation and building, you can generate a README file using the following command:
readme-genThe generated README will be outputted to the console. You can then redirect this output to a file:
readme-gen > README.mdThe tool automatically detects your project's structure and generates the README accordingly. Further customization options may be added in future releases. Error handling is built-in to provide informative feedback in case of issues.
File Structure
The project follows a standard Node.js module structure:
readme-gen/
├── src/ // Source code
│ ├── index.ts // Main application entry point
│ └── utils/ // Utility functions
│ ├── aiClient.ts // Google Generative AI client interaction
│ ├── chartGenerator.ts // Chart generation (if applicable)
│ ├── fileReader.ts // File system interaction
│ └── readmeBuilder.ts // README file construction logic
├── tsconfig.json // TypeScript compiler configuration
├── package.json // Project metadata and dependencies
├── package-lock.json // npm dependency lockfile
└── .gitignore // Files to exclude from version controlThe node_modules directory, containing the project's dependencies, is not included in the above representation due to its size and dynamic nature.
Dependencies
@google/generative-ai: For leveraging Google's large language model to generate README content.commander: For parsing command-line arguments and building the CLI.dotenv: For loading environment variables from a.envfile (optional).typescript: For compiling the TypeScript source code.ts-node: For executing TypeScript code directly (during development).
Contributing
Contributions are welcome! Please open an issue or submit a pull request. Before contributing, please ensure your code adheres to the project's coding style and includes comprehensive tests.
License
This project is licensed under the MIT License - see the LICENSE file for details.
