This application provides different tools for multiple purposes

Welcome to readme-md-generator 👋

downloads License: MIT gitmoji-changelog Twitter: FranckAbgrall

CLI that generates beautiful README.md files.
readme-md-generator will suggest you default answers by reading your package.json and git configuration.

Demo

readme-md-generator is able to read your environment (package.json, git config...) to suggest you default answers during the README.md creation process:

demo

Generated README.md:

cli output

Example of package.json with good meta data:

// The package.json is not required to run README-MD-GENERATOR
{
  "name": "readme-md-generator",
  "version": "0.1.3",
  "description": "CLI that generates beautiful README.md files.",
  "author": "Franck Abgrall",
  "license": "MIT",
  "homepage": "https://github.com/kefranabg/readme-md-generator#readme",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/kefranabg/readme-md-generator.git"
  },
  "bugs": {
    "url": "https://github.com/kefranabg/readme-md-generator/issues"
  },
  "engines": {
    "npm": ">=5.5.0",
    "node": ">=9.3.0"
  }
}

🚀 Usage

Make sure you have npx installed (npx is shipped by default since npm 5.2.0)

Just run the following command at the root of your project and answer questions:

npx readme-md-generator

Or use default values for all questions (-y):

npx readme-md-generator -y

Use your own ejs README template (-p):

npx readme-md-generator -p path/to/my/own/template.md

You can find ejs README template examples here.

Code Contributors

This project exists thanks to all the people who contribute. [Contribute].

Financial Contributors

Become a financial contributor and help us sustain our community. [Contribute]

Individuals

Organizations

Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]

🤝 Contributing

Contributions, issues and feature requests are welcome.
Feel free to check issues page if you want to contribute.
Check the contributing guide.

Author

👤 Franck Abgrall

Show your support

Please ⭐️ this repository if this project helped you!

📝 License

Copyright © 2019 Franck Abgrall.
This project is MIT licensed.


This README was generated with ❤️ by readme-md-generator

