Compare commits
No commits in common. "main" and "site" have entirely different histories.
3
.github/FUNDING.yml
vendored
@ -1,3 +0,0 @@
|
||||
# These are supported funding model platforms
|
||||
|
||||
buy_me_a_coffee: zhgchgli
|
32
.github/workflows/build.yml
vendored
@ -1,32 +0,0 @@
|
||||
name: 'Automatic build'
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
paths-ignore:
|
||||
- .gitignore
|
||||
- README.md
|
||||
- LICENSE
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
- cron: '0 0 * * *' # Runs daily at midnight (00:00 UTC)
|
||||
|
||||
jobs:
|
||||
continuous-delivery:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Setup Ruby
|
||||
uses: ruby/setup-ruby@v1
|
||||
with:
|
||||
ruby-version: 3.4.2
|
||||
bundler-cache: true
|
||||
|
||||
- name: Deploy
|
||||
run: bash deploy.sh
|
3
.gitignore
vendored
@ -1,3 +0,0 @@
|
||||
_output
|
||||
!/_output/AUTO_GEN_FOLDER_DO_NOT_EDIT_FILE_HERE
|
||||
.DS_Store
|
@ -1 +0,0 @@
|
||||
3.4.2
|
7
Gemfile
@ -1,7 +0,0 @@
|
||||
source 'https://rubygems.org'
|
||||
|
||||
gem 'bigdecimal'
|
||||
gem 'base64'
|
||||
gem 'yaml', '~> 0.3'
|
||||
gem 'liquid', '~> 5.5'
|
||||
gem 'nokogiri', '>= 1.18.4'
|
25
Gemfile.lock
@ -1,25 +0,0 @@
|
||||
GEM
|
||||
remote: https://rubygems.org/
|
||||
specs:
|
||||
base64 (0.2.0)
|
||||
bigdecimal (3.1.9)
|
||||
liquid (5.5.1)
|
||||
mini_portile2 (2.8.7)
|
||||
nokogiri (1.18.5)
|
||||
mini_portile2 (~> 2.8.2)
|
||||
racc (~> 1.4)
|
||||
racc (1.8.1)
|
||||
yaml (0.3.0)
|
||||
|
||||
PLATFORMS
|
||||
ruby
|
||||
|
||||
DEPENDENCIES
|
||||
base64
|
||||
bigdecimal
|
||||
liquid (~> 5.5)
|
||||
nokogiri (>= 1.18.4)
|
||||
yaml (~> 0.3)
|
||||
|
||||
BUNDLED WITH
|
||||
2.6.6
|
21
LICENSE
@ -1,21 +0,0 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2024 ZhgChgLi
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
@ -1,3 +0,0 @@
|
||||
# Elizabeth's Link Page
|
||||
|
||||
Built with [Linkyee](https://github.com/ZhgCH/Linkyee)
|
@ -1 +0,0 @@
|
||||
The files in this folder (./_output) are auto-generated. Do not edit any files here.
|
86
config.yml
@ -1,86 +0,0 @@
|
||||
# Site Config
|
||||
|
||||
theme: default
|
||||
lang: "en"
|
||||
|
||||
title: "Elizabeth Cray"
|
||||
|
||||
avatar: "./images/profile.jpeg"
|
||||
|
||||
name: "Elizabeth Cray"
|
||||
|
||||
tagline: "Full-stack developer by day, analog photographer by night."
|
||||
|
||||
links:
|
||||
- link:
|
||||
icon: "fa-solid fa-person"
|
||||
text: "Pronouns Page"
|
||||
url: "https://en.pronouns.page/@hackerLiz"
|
||||
alt: "Elizabeth's pronoun and details page"
|
||||
title: "Elizabeth's Pronouns Profile"
|
||||
target: "_blank"
|
||||
- link:
|
||||
icon: "fa-brands fa-bluesky"
|
||||
text: "Bluesky"
|
||||
url: "https://bsky.app/profile/cray.gay"
|
||||
alt: "Elizabeth's Bluesky profile"
|
||||
title: "Bluesky Profile"
|
||||
target: "_blank"
|
||||
- link:
|
||||
icon: "fa-brands fa-linkedin"
|
||||
text: "Linkedin"
|
||||
url: "https://linkedin.com/in/lizcray"
|
||||
alt: "Elizabeth's Linkedin"
|
||||
title: "Elizabeth's Linkedin"
|
||||
target: "_blank"
|
||||
- link:
|
||||
icon: "fa-brands fa-mastodon"
|
||||
text: "Mastodon"
|
||||
url: "https://masto.hackers.town/@liz"
|
||||
alt: "Elizabeth's Hackers Town Mastodon Profile"
|
||||
title: "Elizabeth's Mastodon"
|
||||
target: "_blank"
|
||||
- link:
|
||||
icon: "fa-brands fa-discord"
|
||||
text: "Discord"
|
||||
url: "https://discord.com/channels/@me/172886870110371849"
|
||||
alt: "Elizabeth's Discord Account"
|
||||
title: "Elizabeth's Discord"
|
||||
target: "_blank"
|
||||
- link:
|
||||
icon: "fa-brands fa-git-alt"
|
||||
text: "Git"
|
||||
url: "https://git.corrupt.link/liz"
|
||||
alt: "Elizabeth's Gitea Page"
|
||||
title: "Elizabeth's Gitea"
|
||||
target: "_blank"
|
||||
- link:
|
||||
icon: "fa-solid fa-shuttle-space"
|
||||
text: "Gemini Blog"
|
||||
url: "gemini://gemini.hackers.town/liz/"
|
||||
alt: "Elizabeth's Gemini Blog"
|
||||
title: "Elizabeth's Gemini Blog"
|
||||
target: "_blank"
|
||||
- link:
|
||||
icon: "fa-solid fa-envelope"
|
||||
text: "Email"
|
||||
url: "mailto:liz@corrupt.link"
|
||||
alt: "Elizabeth's email"
|
||||
title: "Elizabeth's email"
|
||||
target: ""
|
||||
- link:
|
||||
icon: "fa-solid fa-briefcase"
|
||||
text: "Resume"
|
||||
url: "https://corrupt.link/pub/Resume.pdf"
|
||||
alt: "Elizabeth's Resume PDF"
|
||||
title: "Elizabeth's Resume"
|
||||
target: "_blank"
|
||||
|
||||
# Todo: Image Gallery
|
||||
|
||||
|
||||
|
||||
footer: ""
|
||||
|
||||
copyright: >
|
||||
©2025 Elizabeth Cray. Powered by <a href="https://github.com/ZhgChgLi/linkyee" target="_blank">linkyee</a>
|
@ -1,150 +0,0 @@
|
||||
# Site Configuration
|
||||
|
||||
# Theme, mapped to the directory: ./theme/xxxx
|
||||
theme: default
|
||||
|
||||
# HTML Language setting
|
||||
lang: "en"
|
||||
|
||||
# Plugins, implemented in ./plugins/PLUGIN_NAME
|
||||
# Use {{ vars.PLUGIN_NAME }} in the settings below
|
||||
|
||||
# The output of the plugin can be used below, e.g., {{vars.MediumFollowersCountPlugin}}
|
||||
plugins:
|
||||
# Automatically fetch Medium follower count
|
||||
- MediumFollowersCountPlugin:
|
||||
username: zhgchgli
|
||||
# Automatically fetch Github repo star count
|
||||
- GithubRepoStarsCountPlugin:
|
||||
- ZhgChgLi/ZMarkupParser
|
||||
- ZhgChgLi/ZReviewTender
|
||||
- ZhgChgLi/ZMediumToMarkdown
|
||||
- ZhgChgLi/linkyee
|
||||
|
||||
# Google Analytics tracking id
|
||||
google_analytics_id:
|
||||
|
||||
# HTML Title
|
||||
title: "ZhgChgLi's Links"
|
||||
|
||||
# Avatar image path
|
||||
avatar: "./images/profile.jpeg"
|
||||
|
||||
# Name section text
|
||||
name: "@zhgchgli"
|
||||
|
||||
# Tagline section text
|
||||
tagline: >-
|
||||
An iOS, web, and automation developer from Taiwan 🇹🇼 who also loves sharing, traveling, and writing.
|
||||
|
||||
# List of links
|
||||
# icon: Use Font Awesome icons (https://fontawesome.com/search?o=r&m=free)
|
||||
# text: The displayed text for the link
|
||||
# title: The url title
|
||||
# url: The URL of the link
|
||||
# alt: Alternative text for accessibility
|
||||
# target: `_blank` opens in a new tab, `_self` opens in the same frame
|
||||
links:
|
||||
- link:
|
||||
icon: "fa-brands fa-medium"
|
||||
text: "Tech Blog <span class='link-button-text'>({{vars.MediumFollowersCountPlugin}} Followers)</span>"
|
||||
url: "https://blog.zhgchg.li"
|
||||
alt: "ZhgChgLi's Tech Blog"
|
||||
title: "ZhgChgLi's Tech Blog"
|
||||
target: "_blank"
|
||||
- link:
|
||||
icon: "fa-brands fa-medium"
|
||||
text: "Travelog <span class='link-button-text'>({{vars.MediumFollowersCountPlugin}} Followers)</span>"
|
||||
url: "https://medium.com/ztravel"
|
||||
alt: "ZhgChgLi's Travelog"
|
||||
title: "ZhgChgLi's Travelog"
|
||||
target: "_blank"
|
||||
- link:
|
||||
icon: "fa-solid fa-rss"
|
||||
text: "Website"
|
||||
url: "https://zhgchg.li/"
|
||||
alt: "ZhgChgLi's Website"
|
||||
title: "ZhgChgLi's Website"
|
||||
target: "_blank"
|
||||
- link:
|
||||
icon: "fa-brands fa-swift"
|
||||
text: "ZMarkupParser <span class='link-button-text'>({{vars.GithubRepoStarsCountPlugin['ZhgChgLi/ZMarkupParser']}} Stars)</span>"
|
||||
url: "https://github.com/ZhgChgLi/ZMarkupParser"
|
||||
alt: "ZMarkupParser is a pure-Swift library that helps you to convert HTML strings to NSAttributedString with customized style and tags."
|
||||
title: "ZMarkupParser is a pure-Swift library that helps you to convert HTML strings to NSAttributedString with customized style and tags."
|
||||
target: "_blank"
|
||||
- link:
|
||||
icon: "fa-brands fa-app-store-ios"
|
||||
text: "ZReviewTender <span class='link-button-text'>({{vars.GithubRepoStarsCountPlugin['ZhgChgLi/ZReviewTender']}} Stars)</span>"
|
||||
url: "https://github.com/ZhgChgLi/ZReviewTender"
|
||||
alt: "ZReviewTender is a tool for fetching app reviews from the App Store and Google Play Console and integrating them into your workflow."
|
||||
title: "ZReviewTender is a tool for fetching app reviews from the App Store and Google Play Console and integrating them into your workflow."
|
||||
target: "_blank"
|
||||
- link:
|
||||
icon: "fa-brands fa-markdown"
|
||||
text: "ZMediumToMarkdown <span class='link-button-text'>({{vars.GithubRepoStarsCountPlugin['ZhgChgLi/ZMediumToMarkdown']}} Stars)</span>"
|
||||
url: "https://github.com/ZhgChgLi/ZMediumToMarkdown"
|
||||
alt: "ZMediumToMarkdown is a powerful tool that allows you to effortlessly download and convert your Medium posts to Markdown format."
|
||||
title: "ZMediumToMarkdown is a powerful tool that allows you to effortlessly download and convert your Medium posts to Markdown format."
|
||||
target: "_blank"
|
||||
- link:
|
||||
icon: "fa-brands fa-github"
|
||||
text: "linkyee <span class='link-button-text'>({{vars.GithubRepoStarsCountPlugin['ZhgChgLi/linkyee']}} Stars)</span>"
|
||||
url: "https://github.com/ZhgChgLi/linkyee"
|
||||
alt: "linkyee is a fully customized, open-source LinkTree alternative deployed directly on GitHub Pages."
|
||||
title: "linkyee is a fully customized, open-source LinkTree alternative deployed directly on GitHub Pages."
|
||||
target: "_blank"
|
||||
|
||||
|
||||
# List of social media links
|
||||
# icon: Use Font Awesome icons (https://fontawesome.com/search?o=r&m=free)
|
||||
# title: The url title
|
||||
# url: The URL of the social media link
|
||||
# alt: Alternative text for accessibility
|
||||
# target: _blank opens in a new tab, _self opens in the same frame
|
||||
socials:
|
||||
- social:
|
||||
icon: "fa-brands fa-medium"
|
||||
url: "https://blog.zhgchg.li"
|
||||
title: "ZhgChgLi's Medium"
|
||||
alt: "ZhgChgLi's Medium"
|
||||
target: "_blank"
|
||||
- social:
|
||||
icon: "fa-brands fa-github"
|
||||
url: "https://github.com/ZhgChgLi"
|
||||
title: "ZhgChgLi's GitHub"
|
||||
alt: "ZhgChgLi's GitHub"
|
||||
target: "_blank"
|
||||
- social:
|
||||
icon: "fa-brands fa-twitter"
|
||||
url: "https://twitter.com/zhgchgli"
|
||||
title: "ZhgChgLi's Twitter"
|
||||
alt: "ZhgChgLi's Twitter"
|
||||
target: "_blank"
|
||||
- social:
|
||||
icon: "fa-brands fa-linkedin"
|
||||
url: "https://www.linkedin.com/in/zhgchgli/"
|
||||
title: "ZhgChgLi's LinkedIn"
|
||||
alt: "ZhgChgLi's LinkedIn"
|
||||
target: "_blank"
|
||||
- social:
|
||||
icon: "fa-brands fa-instagram"
|
||||
url: "https://www.instagram.com/zhgchgli/"
|
||||
title: "Instagram"
|
||||
alt: "ZhgChgLi's Instagram"
|
||||
target: "_blank"
|
||||
- social:
|
||||
icon: "fa-solid fa-envelope"
|
||||
url: "mailto:zhgchgli@gmail.com"
|
||||
title: "Email: zhgchgli@gmail.com"
|
||||
alt: "zhgchgli@gmail.com"
|
||||
target: "_blank"
|
||||
|
||||
# Footer text
|
||||
footer: >
|
||||
Hi there! Follow me on Medium or GitHub, or stay connected on Instagram or LinkedIn.
|
||||
|
||||
# Footer copyright message
|
||||
# Linkyee is a 100% free, open-source project—feel free to modify the copyright message as you like. :)
|
||||
copyright: >
|
||||
© 2024 <a href="https://zhgchg.li" target="_blank">ZhgChgLi</a>. Powered by <a href="https://github.com/ZhgChgLi/linkyee" target="_blank">linkyee</a>
|
83
deploy.sh
@ -1,83 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
# ref: https://github.com/jekyll/jekyll
|
||||
|
||||
set -eu # Exit on error or unset variable
|
||||
|
||||
PAGES_BRANCH="site"
|
||||
|
||||
SITE_DIR="_output"
|
||||
|
||||
_backup_dir="$(mktemp -d)"
|
||||
|
||||
DATE_STAMP=$(date +"%Y-%m-%d %H:%M:%S")
|
||||
|
||||
init() {
|
||||
echo "Initializing..."
|
||||
}
|
||||
|
||||
build() {
|
||||
# clean
|
||||
if [[ -d $SITE_DIR ]]; then
|
||||
rm -rf "$SITE_DIR"
|
||||
fi
|
||||
|
||||
# Run the Ruby script to generate the output
|
||||
bundle exec ruby "./scaffold.rb"
|
||||
}
|
||||
|
||||
setup_gh() {
|
||||
if [[ -z $(git branch -av | grep "$PAGES_BRANCH") ]]; then
|
||||
git checkout -b "$PAGES_BRANCH"
|
||||
else
|
||||
git checkout "$PAGES_BRANCH"
|
||||
fi
|
||||
}
|
||||
|
||||
backup() {
|
||||
mv "$SITE_DIR"/* "$_backup_dir"
|
||||
mv .git "$_backup_dir"
|
||||
|
||||
if [[ -f CNAME ]]; then
|
||||
mv CNAME "$_backup_dir"
|
||||
fi
|
||||
}
|
||||
|
||||
flush() {
|
||||
rm -rf ./*
|
||||
rm -rf .[^.] .??*
|
||||
|
||||
shopt -s dotglob nullglob
|
||||
|
||||
mv "$_backup_dir"/* .
|
||||
}
|
||||
|
||||
deploy() {
|
||||
# Configure Git user for the commit
|
||||
git config --global user.name "Elizabeth Cray"
|
||||
git config --global user.email "liz@cray.lgbt"
|
||||
|
||||
# Reset the current HEAD to prepare for new commits
|
||||
git update-ref -d HEAD
|
||||
git add -A
|
||||
git commit -m "[Automation] Site update: ${DATE_STAMP}"
|
||||
|
||||
# Push the new branch to the remote repository
|
||||
git push -u origin "$PAGES_BRANCH" --force
|
||||
}
|
||||
|
||||
reset() {
|
||||
git checkout main
|
||||
}
|
||||
|
||||
main() {
|
||||
init
|
||||
build
|
||||
setup_gh
|
||||
backup
|
||||
flush
|
||||
deploy
|
||||
reset
|
||||
}
|
||||
|
||||
# Execute the main function
|
||||
main
|
Before Width: | Height: | Size: 496 KiB After Width: | Height: | Size: 496 KiB |
Before Width: | Height: | Size: 115 KiB After Width: | Height: | Size: 115 KiB |
Before Width: | Height: | Size: 870 KiB After Width: | Height: | Size: 870 KiB |
Before Width: | Height: | Size: 953 B After Width: | Height: | Size: 953 B |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 986 B After Width: | Height: | Size: 986 B |
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 478 B After Width: | Height: | Size: 478 B |
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |