Skip to content

Organization `.github` repositories grown from Mustache templates.

License

Notifications You must be signed in to change notification settings

github-utilities/dot-github

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

21 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Build Dot GitHub

Organization .github repositories grown from Mustache templates.

Byte size of dot-github Open Issues Open Pull Requests Latest commits


Table of Contents


Quick Start

Clone the source code of this repository somewhere...

mkdir -vp ~/git/hub/github-utilities
cd ~/git/hub/github-utilities


git clone git@github.com:github-utilities/dot-github.git
cd dot-github

To update in the future , pull the master branch of this repository

cd ~/git/hub/github-utilities/dot-github

git pull origin master

Track Organization Customizations

Checkout a branch for tracking Organization customizations...

cd ~/git/hub/github-utilities/dot-github


git checkout -b org-name

Modify the dataView.json file, usually by removing unneeded languages and editing lines above that...

{
  "ghf": true,
  "output_directory": "~/git/hub/org-name/.github",
  "name": "org-name",
  "author": "your-name",
  "email": "account@host.tld",
  "description": "Quick statement on what this Organization aims to accomplish",
  "license": "AGPL-3.0",
  "code_of_conduct": "contributor-covenant",
  "funding": {
    "key": "liberapay",
    "url": "org-name"
  },
  "languages": [
    {
      "name": "Awk",
      "emoji_word": ":tophat:",
      "emoji_code": "🎩"
    },
    {
      "name": "Bash",
      "emoji_word": ":shell:",
      "emoji_code": "🐚"
    },
    {
      "name": "Clang",
      "emoji_word": ":dragon:",
      "emoji_code": "&#x1f409"
    },
    {
      "name": "CSS",
      "emoji_word": ":paintbrush:",
      "emoji_code": "🖌"
    },
    {
      "name": "Docker",
      "emoji_word": ":whale2:",
      "emoji_code": "🐋"
    },
    {
      "name": "HTML",
      "emoji_word": ":spider_web:",
      "emoji_code": "🕸"
    },
    {
      "name": "JavaScript",
      "emoji_word": ":coffee:",
      "emoji_code": "☕"
    },
    {
      "name": "Kivy",
      "emoji_word": ":snake:",
      "emoji_code": "🐍"
    },
    {
      "name": "Liquid",
      "emoji_word": ":fountain:",
      "emoji_code": "⛲"
    },
    {
      "name": "MarkDown",
      "emoji_word": ":memo:",
      "emoji_code": "📝"
    },
    {
      "name": "MustacheJS",
      "emoji_word": ":wavy_dash:",
      "emoji_code": "〰"
    },
    {
      "name": "Python",
      "emoji_word": ":snake:",
      "emoji_code": "🐍"
    },
    {
      "name": "Rust",
      "emoji_word": ":gear:",
      "emoji_code": "⚙"
    },
    {
      "name": "SCSS",
      "emoji_word": ":factory:",
      "emoji_code": "🏭"
    },
    {
      "name": "Solidity",
      "emoji_word": ":chains:",
      "emoji_code": "&#x26d3"
    },
    {
      "name": "TypeScript",
      "emoji_word": ":symbols:",
      "emoji_code": "🔣"
    }
  ],
  "files": [
    {
      "in_path": ".mustache/.github/ISSUE_TEMPLATE/bug_report.md.mst",
      "out_path": ".github/ISSUE_TEMPLATE/bug_report.md"
    },
    {
      "in_path": ".mustache/.github/ISSUE_TEMPLATE/feature_request.md.mst",
      "out_path": ".github/ISSUE_TEMPLATE/feature_request.md"
    },
    {
      "in_path": ".mustache/.github/pull_request_template.md.mst",
      "out_path": ".github/pull_request_template.md"
    },
    {
      "in_path": ".mustache/.github/PULL_REQUEST_TEMPLATE/bug_fix.md.mst",
      "out_path": ".github/PULL_REQUEST_TEMPLATE/bug_fix.md"
    },
    {
      "in_path": ".mustache/.github/PULL_REQUEST_TEMPLATE/feature_addition.md.mst",
      "out_path": ".github/PULL_REQUEST_TEMPLATE/feature_addition.md"
    },
    {
      "in_path": ".mustache/.github/README.md.mst",
      "out_path": ".github/README.md"
    },
    {
      "in_path": ".mustache/CONTRIBUTING.md.mst",
      "out_path": "CONTRIBUTING.md",
      "partials": [
        ".mustache/partials/development-setup/linux.md.mst",
        ".mustache/partials/development-setup/windows.md.mst",
        ".mustache/partials/git-tips/branches.md.mst",
        ".mustache/partials/git-tips/commits.md.mst",
        ".mustache/partials/how-to-contribute/open-issues.md.mst",
        ".mustache/partials/how-to-contribute/report-bugs.md.mst",
        ".mustache/partials/style-guidelines/awk.md.mst",
        ".mustache/partials/style-guidelines/bash.md.mst",
        ".mustache/partials/style-guidelines/css.md.mst",
        ".mustache/partials/style-guidelines/docker.md.mst",
        ".mustache/partials/style-guidelines/html.md.mst",
        ".mustache/partials/style-guidelines/javascript.md.mst",
        ".mustache/partials/style-guidelines/liquid.md.mst",
        ".mustache/partials/style-guidelines/markdown.md.mst",
        ".mustache/partials/style-guidelines/mustachejs.md.mst",
        ".mustache/partials/style-guidelines/python.md.mst",
        ".mustache/partials/style-guidelines/rust.md.mst",
        ".mustache/partials/style-guidelines/scss.md.mst",
        ".mustache/partials/style-guidelines/solidity.md.mst",
        ".mustache/partials/style-guidelines/typescript.md.mst"
      ]
    },
    {
      "in_path": ".mustache/FUNDING.yml.mst",
      "out_path": "FUNDING.yml"
    },
    {
      "in_path": ".mustache/SUPPORT.md.mst",
      "out_path": "SUPPORT.md"
    },
    {
      "in_path": ".mustache/SECURITY.md.mst",
      "out_path": "SECURITY.md"
    }
  ]
}

