Skip to content

Commit fd459f2

Browse files
committed
Initial commit
0 parents  commit fd459f2

34 files changed

+1617
-0
lines changed

.editorconfig

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
root = true
2+
3+
[*]
4+
charset = utf-8
5+
# 2 space indentation
6+
indent_style = space
7+
indent_size = 2
8+
trim_trailing_whitespace = true
9+
# Unix-style newlines with a newline ending every file
10+
end_of_line = lf
11+
insert_final_newline = true

.gitattributes

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# Set default behavior to automatically normalize line endings.
2+
* text=auto
3+
4+
# Force bash scripts to always use LF line endings so that if a repo is accessed
5+
# in Unix via a file share from Windows, the scripts will work.
6+
*.sh text eol=lf
7+
8+
# Force batch scripts to always use CRLF line endings so that if a repo is accessed
9+
# in Windows via a file share from Linux, the scripts will work.
10+
*.{cmd,[cC][mM][dD]} text eol=crlf
11+
*.{bat,[bB][aA][tT]} text eol=crlf
12+
13+
# Denote all files that are truly binary and should not be modified.
14+
*.png binary
15+
*.jpg binary
16+
*.ico binary

.github/workflows/pages-deploy.yml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
name: 'Automatic build'
2+
on:
3+
push:
4+
branches:
5+
- main
6+
paths-ignore:
7+
- .gitignore
8+
- README.md
9+
- LICENSE
10+
11+
jobs:
12+
continuous-delivery:
13+
14+
runs-on: ubuntu-latest
15+
16+
steps:
17+
- name: Checkout
18+
uses: actions/checkout@v2
19+
with:
20+
fetch-depth: 0 # for posts's lastmod
21+
22+
- name: Setup Ruby
23+
uses: ruby/setup-ruby@v1
24+
with:
25+
ruby-version: 2.7
26+
bundler-cache: true
27+
28+
- name: Deploy
29+
run: bash tools/deploy.sh

.gitignore

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# hidden files
2+
.*
3+
!.git*
4+
!.editorconfig
5+
!.nojekyll
6+
!.travis.yml
7+
!.husky
8+
!.commitlintrc.json
9+
!.versionrc.json
10+
11+
# bundler cache
12+
_site
13+
vendor
14+
15+
# rubygem
16+
*.gem
17+
18+
# npm dependencies
19+
node_modules
20+
package-lock.json

.gitmodules

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[submodule "assets/lib"]
2+
path = assets/lib
3+
url = https://github.com/cotes2020/chirpy-static-assets.git

.nojekyll

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+

