{"id":16735473,"url":"https://github.com/thomasthaddeus/cyberclubtemplate","last_synced_at":"2026-05-22T14:12:08.265Z","repository":{"id":175072068,"uuid":"651209493","full_name":"thomasthaddeus/CyberClubTemplate","owner":"thomasthaddeus","description":null,"archived":false,"fork":false,"pushed_at":"2024-01-11T05:29:21.000Z","size":36,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-22T10:11:08.795Z","etag":null,"topics":["cybersecurity","gh-pages","jekyll","website"],"latest_commit_sha":null,"homepage":"http://thomasthaddeus.com/CyberClubTemplate/","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/thomasthaddeus.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2023-06-08T18:44:33.000Z","updated_at":"2024-01-11T05:05:05.000Z","dependencies_parsed_at":"2023-12-30T20:30:47.942Z","dependency_job_id":"e61f0b9d-7d88-4a81-ace5-0f5814d42594","html_url":"https://github.com/thomasthaddeus/CyberClubTemplate","commit_stats":null,"previous_names":["thomasthaddeus/cy-club-template","thomasthaddeus/cyberclubtemplate"],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thomasthaddeus%2FCyberClubTemplate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thomasthaddeus%2FCyberClubTemplate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thomasthaddeus%2FCyberClubTemplate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thomasthaddeus%2FCyberClubTemplate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thomasthaddeus","download_url":"https://codeload.github.com/thomasthaddeus/CyberClubTemplate/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243790950,"owners_count":20348379,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cybersecurity","gh-pages","jekyll","website"],"created_at":"2024-10-13T00:06:03.851Z","updated_at":"2026-05-22T14:12:03.239Z","avatar_url":"https://github.com/thomasthaddeus.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# README\n\n## Sitemap\n\n```bash\n.\n├── README.md\n├── _config.yml\n├── _layouts\n│   ├── default.html\n│   └── post.html\n├── _posts\n│   ├── 2023-06-05-welcome-to-jekyll.markdown\n│   └── ...\n├── _includes\n│   ├── header.html\n│   └── footer.html\n├── docs\n│   ├── Club_Overview.md\n│   ├── Membership_Guidelines.md\n│   ├── Documentation\n│   │   ├── Meeting_01.md\n│   │   ├── Meeting_02.md\n│   │   └── ...\n│   ├── Tutorials_and_Training_Materials\n│   │   ├── Getting_Started\n│   │   │   ├── Guide_01.md\n│   │   │   └── ...\n│   │   ├── Workshop_Materials\n│   │   │   ├── Workshop_01.md\n│   │   │   └── ...\n│   │   └── External_Resources.md\n│   ├── Projects_and_Research\n│   │   ├── Project_01\n│   │   │   ├── README.md\n│   │   │   └── ...\n│   │   ├── Project_02\n│   │   │   ├── README.md\n│   │   │   └── ...\n│   │   └── Research_Papers\n│   │       ├── Paper_01.md\n│   │       └── ...\n│   ├── CTFs_and_Challenges\n│   │   ├── Past_Challenges\n│   │   │   ├── Challenge_01.md\n│   │   │   └── ...\n│   │   ├── Upcoming_CTFs.md\n│   │   └── Practice_Challenges\n│   │       ├── Challenge_01.md\n│   │       └── ...\n│   ├── Tools_and_Software\n│   │   ├── Open_source_Tools\n│   │   │   ├── Tool_01.md\n│   │   │   └── ...\n│   │   └── Custom_Tools\n│   │       ├── Tool_01.md\n│   │       └── ...\n│   ├── Discussion_and_Ideas\n│   │   ├── Idea_Tracker.md\n│   │   └── Discussions.md\n│   └── Miscellaneous\n│       ├── Events.md\n│       └── Links_and_References.md\n├── assets\n│   ├── css\n│   │   ├── main.scss\n│   ├── js\n│   │   ├── main.js\n│   └── img\n│       └── logo.png\n└── index.md\n```\n\n### Folders\n\n1. The `_layouts` folder is where templates are defined for this website\n2. The `_posts` folder is where blog posts would go\n3. The `_includes` folder can contain snippets of code to include in layouts\n4. The `assets` folder is for:\n   1. CSS\n      1. **Note** that Jekyll uses SCSS for its style files, which is a superset of `CSS` that includes features like variables and nesting.\n   2. JavaScript\n   3. images\n5. `index.md` file at the root of the repository is the content for the main page of the website.\n   1. Any .md files in the root of the repository will be converted into pages on the website.\n6. `_config.yml` file for site settings:\n   1. This includes things like\n   2. The site name\n   3. Author name\n   4. The theme being used\n\n## Github Pages\n\nOne of the great things about Jekyll is its simplicity. To create a new page, all you have to do is create a new HTML or Markdown file.\n\nJust specify the branch and the directory (usually `main` and `/docs`, or `main` and `root`) from where GitHub Pages should build your site.\n\nIt is worth mentioning that while Jekyll is the easiest to use with GitHub Pages (since it's supported directly), you can still use other static site generators like Hugo or MkDocs. You would just need to build the site locally and commit the generated static files.\n\n## GitHooks\n\n### pre-commit\n\n```bash\n#!/bin/sh\n# pre-commit\n\nif git rev-parse --verify HEAD \u003e/dev/null 2\u003e\u00261\nthen\n    against=HEAD\nelse\n    # Initial commit: diff against an empty tree object\n    against=4b825dc642cb6eb9a060e54bf8d69288fbee4904\nfi\n\n# Redirect output to stderr.\nexec 1\u003e\u00262\n\n# Check for TODO comments\nif ! git diff-index --cached --quiet $against -- '**/*.js' '**/*.jsx' '**/*.ts' '**/*.tsx' '**/*.html' '**/*.css' '**/*.scss' '**/*.md' '(exclude)package-lock.json' '(exclude)yarn.lock'; then\n    echo \"To be committed:\"\n    git diff --cached -- '**/*.js' '**/*.jsx' '**/*.ts' '**/*.tsx' '**/*.html' '**/*.css' '**/*.scss' '**/*.md' '(exclude)package-lock.json' '(exclude)yarn.lock'\n    if git diff --cached --name-only -z $against | xargs -0 grep -n 'TODO'; then\n        echo 'ERROR: Commit contains TODO'\n        exit 1\n    fi\nfi\n\n# Normal exit\nexit 0\n```\n\n### Setup .hooks\n\n```bash\n# Run this command once to set up the hooks\ngit config core.hooksPath .hooks\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthomasthaddeus%2Fcyberclubtemplate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthomasthaddeus%2Fcyberclubtemplate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthomasthaddeus%2Fcyberclubtemplate/lists"}