Add and commit changes...

git add -A .

git commit -m 'Customizes defaults from master branch for org-name'

Utilize Dot GitHub

Initialize a .github repository for your Organization...

mkdir -vp ~/git/hub/org-name

git init ~/git/hub/org-name/.github

Note, above should match the same path as defined by output_directory within your customized dataView.json file.

Issue npm run build from this repository...

cd ~/git/hub/github-utilities/dot-github

npm run build

Commit and Push

Change directories to the .github repository for your Organization, and track built files...

cd ~/git/hub/org-name/.github

git add -A .

git commit -m 'Initial commit'

After creating a .github repository on GitHub, add a remote and push

git remote add hub git@github.com:org-name/.github.git

git push hub master

πŸŽ‰ Excellent πŸŽ‰ your Organization is now ready to begin unitizing documents built from this repository!


Notes

Pull Requests are most welcomed to add features and/or fix bugs. for example the following four steps show how to add lang-name to the list of supported style guidelines within the built CONTRIBUTING.md file.

0 Checkout the master branch of this repository and write a Mustache template...

cd ~/git/hub/github-utilities/dot-github


git checkout master

.mustache/partials/style-guidelines/lang-name.md.mst

- Lines of code should strive for less than `120` characters in length

- Comments within code should strive for less than `80`  characters in length

...

1 Add lang-name the list of languages and partials...

dataView.json (languages snip)

...

  "languages": [
    {
      "name": "Awk",
      "emoji_word": ":tophat:",
      "emoji_code": "🎩"
    },
    {
      "name": "Bash",
      "emoji_word": ":shell:",
      "emoji_code": "🐚"
    },
    {
      "name": "CSS",
      "emoji_word": ":paintbrush:",
      "emoji_code": "🖌"
    },
    {
      "name": "Docker",
      "emoji_word": ":whale2:",
      "emoji_code": "🐋"
    },
    {
      "name": "HTML",
      "emoji_word": ":spider_web:",
      "emoji_code": "🕸"
    },
    {
      "name": "JavaScript",
      "emoji_word": ":coffee:",
      "emoji_code": "☕"
    },
    {
      "name": "Kivy",
      "emoji_word": ":snake:",
      "emoji_code": "🐍"
    },
    {
      "name": "lang-name",
      "emoji_word": ":frog:",
      "emoji_code": "🐸"
    },
    {
      "name": "Liquid",
      "emoji_word": ":fountain:",
      "emoji_code": "⛲"
    },
    {
      "name": "MarkDown",
      "emoji_word": ":memo:",
      "emoji_code": "📝"
    },
    {
      "name": "Python",
      "emoji_word": ":snake:",
      "emoji_code": "🐍"
    },
    {
      "name": "SCSS",
      "emoji_word": ":factory:",
      "emoji_code": "🏭"
    }
  ],

...

dataView.json (partials snip)

...

    {
      "in_path": ".mustache/CONTRIBUTING.md.mst",
      "out_path": "CONTRIBUTING.md",
      "partials": [
        ".mustache/partials/development-setup/linux.md.mst",
        ".mustache/partials/development-setup/windows.md.mst",
        ".mustache/partials/git-tips/branches.md.mst",
        ".mustache/partials/git-tips/commits.md.mst",
        ".mustache/partials/how-to-contribute/open-issues.md.mst",
        ".mustache/partials/how-to-contribute/report-bugs.md.mst",
        ".mustache/partials/style-guidelines/awk.md.mst",
        ".mustache/partials/style-guidelines/bash.md.mst",
        ".mustache/partials/style-guidelines/css.md.mst",
        ".mustache/partials/style-guidelines/docker.md.mst",
        ".mustache/partials/style-guidelines/html.md.mst",
        ".mustache/partials/style-guidelines/javascript.md.mst",
        ".mustache/partials/style-guidelines/lang-name.md.mst",
        ".mustache/partials/style-guidelines/liquid.md.mst",
        ".mustache/partials/style-guidelines/markdown.md.mst",
        ".mustache/partials/style-guidelines/python.md.mst",
        ".mustache/partials/style-guidelines/scss.md.mst"
      ]
    },

...

2 Add and commit changes...

git add -A .

git commit -m 'Adds lang-name to available style guidelines'

3 After forking on GitHub, add it as a remote and push changes

git remote add fork git@github.com:your-name/dot-github.git

git push fork master

4 Open a Pull Request when your changes are ready.


Attribution

Resources that where helpful in building this project so far


License

Legal bits of Open Source software

Dot GitHub ReadMe documenting how things like this could be utilized
Copyright (C) 2020  S0AndS0

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published
by the Free Software Foundation; version 3 of the License.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.

About

Organization `.github` repositories grown from Mustache templates.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

No packages published