{"id":13763613,"url":"https://github.com/alanbarber/jbh","last_synced_at":"2025-10-02T16:31:22.304Z","repository":{"id":148742546,"uuid":"38651437","full_name":"AlanBarber/jbh","owner":"AlanBarber","description":"(JBH) Jekyll Blog Helper - A shell script to help manage a jekyll weblog site","archived":true,"fork":false,"pushed_at":"2017-11-13T19:05:43.000Z","size":14,"stargazers_count":25,"open_issues_count":0,"forks_count":11,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-02-13T20:24:18.122Z","etag":null,"topics":["bash-script","jekyll","jekyll-site"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AlanBarber.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","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":"2015-07-06T23:12:53.000Z","updated_at":"2023-07-19T08:06:12.000Z","dependencies_parsed_at":"2023-05-28T19:45:21.523Z","dependency_job_id":null,"html_url":"https://github.com/AlanBarber/jbh","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlanBarber%2Fjbh","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlanBarber%2Fjbh/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlanBarber%2Fjbh/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlanBarber%2Fjbh/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AlanBarber","download_url":"https://codeload.github.com/AlanBarber/jbh/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219875831,"owners_count":16554706,"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":["bash-script","jekyll","jekyll-site"],"created_at":"2024-08-03T15:00:53.562Z","updated_at":"2025-10-02T16:31:17.002Z","avatar_url":"https://github.com/AlanBarber.png","language":"Shell","funding_links":[],"categories":["Command Line Tools"],"sub_categories":[],"readme":"_NOTE: This app is no longer actively maintained! While it may still work with Jekyll it will not be updated in the future!_\n\n# jbh\n(JBH) Jekyll Blog Helper - A bash shell script to help manage a Jekyll weblog\nsite\n\nJBH provides a series of commands for performing common blogging activities\nwithin a Jekyll managed blog.\n\n````\n\tUsage: jbh.sh [OPTIONS]...\n\tJekyll Blog Helper - A command line blog management tool\n\t\n\tOptions:\n\t\n\t  -b, --build    runs a jekyll build\n\t  -c, --clean    cleans out the site output directory\n\t  -l, --list     lists all posts or drafts\n\t  -n, --new      creates a new post\n\t  -p, --publish  copies site via rcp/rsync to remote server\n\t  -s, --serve    runs the jekyll server\n\t  -v, --version  displays version of the script\n\t\n\tModifiers:\n\t\n\t  --build:\n\t    -d, --draft  includes drafts in jekyll build\n\t  --list:\n\t    -d, --draft  lists draft posts\n\t    -p, --post   lists posts\n\t  --new:\n\t    -d, --draft  creates a new draft post\n\t  --move:\n\t    -d, --draft  moves a draft to post\n\t    -p, --post   moves a post to draft\n\t  --serve:\n\t    -d, --draft  includes draft in jekyll server\n\n\tExamples:\n\t\n\t  jbh.sh --new \"Blog title\"\n\t    Creates a new post with the given title\n\t\n\t  jbh.sh --new \"Blog title\" \"1/1/2015\"\n\t    Create a new post on a specific date\n\t\n\t  jbh.sh --new --draft \"Blog title\"\n\t    Creates a new draft post with the given title\n\t\n\t  jbh.sh --build\n\t    Builds the site\n\t\n\t  jbh.sh --publish\n\t    Runs rcp/rsync to copy built site to a remote server\n\t    * NOTE: Server settings are stored at top of script\n\t\n\t  jbh.sh --list \"*2015*\"\n\t    Lists all posts that have '2015' in the file name\n\t\n\t  jbh.sh --move --draft \"2015-01-01-blog-title.md\"\n\t    Moves the matching file from draft to post folder\n````\n\n## Install\n\nCopy the *jbh.sh* script into the base folder of the your Jekyll site.\n\nOpen the script with your editor of choice and there are several settings you\nwill need to setup for publishing to your remote server.\n\n## How To Use\n\n### Create a Post\n\n````\n\t$ jbh.sh --new \"Enter Your Post Title\"\n````\n\nThis will create a properly formatted Jekyll post file and a correlating asset\nfolder for storing photos and files that are part of your post.\n\n````\n\t$ jbh.sh --new \"Enter Your Post Title\" \"1/1/2015\"\t\n````\n\nAdd a date to the --new command after the title and you can have a post created\nfor that specific date \n\n#### Drafts\n\nIf you wish to create a draft all you need to do is add a --draft after the\n--new to indicate a draft.\n\n````\n\t$ jbh.sh --new --draft \"Enter Your Draft Title\"\n````\n\n````\n\t$ jbh.sh --new --draft \"Enter Your Draft Title\" \"1/1/2015\"\n````\n\n### Listing Posts and Drafts\n\n````\n\t$ jbh.sh --list\n````\n\nTo list all posts just call the --list command\n\nIf you wish to list drafts add a --draft after the command\n\n````\n\t$ jbh.sh --list --draft\n````\n\n#### Filtering\n\nYou can enter filters to help search for specific posts\n\n````\n\t$ jbh.sh --list \"*2015*\"\n````\n\nThis example would list all posts that match \\*2015\\*\n\n### Moving Posts \u0026 Drafts\n\nDrafts are used to create new blog posts that are not published until you are\nready but can be built or served locally.\n\nWhen you are ready to publish a draft you need to move it from the draft folder\nto the post folder to be included in the build process.\n\nJBH provides a basic move command to do this for you.\n\n````\n\t$ jbh.sh --move --draft \"2015-01-01-post-title.md\"\n````\n\nThis will move the posts file from the draft to post folder.\n\nIf you need remove a published post you can also use the move command to do this\n\n````\n\t$ jbh.sh --move --post \"2015-01-01-post-title.md\"\n````\n\nThis will move the matching post file from the post folder to the draft folder.\n\n### Build The Site\n\n````\n\t$ jbh.sh --build\n````\n\nThis runs the Jekyll build to update the local copy of your site.\n\n### Publish To Your Web Server\n\n````\n\t$ jbh.sh --publish\n````\n\n### Cleaning The Site Folder\n\nSometimes the Jekyll build and server process will may run into issues when it\nbuilds your site and the contents do not get updated correctly.\n\nThere is an easy fix to clean out the site folder so a fresh build will generate\nall new files.\n\n````\n\t$ jbh.sh --clean\n````\n\nThis pushes the changes via scp or rsync to your remote server\n\n## Compatibility / Reporting Bugs \u0026 Issues\n\nJBH is developed and tested on Windows 8 using Git Bash from an install of Git\n1.9.5\n\nIt has not be tested on other platforms. \n\nIf you find a bug or issue please create an issue and include details about the\nenvironment you are using.\n\n## Change Log\n\nSee the history in [CHANGELOG.md](CHANGELOG.md)\n\n## License\n\nJBH is license under the [Apache 2.0 License](LICENSE)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falanbarber%2Fjbh","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falanbarber%2Fjbh","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falanbarber%2Fjbh/lists"}