/project-template

An awesome 𝗚𝗶𝘁𝗵𝘂𝗯 𝗧𝗲𝗺𝗽𝗹𝗮𝘁𝗲 for any project!🚀 Quickstart your projects and get control over your community.🔥 It includes 𝐢𝐬𝐬𝐮𝐞 𝐭𝐞𝐦𝐩𝐥𝐚𝐭𝐞𝐬, 𝐥𝐚𝐛𝐞𝐥𝐬, 𝐩𝐞𝐫𝐬𝐨𝐧𝐚𝐥𝐢𝐳𝐞𝐝 𝐫𝐞𝐚𝐝𝐦𝐞, 𝐆𝐢𝐭𝐡𝐮𝐛 𝐛𝐨𝐭𝐬, and much more!! 🤩

Primary LanguageShellMIT LicenseMIT

🔥 Josee9988's GitHub Project Template

@Josee9988/project-template's
@Josee9988/project-template's issues @Josee9988/project-template's pull requests @Josee9988/project-template link to create a new repository from the template @Josee9988/project-template's tests


🤔 What is this template all about?

  • This template can be used as a base layer for any of your future repositories/projects.
  • Make your project easy to maintain with 8 issue templates.
  • Quick start your documentation with personalized README badges and an extraordinary README structure.
  • Manage your issues with 20 issue labels created just for you!
  • Make your community healthier with all the guides like code of conduct, contributing, support, security...
  • Learn more with the official GitHub guide on creating repositories from a template.
  • To start using it; "click use this template" and create your new repository,
  • All the basic setup is made through an easy script that will auto-detect all your data to make it lightning fast! 🗲🗲 Clone your new repository and execute the SETUP_TEMPLATE.sh shell script to personalize the files with your private details. Check how to run it here.
  • All the markdown follows "MarkdownLint" rules.

Installation

  1. To create a new repository from this template, generate your new repository from this template; for more information or guidance, follow the GitHub guide.

  2. Install the 🤖 used GitHub bots (recommended)

  3. Clone your new repository generated from this template and cd into it.

  4. Execute the SETUP_TEMPLATE.sh shell script to customize the files with your data.

    bash SETUP_TEMPLATE.sh

    Or

    ./SETUP_TEMPLATE.sh

    Additionally, watch this video to see how to execute the script or use bash SETUP_TEMPLATE.sh --help to obtain some extra information.

    If the automatic detection of the username, project name or email is NOT correct, please post an issue, and you can manually correct them using the optional arguments like: bash SETUP_TEMPLATE.sh --username=whatever --projectName=whatever --email=whatever --projectType=whatever

  5. Review every single file and customize it as you like.

  6. Build your project. 🚀

⚠️ Customize every file to fit your requirements ⚠️


📚 What does it include?

  1. A SETUP_TEMPLATE.sh script that MUST be executed right when you clone your repository. The script will customize all the data with yours in all the files.

    1. A README template file with a default template to start documenting your project. (it includes personalized badges and text with your project details)
    2. A CHANGELOG template file based on Keep a Changelog.
    3. An issue_label_bot.yaml file to use the issue adder GitHub bot. Activate it or check its documentation.
    4. A config.yml file to modify multiple bot's behaviours.
    5. A settings.yml file to use the popular settings GitHub bot. Activate it or check its documentation.
    6. A CONTRIBUTING explaining how to contribute to the project. Learn more with the GitHub guide.
    7. A SUPPORT explaining how to support the project. Learn more with the GitHub guide.
    8. A SECURITY with a guide on how to post a security issue. Learn more with the GitHub guide.
    9. A CODEOWNERS with the new user as the principal owner. Learn more with the GitHub guide.
    10. A CODE_OF_CONDUCT with a basic code of conduct. Learn more with the GitHub guide.
    11. A PULL_REQUEST_TEMPLATE with a template for your pull request that closes issues with keywords. Learn more with the GitHub guide.
    12. Multiple issues templates. Learn more with the GitHub guide.
      1. A config.yml with the config and information about the issue templates.
      2. A Blank issue template with the super basic stuff, all the issues should contain.
      3. A Bug issue template.
      4. A Failing test issue template.
      5. A Documentation issue template.
      6. A Feature request issue template.
      7. An Enhancement request issue template.
      8. A Security report issue template.
      9. A Question or support issue template.