Comments
  • ✨Ask for package manager for a JS Project fixes#167

    ✨Ask for package manager for a JS Project fixes#167

    Hi!

    I am asking the user about the package manager in the project-info.js file after checking for package.json. Please let me know if there is a better place to put that question.

    Thank you.

  • Escape markdown characters in user input strings

    Escape markdown characters in user input strings

    Describe the bug Sometimes the username can itself contain markdown characters and it would render improperly. We need to escape markdown character for it to actually render the correct username.

    For example:

    * Twitter: [@__anku__](https://twitter.com/__anku__)
    

    renders as

    expected output

    To Reproduce Use markdown characters while entering username/email.

    I am not exactly sure how to solve this but I think we need to create a function that will escape all markdown characters and use that function to sanitize user input.

    I would like to take a shot at this :)

  • Use npm/yarn

    Use npm/yarn

    If a package.json is detected, readme-md-generator should ask to choose between yarn and npm. It would allow suggest install, usage and test command with correct package manager (instead of always using npm)

  • Capacity to read a pom.xml to generate the README

    Capacity to read a pom.xml to generate the README

    For old guys like me, that still develop with Maven, it would be great to generate the README.md from a pom.xml instead of a package.json file.

    • New command line option: -x
    readme -x
    
    • The pom.xml must contain some informations such as:
    <project>
        <name>My Great Project</name>
        <description>Some useful description</description>
        <url>http://example.com</url>
    
        <contributors>
            <contributor>
                <name>Bob</name>
            </contributor>
        </contributors>
    
        <licenses>
            <license>
                <name>MIT</name>
            </license>
        </licenses>
    
        <issueManagement>
            <url>http://example.com/issues</url>
        </issueManagement>
    </project>
    
  • Error on

    Error on "readme" command : TypeError [ERR_INVALID_ARG_TYPE]

    When I try to use the "readme" command it returns this error that I may have found in several Issue on other repo but none of the solutions are useful here :

    ⠋ Gathering project infosreadme [template]
    
    Generate README.md from a template
    
    Positionals:
      template  The name of template you want to use             [défaut: "default"]
    
    Options:
      --version  Affiche le numéro de version                              [booléen]
      --help     Affiche de l'aide                                         [booléen]
    
    TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received type undefined
        at validateString (internal/validators.js:107:11)
        at Object.basename (path.js:1149:5)
        at module.exports (/usr/local/lib/node_modules/readme-md-generator/node_modules/project-name/index.js:8:47)
        at Object.getProjectInfos (/usr/local/lib/node_modules/readme-md-generator/src/project-infos.js:106:16)
        at async mainProcess (/usr/local/lib/node_modules/readme-md-generator/src/cli.js:46:31)
    

    Thank you !

  • ✨Ask user for a link to  contributing guide (fixes #168)

    ✨Ask user for a link to contributing guide (fixes #168)

    Hi!

    This PR fixes #168

    I had to rename contributingUrl to issuesUrl first and then I used contributingUrl for the contributing guide link.

    Please take a look and suggest any changes if required. Thank you 🙂

  • [Hacktoberfest friendly]  Process stuck after readme creation

    [Hacktoberfest friendly] Process stuck after readme creation

    Describe the bug

    After the readme is generated, the process does not exit so we can't go back to the shell.

    To Reproduce

    1. Clone project
    2. Remove package-lock.json and node_modules (I think the problem is that when package is globally installed with npm, lock file is not used)
    3. Run npm start
    4. Answer questions
    5. The process does not quit after the readme is generated
  • Static badge generation not working when license name contains special characters

    Static badge generation not working when license name contains special characters

    Describe the bug Static badge generation not working when license name contains special characters. Example Apache-2

    To Reproduce Steps to reproduce the behavior:

    • In your package.json, add "license": "Apache-2"
    • Run readme generator
    • Fill license url

    Expected behavior A clear and concise description of what you expected to happen.

    Should display a license badge in README with Apache-2 but we get a 404.

    Additional context Add any other context about the problem here.

    The issue come from shields.io that cannot contains special characters in url. readme-md-generator should skip special chars in license name.

  • fixes #134: Display license badge even when there is no license url

    fixes #134: Display license badge even when there is no license url

    When there is a license name but no license URL, we will show the license badge with href=#.

    Example Image:

    image

    I ran the tests and all tests are passing.

    If it is not the desired fix, please let me know and I will update my PR accordingly.

    Thank you.

  • .git is added to the package

    .git is added to the package

    Hello!

    I juste updated readme-md-generator to version 0.6.0 and it seems there is the .git directory that has been added to the package. That implies that when when we try to do a npm install when readme-md-generator is already installed, we got the following error:

    npm ERR! path node_modules/readme-md-generator
    npm ERR! code EISGIT
    npm ERR! git node_modules/readme-md-generator: Appears to be a git repo or submodule.
    npm ERR! git node_modules/readme-md-generator
    npm ERR! git Refusing to remove it. Update manually,
    npm ERR! git or move it out of the way first.

    To reproduce it, simply install [email protected], install it and than try to do an other npm install

    Have a good day!

    Le Poulet Suisse

  • Lock in question. I can't type anything.

    Lock in question. I can't type anything.

    When i execute, it's locked in second question "project version (use empty value to skip)".I can not type anything and I have to close the terminal.

    issueGenerator

  • Better Github detection

    Better Github detection

    Is your feature request related to a problem? Please describe. I use the ssh remote format for many of my cloned github repos.

    An example of this format is:

    git clone [email protected]:kefranabg/readme-md-generator.git
    

    As you can see in this function below...

    https://github.com/kefranabg/readme-md-generator/blob/f0370c8efe602bfc1e1334ea556214de4c1b0f04/src/project-infos.js#L76-L82

    Where GITHUB_URL is defined as

    https://github.com/kefranabg/readme-md-generator/blob/f0370c8efe602bfc1e1334ea556214de4c1b0f04/src/project-infos.js#L14

    The check for if a local project is a github project clone only handles git-over-https.

    Describe the solution you'd like An expansion to treat git-over-ssh on the github url as the same as the equivalent git-over-https

    Describe alternatives you've considered Unsure.

    Additional context ...

  • Image Support

    Image Support

    Describe the solution you'd like Support Image For Showcase Program

    Describe alternatives you've considered A clear and concise description of any alternative solutions or features you've considered.

    Additional context Add any other context or screenshots about the feature request here.

  • Generating bad links

    Generating bad links

    The command line program generates bad links.

    To Reproduce Steps to reproduce the behavior:

    1. When prompted for to add a link the link will be entered with // between https: and the second level domain (website name)

    Expected behavior Should return the url as entered

    Screenshots

    Screen Shot 2021-11-25 at 9 46 48 AM

    Desktop (please complete the following information):

    • OS: Mac 12.01
  • Improve readability of README.md

    Improve readability of README.md

    Fixed some language issues like metadata is one word. And "suggest you" is poor English so "suggest ... to you"

    Fixed up links to be local absolute paths and point license badge to license section.

  • [Feature] Ask changelog and update copyright year license

    [Feature] Ask changelog and update copyright year license

    Resolving issue #205

    Ask a new question to set the changelog url. By default, it takes the base url of the repository and get a file named : "CHANGELOG.md"

    In the same time, I have updated the copyright year to 2021 for passing all the test.

Package damsel provides html outlining via css-selectors and common template functionality.

Damsel Markup language featuring html outlining via css-selectors, extensible via pkg html/template and others. Library This package expects to exist

Oct 23, 2022
Goview is a lightweight, minimalist and idiomatic template library based on golang html/template for building Go web application.

goview Goview is a lightweight, minimalist and idiomatic template library based on golang html/template for building Go web application. Contents Inst

Dec 25, 2022
This application provides different tools for multiple purposes

Welcome to phoenix ?? A command line helper made to simplify your life. This application provides different tools for multiple purposes. Install curl

Dec 18, 2021
A vulnerable graphQL application, for testing purposes

Vulnerable-GoQL Vulnerable-GoQL is an web API which implements main security breach.

Jul 31, 2021
siusiu (suite-suite harmonics) a suite used to manage the suite, designed to free penetration testing engineers from learning and using various security tools, reducing the time and effort spent by penetration testing engineers on installing tools, remembering how to use tools.
siusiu (suite-suite harmonics) a suite used to manage the suite, designed to free penetration testing engineers from learning and using various security tools, reducing the time and effort spent by penetration testing engineers on installing tools, remembering how to use tools.

siusiu (suite-suite harmonics) a suite used to manage the suite, designed to free penetration testing engineers from learning and using various security tools, reducing the time and effort spent by penetration testing engineers on installing tools, remembering how to use tools.

Dec 12, 2022
CSPFinder is a tool to compare ROI of selling Cash Secure Put options between different tickers for different expiry dates.

CSPFinder is a tool to compare ROI of selling Cash Secure Put options between different tickers for different expiry dates. It is intended to help open new cash secured put positions.

Dec 21, 2021
Plugs module to see different types of plug types needed in different countries, and a comparison tool between two countries plug socket types.

plugs Importing the module: go get github.com/matthewboyd/plugs "github.com/matthewboyd/plugs" How to use the module: There are two functions wi

Dec 28, 2021
May 11, 2023
what the name says (made for "educational" purposes)
what the name says (made for

NOTES You will need to Download Golang - golang compiler Download MinGW - C compiler (Add this to your path.) You can safely ignore these errors below

May 9, 2022
"Go SQL DB" is a relational database that supports SQL queries for research purposes

A pure golang SQL database for database theory research

Jan 6, 2023
Gets Firebase auth tokens (for development purposes only)Gets Firebase auth tokens

Firebase Token Gets Firebase auth tokens (for development purposes only) Getting started Create Firebase project Setup Firebase authentication Setup G

Nov 17, 2021
A CoreDNS plugin to serve temporary TXT records for validation purposes (eg. Let's Encrypt DNS-01)

temptxt Name temptxt - serves TXT records for validation purposes (eg. ACME DNS-01 challenge) updated through a HTTP api. Description The temptxt plug

Aug 23, 2022
Simple auth service for testing purposes

Auth mock service Simple auth service for testing purposes. Based on https://github.com/stefanprodan/podinfo Credentials: { "username": "username-ro

Oct 5, 2021
Collection of useful golang code snippets, mainly for learning purposes

Go-Things Collection of go code snippets, tools, etc. mainly for learning purpos

Dec 31, 2021
Generate wordlist from already collected subdomains for bruteforcing purposes.

goSubsWordlist Generate a wordlist from a list of already discovered subdomains. This list can be used for further bruteforcing for more subdomains. I

Sep 25, 2022
An event driven remote access trojan for experimental purposes.

erat An event driven remote access trojan for experimental purposes. This example is very simple and leverages ssh failed login events to trigger erat

Jan 16, 2022
Social network - A microservices based backend for training purposes

social_network A microservices based backend for training purposes Requirements

Feb 24, 2022
FizzBuzz: A ready-to-use console application that provides tools to format output with conditions

FizzBuzz FizzBuzz is a ready-to-use console application that provides tools to f

Feb 16, 2022
The dynamic infrastructure framework for everybody! Distribute the workload of many different scanning tools with ease, including nmap, ffuf, masscan, nuclei, meg and many more!
The dynamic infrastructure framework for everybody! Distribute the workload of many different scanning tools with ease, including nmap, ffuf, masscan, nuclei, meg and many more!

Axiom is a dynamic infrastructure framework to efficiently work with multi-cloud environments, build and deploy repeatable infrastructure focussed on

Dec 30, 2022
Linux provisioning scripts + application deployment tools. Suitable for self-hosting and hobby-scale application deployments.

Apollo Linux provisioning scripts + application deployment tools. Suitable for self-hosting and hobby-scale application deployments. Philosophy Linux-

Feb 7, 2022