Gemfile

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# frozen_string_literal: true
2+
3+
source "https://rubygems.org"
4+
5+
gem "jekyll-theme-chirpy", "~> 5.2", ">= 5.2.1"
6+
7+
group :test do
8+
gem "html-proofer", "~> 3.18"
9+
end
10+
11+
# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
12+
# and associated library.
13+
install_if -> { RUBY_PLATFORM =~ %r!mingw|mswin|java! } do
14+
gem "tzinfo", "~> 1.2"
15+
gem "tzinfo-data"
16+
end
17+
18+
# Performance-booster for watching directories on Windows
19+
gem "wdm", "~> 0.1.1", :install_if => Gem.win_platform?
20+
21+
# Jekyll <= 4.2.0 compatibility with Ruby 3.0
22+
gem "webrick", "~> 1.7"

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2021 Cotes Chung
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# Chirpy Starter [![Gem Version](https://img.shields.io/gem/v/jekyll-theme-chirpy)](https://rubygems.org/gems/jekyll-theme-chirpy) [![GitHub license](https://img.shields.io/github/license/cotes2020/chirpy-starter.svg?color=blue)][mit]
2+
3+
When installing the [**Chirpy**][chirpy] theme through [RubyGems.org][gem], Jekyll can only read files in the folders `_includes`, `_layout`, `_sass` and `assets`, as well as a small part of options of the `_config.yml` file from the theme's gem. If you have ever installed this theme gem, you can use the command `bundle info --path jekyll-theme-chirpy` to locate these files.
4+
5+
The Jekyll organization claims that this is to leave the ball in the user’s court, but this also results in users not being able to enjoy the out-of-the-box experience when using feature-rich themes.
6+
7+
To fully use all the features of **Chirpy**, you need to copy the other critical files from the theme's gem to your Jekyll site. The following is a list of targets:
8+
9+
```shell
10+
.
11+
├── _config.yml
12+
├── _data
13+
├── _plugins
14+
├── _tabs
15+
└── index.html
16+
```
17+
18+
In order to save your time, and to prevent you from missing some files when copying, we extract those files/configurations of the latest version of the **Chirpy** theme and the [CD][CD] workflow to here, so that you can start writing in minutes.
19+
20+
## Prerequisites
21+
22+
Follow the instructions in the [Jekyll Docs](https://jekyllrb.com/docs/installation/) to complete the installation of `Ruby`, `RubyGems`, `Jekyll` and `Bundler`.
23+
24+
## Installation
25+
26+
[**Use this template**][use-template] to generate a brand new repository and name it `<GH_USERNAME>.github.io`, where `GH_USERNAME` represents your GitHub username.
27+
28+
Then clone it to your local machine and run:
29+
30+
```
31+
$ bundle
32+
```
33+
34+
## Usage
35+
36+
Please see the [theme's docs](https://github.com/cotes2020/jekyll-theme-chirpy#documentation).
37+
38+
## License
39+
40+
This work is published under [MIT][mit] License.
41+
42+
[gem]: https://rubygems.org/gems/jekyll-theme-chirpy
43+
[chirpy]: https://github.com/cotes2020/jekyll-theme-chirpy/
44+
[use-template]: https://github.com/cotes2020/chirpy-starter/generate
45+
[CD]: https://en.wikipedia.org/wiki/Continuous_deployment
46+
[mit]: https://github.com/cotes2020/chirpy-starter/blob/master/LICENSE

_config.yml

Lines changed: 201 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,201 @@
1+
# The Site Configuration
2+
3+
# Import the theme
4+
theme: jekyll-theme-chirpy
5+
6+
# Change the following value to '/PROJECT_NAME' ONLY IF your site type is GitHub Pages Project sites
7+
# and doesn't have a custom domain.
8+
baseurl: ''
9+
10+
# The language of the webpage › http://www.lingoes.net/en/translator/langcode.htm
11+
# If it has the same name as one of the files in folder `_data/locales`, the layout language will also be changed,
12+
# otherwise, the layout language will use the default value of 'en'.
13+
lang: en
14+
15+
# Additional parameters for datetime localization, optional. › https://github.com/iamkun/dayjs/tree/dev/src/locale
16+
prefer_datetime_locale:
17+
18+
# Change to your timezone › http://www.timezoneconverter.com/cgi-bin/findzone/findzone
19+
timezone:
20+
21+
# jekyll-seo-tag settings › https://github.com/jekyll/jekyll-seo-tag/blob/master/docs/usage.md
22+
# ↓ --------------------------
23+
24+
title: Chirpy # the main title
25+
26+
tagline: A text-focused Jekyll theme # it will display as the sub-title
27+
28+
description: >- # used by seo meta and the atom feed
29+
A minimal, responsive, and powerful Jekyll theme for presenting professional writing.
30+
31+
# fill in the protocol & hostname for your site, e.g., 'https://username.github.io'
32+
url: ''
33+
34+
github:
35+
username: github_username # change to your github username
36+
37+
twitter:
38+
username: twitter_username # change to your twitter username
39+
40+
social:
41+
# Change to your full name.
42+
# It will be displayed as the default author of the posts and the copyright owner in the Footer
43+
name: your_full_name
44+
email: example@doamin.com # change to your email address
45+
links:
46+
# The first element serves as the copyright owner's link
47+
- https://twitter.com/username # change to your twitter homepage
48+
- https://github.com/username # change to your github homepage
49+
# Uncomment below to add more social links
50+
# - https://www.facebook.com/username
51+
# - https://www.linkedin.com/in/username
52+
53+
google_site_verification: # fill in to your verification string
54+
55+
# ↑ --------------------------
56+
# The end of `jekyll-seo-tag` settings
57+
58+
google_analytics:
59+
id: # fill in your Google Analytics ID
60+
# Google Analytics pageviews report settings
61+
pv:
62+
proxy_endpoint: # fill in the Google Analytics superProxy endpoint of Google App Engine
63+
cache_path: # the local PV cache data, friendly to visitors from GFW region
64+
65+
# Prefer color scheme setting.
66+
#
67+
# Note: Keep empty will follow the system prefer color by default,
68+
# and there will be a toggle to switch the theme between dark and light
69+
# on the bottom left of the sidebar.
70+
#
71+
# Available options:
72+
#
73+
# light - Use the light color scheme
74+
# dark - Use the dark color scheme
75+
#
76+
theme_mode: # [light|dark]
77+
78+
# The CDN endpoint for images.
79+
# Notice that once it is assigned, the CDN url
80+
# will be added to all image (site avatar & posts' images) paths starting with '/'
81+
#
82+
# e.g. 'https://cdn.com'
83+
img_cdn:
84+
85+
# the avatar on sidebar, support local or CORS resources
86+
avatar:
87+
88+
# boolean type, the global switch for ToC in posts.
89+
toc: true
90+
91+
comments:
92+
active: # The global switch for posts comments, e.g., 'disqus'. Keep it empty means disable
93+
# The active options are as follows:
94+
disqus:
95+
shortname: # fill with the Disqus shortname. › https://help.disqus.com/en/articles/1717111-what-s-a-shortname
96+
# utterances settings › https://utteranc.es/
97+
utterances:
98+
repo: # <gh-username>/<repo>
99+
issue_term: # < url | pathname | title | ...>
100+
# Giscus options › https://giscus.app
101+
giscus:
102+
repo: # <gh-username>/<repo>
103+
repo_id:
104+
category:
105+
category_id:
106+
mapping: # optional, default to 'pathname'
107+
input_position: # optional, default to 'bottom'
108+
lang: # optional, default to the value of `site.lang`
109+
110+
# Self-hosted static assets, optional › https://github.com/cotes2020/chirpy-static-assets
111+
assets:
112+
self_host:
113+
enabled: # boolean, keep empty means false
114+
# specify the Jekyll environment, empty means both
115+
# only works if `assets.self_host.enabled` is 'true'
116+
env: # [development|production]
117+
118+
pwa:
119+
enabled: true # the option for PWA feature
120+
121+
paginate: 10
122+
123+
# ------------ The following options are not recommended to be modified ------------------
124+
125+
kramdown:
126+
syntax_highlighter: rouge
127+
syntax_highlighter_opts: # Rouge Options › https://github.com/jneen/rouge#full-options
128+
css_class: highlight
129+
# default_lang: console
130+
span:
131+
line_numbers: false
132+
block:
133+
line_numbers: true
134+
start_line: 1
135+
136+
collections:
137+
tabs:
138+
output: true
139+
sort_by: order
140+
141+
defaults:
142+
- scope:
143+
path: '' # An empty string here means all files in the project
144+
type: posts
145+
values:
146+
layout: post
147+
comments: true # Enable comments in posts.
148+
toc: true # Display TOC column in posts.
149+
# DO NOT modify the following parameter unless you are confident enough
150+
# to update the code of all other post links in this project.
151+
permalink: /posts/:title/
152+
- scope:
153+
path: _drafts
154+
values:
155+
comments: false
156+
- scope:
157+
path: ''
158+
type: tabs # see `site.collections`
159+
values:
160+
layout: page
161+
permalink: /:title/
162+
- scope:
163+
path: assets/img/favicons
164+
values:
165+
swcache: true
166+
- scope:
167+
path: assets/js/dist
168+
values:
169+
swcache: true
170+
171+
sass:
172+
style: compressed
173+
174+
compress_html:
175+
clippings: all
176+
comments: all
177+
endings: all
178+
profile: false
179+
blanklines: false
180+
ignore:
181+
envs: [development]
182+
183+
exclude:
184+
- '*.gem'
185+
- '*.gemspec'
186+
- tools
187+
- README.md
188+
- CHANGELOG.md
189+
- LICENSE
190+
- gulpfile.js
191+
- node_modules
192+
- package*.json
193+
194+
jekyll-archives:
195+
enabled: [categories, tags]
196+
layouts:
197+
category: category
198+
tag: tag
199+
permalinks:
200+
tag: /tags/:name/
201+
category: /categories/:name/

0 commit comments

Comments
 (0)