Skip to content

Latest commit

 

History

History
180 lines (128 loc) · 6.54 KB

README.md

File metadata and controls

180 lines (128 loc) · 6.54 KB

Profesional Readme Generator

Overview

The Readme Generator is a command-line application built to simplify the creation of professional README files for GitHub projects. As a crucial aspect of open source development, a comprehensive README provides vital information to users, contributors, and collaborators. This tool automates the README generation process, allowing project creators to allocate more time to actual development.

The primary tools used include:

  • Node.js (v19.4.0): powers the Readme Generator, providing a robust JavaScript runtime for executing command-line operations efficiently.

Table of Contents

Screenshot

Readme Generator

The Readme Generator main screen.

Installation

To use the Readme Generator, follow these steps:

  1. Ensure you have Node.js installed.
  2. Clone this repository to your local machine.
git clone https://github.com/martindocs/mtatarski-readme-generator.git
  1. Navigate to the project directory.
cd mtatarski-readme-generator
  1. Install dependencies.
npm install

How to Use

  1. Run the application using the following command:
node index.js
  1. Answer the prompts to customize your README.
  2. Once completed, find the generated README in the output folder.
  3. For a quick demonstration, you can watch a short video on youtube ▶️ watch a short video showcasing how to use the Readme Generator.

Dependencies

The following Node.js packages are utilized in this project:

  • Inquirer: A powerful package for handling user prompts, enabling dynamic input in the command line.
  • Commander: A module for creating command-line interfaces with a focus on simplicity and extensibility.
  • Minimist: A minimalist command-line argument parser for Node.js.

Features

  • Dynamic README and LICENSE Generation: Create README and LICENSE files dynamically through user input utilizing the Inquirer package.

  • Customization Options: Tailor your README by easily adding a logo or screenshot to enhance project visibility.

  • Multiple README Support: Generate multiple README files without overwriting each other. Each file is stored in a uniquely named folder (e.g., YYYYMMDD-HHMMSS).

  • Terminal Banner Display: Optionally display or hide the terminal banner using the --banner or --nobanner flag. For example:

    node index.js --banner

    or

    node index.js --nobanner

    Note: There is a known bug where the banner may not be immediately disabled. If you encounter this issue, try reloading the program or refer to the Troubleshooting section for more information.

  • Development Terminal Help: Access helpful information about the terminal commands using the --help option. For example:

    node index.js --help

Tests

N/A

Contributions

Contributions are welcome! Here are several ways you can contribute:

Contributing Guidelines

Click to expand
  1. Fork the Repository: Start by forking the project repository to your GitHub account.

  2. Clone Locally: Clone the forked repository to your local machine using a Git client.

    git clone <your-forked-repo-url>
  3. Create a New Branch: Always work on a new branch, giving it a descriptive name.

    git checkout -b new-feature-x
  4. Make Your Changes: Develop and test your changes locally.

  5. Add Changes to Staging Area:

    git add -A 
  6. Commit Your Changes: Commit with a clear and concise message describing your updates.

    git commit -m 'Implemented new feature x.'
  7. Push to GitHub: Push the changes to your forked repository.

    git push origin new-feature-x
  8. Submit a Pull Request: Create a PR against the original project repository. Clearly describe the changes and their motivations.

Once your PR is reviewed and approved, it will be merged into the main branch.

  1. Switch Back to Main Branch and Pull Sync with Main: If you wish to work on a new feature/change, switch back to the main branch and sync with the latest changes.
git checkout main
git pull origin main
  1. Repeat the Process if Necessary: Start from point 3 onwards.

Troubleshooting

Banner Display Issue

If you are experiencing an issue where the banner is not properly disabled even when using the --nobanner flag, follow these steps to resolve the problem:

  1. Reload the Program:

    • After changing the --nobanner flag, try reloading the program. Sometimes the changes might not take effect immediately.
  2. Check Configuration:

    • Ensure that the configuration file (config.json) reflects the correct values for the banner and nobanner flags after running the program with the --nobanner option.

Feature Requests and Bug Fixes

We welcome feature requests and bug reports from our users. If you have a suggestion for a new feature or if you encounter a bug, please follow these steps:

  1. Feature Requests:

    • If you have an idea for a new feature, feel free to open a feature request on the GitHub repository. Provide a detailed description of the proposed feature and why it would be beneficial.
  2. Bug Reports:

    • If you encounter a bug, please open a detailed bug report on the GitHub repository. Include information about your operating system, Node.js version, and any steps to reproduce the issue.

Our team is dedicated to improving the program and addressing user feedback. Thank you for helping us make it better!

Questions

If you have any questions, feel free to reach out to me via GitHub.

License

Please refer to the LICENSE file in this repository for details on how this project is licensed.