🌲 Project tree

Files that will get removed after the execution of SETUP_TEMPLATE.sh are not shown! 🙈

.
├── CHANGELOG.md
├── .github
│   ├── CODE_OF_CONDUCT.md
│   ├── CODEOWNERS
│   ├── config.yml
│   ├── CONTRIBUTING.md
│   ├── FUNDING.yml
│   ├── issue_label_bot.yaml
│   ├── ISSUE_TEMPLATE
│   │   ├── 1-bug-report.md
│   │   ├── 2-failing-test.md
│   │   ├── 3-docs-bug.md
│   │   ├── 4-feature-request.md
│   │   ├── 5-enhancement-request.md
│   │   ├── 6-security-report.md
│   │   ├── 7-question-support.md
│   │   └── config.yml
│   ├── ISSUE_TEMPLATE.md
│   ├── pull_request_template.md
│   ├── SECURITY.md
│   ├── settings.yml
│   └── SUPPORT.md
├── .gitignore
└── README.md

2 directories, 22 files

📝 Additional notes

  • After generating your new repo with this template, make sure to, right after you clone it, run the script SETUP_TEMPLATE.sh.

  • Then, after 'cloning' the repository you will be presented with all the files modified with your project details and information. It is essential to manually review every file to check if it fits your requirements and performs any necessary changes to customize the project as you want.

  • If you are using Windows and you don't know how to execute the SETUP_TEMPLATE.sh script:

    1. Install git for Windows.
    2. Right-click on the git repository folder and click "git bash here".
    3. Then just perform bash SETUP_TEMPLATE.sh or chmod u+x SETUP_TEMPLATE.sh && ./SETUP_TEMPLATE.sh.

🤖 Used GitHub bots

These are recommended bots that are prepared and configured for this template. If you install them, your coding experience will probably be much better. We sincerely recommend at least installing the issue label bot as this bot is the one that adds all the labels used in the issue templates.

  1. The issue_label_bot.yaml file depends on the issue label bot (✓ highly recommended).
  2. The settings.yml file depends on the settings label bot (optional).
  3. The config.yml file depends on the bot welcome bot and to-do bot (optional).

📸 Screenshots

A couple of screenshots to delight you before you use this template.

🔺 All the issue templates

All the issue templates.

🔻 An issue template opened

Bug issue template opened.

📘 The README template

Badges and texts will be replaced with your project details!

README.md template.

Or watch this video to see the whole README template.

🔖 The labels for your issues

If the bot probot-settings is not installed you will not have these beautiful labels! (there are more issue labels than in the image!)

LABELS

📝 The CHANGELOG template

(project name and project type will be replaced with yours)

CHANGELOG.md template.

🛡️ Security policy

Security issue.

💼 Community profile at 100%

Community profile.


🕵️ Extra recommendations

For the proper maintenance of the CHANGELOG.md, we recommend this VSCode extension and the read and understanding of the keep a changelog guide. Please read and comment about it in this dev.to post. We also recommend installing all the used bots.

💉 Project tests

If you want to improve the development of this project, you must, after changing or improving whatever, run the project's tests to prove that they are working.

To do so:

bash tests/TESTS_RUNNER.sh

🍰 Supporters and donators

@Josee9988/project-template's brand logo without text

We are currently looking for new donators to help and maintain this project! ❤️

By donating, you will help the development of this project, and you will be featured in this project's README.md, so everyone can see your kindness and visit your content ⭐.

project logo

🎉 Was the template helpful? Please help us raise these numbers up

GitHub's followers GitHub stars GitHub watchers GitHub forks

Enjoy! 😃

⚠️ Remember that this template should be reviewed and modified to fit your requirements. The script SETUP_TEMPLATE.sh should be executed right when you clone your new repository generated from here. There will be files that will need manual revision ⚠️

Made with a lot of ❤️❤️ by @Josee9988