Skip to content

Examples, tools and templates to publish Smartdown-enabled blogs.

License

Notifications You must be signed in to change notification settings

smartdown/blog-kit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

title date description categories layout type
Smartdown Blog Kit
2020-03-13
Examples, tools and templates to publish Smartdown-enabled blogs
default
home

smartdown/blog-kit

Examples, tools and templates to publish Smartdown-enabled blogs

This README.md document is intended for authors who wish to deploy their static website or blog using the templates in this repository. This document will not be visible to visitors of the deployed blog.

An important goal of this project is to separate an author's original content from the boilerplate mechanics of presentation and deployment. This is still an imperfect separation, but for the most part, an author's content will reside in the _pages and _posts directories at the root of this project. The mechanics of publishing this content to a particular site with a particular theme has been abstracted into the idea of a target. A target is a subdirectory of the content repo that has theme-specific and site-specific configuration information.

QuickStart

This will enable you to quickly set up a copy of the blog-kit example on a forked version of the GitHub repo.

Fork or Copy the Repository

  • Fork the blog-kit GitHub repository using Fork.
  • If desired, rename your forked repository and edit its description from the default to a description of your choice. The name of the forked repository will be used as the default website name when deployed. For the purpose of this QuickStart, we'll assume you've left the name as blog-kit.

Choose a target

Install dependencies

Many of the targets assume a Jekyll-based deployment and rely on various Ruby Gems to enable local development and static site building. So you will need to perform a one-time installation of the necessary dependencies.

  • Verify you have Ruby installed. there is probably documentation about this on the Jekyll site.
  • Go to the mm targets directory: cd targets/mm/
  • Install dependencies: bundle install

Serve the site locally

Assuming your current directory is your local root (blog-kit/, for this QuickStart), then you can serve the mm site locally with the command targets/serve.sh mm.

Publish the site to your repo's GitHub Pages

Assuming your current directory is your local root (blog-kit/, for this QuickStart), then you can publish the mm site locally with the command targets/publish.sh mm.

Adding Content: Pages vs Posts

Customizing the Look and Style of your new site

Basics of Markdown

Basics of Smartdown

Details, Details, Details

targets/ scripts

The targets/ subdirectory of this project contains several scripts to manage the different targets.

  • targets/serve.sh <target-name>
  • targets/publish.sh <target-name>
  • targets/clean.sh <target-name>
  • targets/build.sh <target-name>
  • targets/sync.sh <target-name>

Typically, only serve.sh and publish.sh will be used.

Default GitHub Pages Domain Name Setup

Talk about the default, where the user doesn't use CNAME

Custom GitHub Pages Domain Name Setup

Talk about using CNAME and how this will inhibit https unless you augment it with a service like CloudFlare

Setting up CloudFlare to enable https

blah blah blah

License and Credits

Mostly links to the software used

Version History

0.0.1 - Initial version of a multi-target Jekyll-based blog. Includes clean-blog, minimal-mistakes, and stylish-portfolio themes. 0.0.2 - Adds sparrow and alembic target themes. Improve publishAll.sh to add .nojekyll to root. Improve sync.sh to handle missing _theme_assets or _theme_pages dirs, and to handle _theme_posts dir. Replace use of Plotly example with P5JS example. Add /autoplay to some playables. Adds _includes/smartdown_header.html override file. Adjusts where smartdown-outer-container div is inserted in various themes, and adjust its width to match the theme's responsive layout. 0.0.3 - Amends .gitignore to filter .hide and .deleteme suffixes, and targets/legacy/_sass/. Fixes build.sh to allow for - and . in repo names. Add syncThemeChanges() to serve.sh so that the _theme_XYZ directories are watched and synced. Adds targets/legacy/install.sh to targets/legacy and removes the corresponding assets (_sass/font-awesome/ and _sass/bootstrap-sass/) from the repo. targets/legacy/install.sh must be run once after this repo is downloaded to restore these assets. 0.0.4 - Adds targets/publishToOrgRoot.sh and targets/publishAllToOrgRoot.sh to support publishing to a top-level GitHub org's GitHub Pages site. 0.0.5 - Extends example blog to have an about-blog-kit subsection, and to demonstrate how to customize a theme for that subsection. Deletes unnecessary rawposts.html and rawpages.html. Generally cleans up example blog. 0.0.6 - Amends targets/publish.sh so that it handles a '--all' argument to publish all targets, and an '--org' repo name to publish to the top level (domain level) repo for a GitHub org. Adds ability for targets/publish.sh to target org roots via GitHub Pages. Delete targets/publishAll.sh in favor of the '--all' argument to targets/publis.sh. Adds targets/cb/_theme_assets/main.scss override for smartdown-outer-container horizontal margins. Fixes Smartdown play/pause button style for SPARROW theme. Adds a Graphiz example to the about-blog-kit subsection. Adapts targets/serve.sh and targets/build.sh to filter Jekyll error of deprecation warnings. 0.0.7 - Fix bug in publish.sh so that --org uses proper baseUrl. Improve targets/serve.sh so that baseUrl is added to the server URL when serving. Adds optional '--remote' argument to build/publish to enable the use of Jekyll remote_theme and the remote building of the Jekyll site. Fixes publish.sh so that errors from build.sh cause publish.sh to exit. 0.0.8 - Fixes serve.sh to delete remote_theme from _config.yml before running jekyll serve, in order to improve performance when developing locally.

About

Examples, tools and templates to publish Smartdown-enabled blogs.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published