Compare commits

...

No commits in common. "main" and "site" have entirely different histories.
main ... site

2172 changed files with 119 additions and 617 deletions

BIN
.DS_Store vendored

Binary file not shown.

3
.github/FUNDING.yml vendored
View File

@ -1,3 +0,0 @@
# These are supported funding model platforms
buy_me_a_coffee: zhgchgli

View File

@ -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
View File

@ -1,3 +0,0 @@
_output
!/_output/AUTO_GEN_FOLDER_DO_NOT_EDIT_FILE_HERE
.DS_Store

View File

@ -1 +0,0 @@
3.4.2

View File

@ -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'

View File

@ -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
View File

@ -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.

View File

@ -1,3 +0,0 @@
# Elizabeth's Link Page
Built with [Linkyee](https://github.com/ZhgCH/Linkyee)

View File

@ -1 +0,0 @@
The files in this folder (./_output) are auto-generated. Do not edit any files here.

View File

@ -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>

View File

@ -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>

View File

@ -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

View File

Before

Width:  |  Height:  |  Size: 496 KiB

After

Width:  |  Height:  |  Size: 496 KiB

View File

Before

Width:  |  Height:  |  Size: 115 KiB

After

Width:  |  Height:  |  Size: 115 KiB

View File

Before

Width:  |  Height:  |  Size: 870 KiB

After

Width:  |  Height:  |  Size: 870 KiB

View File

Before

Width:  |  Height:  |  Size: 953 B

After

Width:  |  Height:  |  Size: 953 B

View File

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

Before

Width:  |  Height:  |  Size: 986 B

After

Width:  |  Height:  |  Size: 986 B

View File

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

Before

Width:  |  Height:  |  Size: 478 B

After

Width:  |  Height:  |  Size: 478 B

View File

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Some files were not shown because too many files have changed in this diff Show More