Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/interdiscipline/yassss
Yet another simple static site starter (for Jekyll)
https://github.com/interdiscipline/yassss
boilerplate jekyll jekyll-template static-site-generator
Last synced: about 1 month ago
JSON representation
Yet another simple static site starter (for Jekyll)
- Host: GitHub
- URL: https://github.com/interdiscipline/yassss
- Owner: interdiscipline
- Created: 2019-12-04T19:08:41.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2024-05-12T14:13:50.000Z (8 months ago)
- Last Synced: 2024-05-12T15:26:40.360Z (8 months ago)
- Topics: boilerplate, jekyll, jekyll-template, static-site-generator
- Language: HTML
- Size: 1.02 MB
- Stars: 13
- Watchers: 1
- Forks: 1
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Yassss - Yet another simple static site starter
## Built by [Interdiscipline](https://interdiscipline.com) ([Grant Blakeman](https://github.com/gblakeman))### Basics
**Yassss** is a [Jekyll](https://jekyllrb.com/) app that builds CDN-ready static content with proper asset cache-busting. It assumes deployment to Amazon S3 via CircleCI. In addition to the base Jekyll install, it adds support for a `content` section/tag that is parsed with [Markdown](https://daringfireball.net/projects/markdown/). It has some opinionated structure to the javascript, sass/css, and the accompanying linting, but that can be easily changed/removed.
The goal of Yassss is simple and unambitious: _provide a quick, easy way to spin up a new, production-ready static site, using Jekyll, without much tinkering_. It has opinions and maybe you agree with them and will also find it useful.
[View the demo build.](https://yassss.interdiscipline.com)
### Local Setup
Use this repo as a template—no need to clone it or fork it unless you’re planning to contribute.
Be sure to copy `_config.example.yml` and name it `_config.yml`. If you are planning on deploying with CircleCI, leave the `.example` version in place and set your environment variables. Yasss uses specific versions of Ruby and Node. If you’re new to managing multiple ruby/node versions, you may want to check the [Detailed Install](https://github.com/interdiscipline/yassss/blob/main/DETAILED_INSTALL.md) instructions.
Install everything with:
`yarn install`
The `bundle install` command will be run first. You can always run it separately as well.
### Deployment
Connect your repo to a [CircleCI](https://circleci.com) account.
Make sure the following environment variables are set:
* `AWS_ACCESS_KEY_ID`
* `AWS_SECRET_ACCESS_KEY`Tweak the `.circleci/config.yml` file to observe the branch(es) you wish to deploy on. By default it deploys to Production when commits are made to `production` and to Staging when commits are made to either `staging` or `main`.
All builds run [HTML Proofer](https://github.com/gjtorikian/html-proofer) in addition to js/sass linting. **You may need to disable it** (comment it out in `.circleci/config.yml`) on your _first deploy(s)_ until the site is up and running publicly because it will check internal links on your site in addition to links to external sites.
If you are new to static hosting on [AWS](http://aws.amazon.com), Dustin Curtis has a [great guide](https://dcurt.is/how-to-host-a-static-website-on-aws-with-https) that should get you pretty far.
### Content
Any Markdown files added to the `_content` directory can be called via the `content` tag and will be parsed through the Markdown parser.
```
{% content about.md %}
```### Assets
Yassss uses the [`jekyll-assets`](https://github.com/envygeeks/jekyll-assets) plugin to manage assets. Place all assets within the `_assets` directory and use the `asset` tag to call them.
```liquid
{% asset yassss.scss %}
{% asset yassss.js %}
``````css
body {
background-image: asset_url("test.png");
}
``````markdown
In a markdown file:![Cliff]({% asset cliff.jpg @path %})
```[More info…](https://github.com/envygeeks/jekyll-assets)
#### Bourbon & Normalize
The default Sass setup takes advantage of [Bourbon](https://www.bourbon.io) and [Normalize](https://github.com/necolas/normalize.css). If you do not wish to use them, remove their references in the core `yassss.scss` file and remove their files from the `_assets/css/vendor` directory.
### Other Jekyll Plugins
Both [`jekyll-sitemap`](https://github.com/jekyll/jekyll-sitemap) and [`jekyll-feed`](https://github.com/jekyll/jekyll-feed) are included in the basic config and enabled by default. Either or both can be easily disabled/removed based on your needs.