init commit

This commit is contained in:
Aaron Honeycutt 2024-11-21 17:23:24 -07:00
commit cae1778de5
16 changed files with 574 additions and 0 deletions

3
.gitmodules vendored Normal file
View file

@ -0,0 +1,3 @@
[submodule "themes/kangae"]
path = themes/kangae
url = https://github.com/ayushnix/kangae.git

156
config.toml Normal file
View file

@ -0,0 +1,156 @@
# please refer to
# https://www.getzola.org/documentation/getting-started/configuration/
# for the complete configuration file
# [MANDATORY] the URL of the microblog
base_url = "https://kangae.ayushnix.com"
# [recommended] kangae doesn't use sass for its global stylesheet
compile_sass = false
# enable this when using kangae as a theme
theme = "kangae"
# [optional] minify HTML to save space at the cost of readability
minify_html = false
# [recommended] generate an atom or rss feed
#generate_feed = true
# [recommended] the name of the feed
# if it's set to 'rss.xml', an RSS feed will be generated
#feed_filename = "atom.xml"
# [recommended] the title of the website
title = "ahoneybun microblog"
# [recommended] the description of the website
description = "the personal microblog of ahoneybun"
# [recommended] the default language of the website
default_language = "en"
# [recommended] the different kinds of taxonomies for the website
taxonomies = [
{ name = "tags", feed = true }
]
# ---------------------------------------------------------------------------- #
# configuration for how the markdown blog posts are rendered
[markdown]
# [optional] enable syntax highlighting for source code
# syntax highlight, in itself isn't sufficient and if enabled, it needs to
# support both light and dark modes which will add an overhead of approximately
# 6kb of unminified CSS. you can decide if it's worth it or not
highlight_code = false
# [optional] convert text emoji, such as :smile:,to the actual iconic emoji
render_emoji = true
# [optional] open external links in a new tab and add `rel="noopener"`
external_links_target_blank = true
# [optional] tell search engines not to follow external links
external_links_no_follow = false
# [optional] add `rel=noreferrer` for privacy
external_links_no_referrer = true
# [optional] change "quote" to “curly” and other style changes
smart_punctuation = false
# ---------------------------------------------------------------------------- #
[extra]
# [recommended] your name
author = "Aaron Honeycutt"
# [recommended] your internet username
username = "ahoneybun"
# [optional] your 128x128 avatar, preferably svg
avatar = "images/placeholder.png"
# [optional] the keywords which highlight the type of content on your microblog
keywords = [ "microblog", "linux", "tech support" ]
# [optional] add custom css
# custom_css = "css/custom.css"
# [optional] add a web app manifest
# manifest = "/site.webmanifest"
# [optional] additional links that should be present in the navbar
# `name` and `url` should be present for visibility, `rel` is optional
navbar = [
{ name = "mastodon", url = "https://hachyderm.io/@ahoneybun", rel="me" },
{ name = "github", url = "https://github.com/ahoneybun", rel="me" }
]
# https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta/name/theme-color
# [optional] the light color for the user interface of the web browser
# the default value is written below
# light_theme_color = "#f0f0f0"
# [optional] the dark color for the user interface of the web browser
# the default value is written below
# dark_theme_color = "#282c34"
[extra.content_license]
# [recommended] the spdx identifier of the license of content on your microblog
spdx = "CC-BY-NC-ND-4.0"
# [recommended] the url of the license
url = "https://creativecommons.org/licenses/by-nc-nd/4.0/legalcode.txt"
[extra.source_license]
# [recommended] the spdx identifier for the license of source code on your microblog
spdx = "0BSD"
# [recommended] the url of the license
url = "https://spdx.org/licenses/0BSD.html"
# [recommended] the url of the source code of the microblog itself
src_url = "https://github.com/ayushnix/kangae"
[extra.opengraph]
# [optional] opengraph image that should be visible when sharing links on social media
# websites and messaging apps
# img = "/images/apple-touch-icon.png"
# [optional] specifying the alt text is recommended if opengraph img is enabled
# alt = "opengraph image description"
[extra.favicon]
# [recommended] a SVG favicon
# svg = "/images/favicon.svg"
# [recommended] generate a 32px PNG favicon from the SVG
# png = "/images/favicon-32x32.png"
# [recommended] generate either a 180px or a 192px PNG image
# 180px - if you want to use the size recommended by apple
# 192px - if you want to use a single 192px image both for apple devices and for
# the android web app manifest; the image will be automatically resized to 180px
# for apple devices
# apple = "/images/apple-touch-icon.png"
[extra.post_footer]
# [recommended] show a permalink to microblog posts
share = true
# [optional] show a link which redirects to github discussions for writing comments
# in the example provided below, the URL will be
# https://github.com/ayushnix/kangae/discussions/new?category=general&title=The+Post+Title
discuss_github = true
github_url = "https://github.com/ayushnix/kangae"
# [optional] other misc urls that should be shown in the post footers
# both `name` and `url` should be defined for visibility
# misc = [
# { name = "misc", url = "https://misc.xyz" }
# ]

9
content/_index.md Normal file
View file

@ -0,0 +1,9 @@
+++
title = "Home"
# Note we're not setting `paginate_by` here.
[extra]
section_path = "blog/_index.md" # Where to find your posts.
max_posts = 5 # Show 5 posts on the home page.
header = {title = "Hello! I'm tabi~", img = "img/main.webp", img_alt = "Your Name" }
+++

View file

@ -0,0 +1,12 @@
a[href]:not(:where(
[href^="#"],
[href^="/"]:not([href^="//"]),
[href^=".."],
[href*="//ayushnix.com"],
[href*="//microblog.ayushnix.com"],
[href*="//wiki.ayushnix.com"],
))::after {
font-size: var(--step-s1);
content: " ↗";
vertical-align: middle;
}

360
public/css/style.css Normal file
View file

@ -0,0 +1,360 @@
/*@import url("variables-light-theme.css") (prefers-color-scheme: light);*/
/*@import url("variables-dark-theme.css") (prefers-color-scheme: dark);*/
:root {
--fg-color: #e0e6f0;
--bg-color: #323232;
--fg-href: #f2e4c4;
--fg-border: #969696;
--bg-mark: #dfdfb0;
--fg-mark: #100f10;
}
@media (prefers-color-scheme: light) {
:root {
--fg-color: #282828;
--bg-color: #f8f8f8;
--fg-href: #0000c0;
/* deliberaty choose a color with a lesser contrast */
/* APCA contrast value of 83.77 against bg-color */
--fg-border: #505050;
--bg-mark: #f9ff00;
--fg-mark: #282828;
}
}
:root {
--sans-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji";
--mono-font: ui-monospace, "Cascadia Mono", Consolas, "SF Mono", Inconsolata, monospace;
/* @link https://utopia.fyi/type/calculator?c=320,14,1.125,1280,18,1.25,4,5,&s=0.75|0.5|0.25,1.5|2|3|4|6,s-l */
--step-s5: clamp(0.37rem, calc(0.52rem + -0.19vw), 0.49rem);
--step-s4: clamp(0.46rem, calc(0.57rem + -0.14vw), 0.55rem);
--step-s3: clamp(0.58rem, calc(0.63rem + -0.06vw), 0.61rem);
--step-s2: clamp(0.69rem, calc(0.68rem + 0.05vw), 0.72rem);
--step-s1: clamp(0.78rem, calc(0.74rem + 0.20vw), 0.90rem);
--step-x0: clamp(0.88rem, calc(0.79rem + 0.42vw), 1.13rem);
--step-x1: clamp(0.98rem, calc(0.84rem + 0.70vw), 1.41rem);
--step-x2: clamp(1.11rem, calc(0.89rem + 1.08vw), 1.76rem);
--step-x3: clamp(1.25rem, calc(0.93rem + 1.59vw), 2.20rem);
--step-x4: clamp(1.40rem, calc(0.95rem + 2.24vw), 2.75rem);
/* @link https://utopia.fyi/space/calculator?c=320,14,1.125,1280,18,1.25,4,5,&s=0.75|0.5|0.25,1.5|2|3|4|6,s-l */
--space-3xs: clamp(0.25rem, calc(0.23rem + 0.10vw), 0.31rem);
--space-2xs: clamp(0.44rem, calc(0.40rem + 0.21vw), 0.56rem);
--space-xs: clamp(0.69rem, calc(0.63rem + 0.31vw), 0.88rem);
--space-s: clamp(0.88rem, calc(0.79rem + 0.42vw), 1.13rem);
--space-m: clamp(1.31rem, calc(1.19rem + 0.63vw), 1.69rem);
--space-l: clamp(1.75rem, calc(1.58rem + 0.83vw), 2.25rem);
--space-xl: clamp(2.63rem, calc(2.38rem + 1.25vw), 3.38rem);
--space-2xl: clamp(3.50rem, calc(3.17rem + 1.67vw), 4.50rem);
--space-3xl: clamp(5.25rem, calc(4.75rem + 2.50vw), 6.75rem);
--width: 70ch;
--body-line-height: 1.5;
--head-line-height: 1.3;
}
html {
/* use the border-box box model instead of the browser default content-box */
box-sizing: border-box;
/* fallback for safari - remove if it starts supporting scrollbar-gutter */
overflow-y: scroll;
}
/* if a web browser supports `scrollbar-gutter`, use that instead */
@supports (scrollbar-gutter: stable both-edges) {
html {
overflow-y: auto;
scrollbar-gutter: stable both-edges;
}
}
/* inherit the border-box model in all elements */
/* this allows elements to override the box-model if needed and make their
* children inherit their custom box-model */
*,
*::before,
*::after {
box-sizing: inherit;
}
/* remove all browser default margins and paddings */
* {
margin: 0;
padding: 0;
}
/* if any of the following elements don't exist, the rule still applies */
:is(code, kbd, samp, pre) {
font-family: var(--mono-font);
overflow-x: auto;
}
/* reduce distraction from text by removing underlines from hyperlinks */
/* rely on color to distinguish hyperlinks */
/* the order of pseudo classes should follow the LVHA order */
/* :link, :visited, :hover, :active */
a {
color: var(--fg-href);
text-decoration: none;
}
/* subdue the color of visited hyperlinks */
a:visited {
color: var(--fg-color);
}
/* underline hyperlinks on hover and increase their underline offset */
a:hover {
text-decoration: underline;
text-underline-offset: var(--space-3xs);
}
/* if the role of a list is explicitly defined, it isn't being used as a list */
ul[role="list"] {
padding: 0;
list-style: none;
}
/* prevent overflow of possibly long lines */
:is(p, li, h1) {
overflow-wrap: break-word;
}
:is(img, video) {
/* never render images/videos wider than their containing element */
max-inline-size: 100%;
height: auto;
/* preserve the aspect ratio of the image */
block-size: auto;
margin-inline: auto;
}
/* -------------------------------------------------------------------------- */
body {
/* layout */
display: flex;
flex-direction: column;
/* align-items: center; */
/* readability */
margin: var(--space-m) auto;
width: min(90%, var(--width));
font-size: var(--step-x0);
line-height: var(--body-line-height);
/* aesthetics */
font-family: var(--sans-font);
color: var(--fg-color);
background: var(--bg-color);
}
/* add margins on the left and right of the child elements of body */
/* body > * { */
/* margin-inline: auto; */
/* } */
/* -------------------------------------------------------------------------- */
.primary-header {
display: flex;
flex-flow: row wrap;
justify-content: center;
gap: var(--space-xs);
}
:is(img, video) {
/* make images/videos blocks rather than inline elements */
display: block;
}
.avatar {
border-radius: var(--step-x1);
}
h1 {
font-size: var(--step-x3);
line-height: var(--head-line-height);
}
/* -------------------------------------------------------------------------- */
:is(.primary-nav, .primary-footer, .article-footer, .tag-list-nav) > ul[role="list"] {
display: flex;
flex-flow: row wrap;
/* prevent accidental incorrect clicks by increasing space between elements */
justify-content: space-evenly;
gap: var(--space-s);
}
.primary-footer {
font-size: var(--step-s1);
border-block-start: 0.1rem dotted var(--fg-border);
}
/* add a hash symbol before the taxonomy tag links */
.tag::before {
content: "#";
}
.tag-sup {
padding-inline: var(--space-3xs);
}
/* the stack layout for the child elements of article */
article > * + * {
margin-top: var(--space-s);
}
/* the stack layout for the body and the main element */
:is(body, main) > * + * {
margin-top: var(--space-l);
}
.article-header > ul[role="list"] {
display: inline-flex;
flex-flow: row wrap;
justify-content: flex-end;
gap: var(--space-2xs);
}
.article-header {
display: flex;
gap: var(--space-2xs);
justify-content: space-between;
border-block-end: 0.1rem dotted var(--fg-border);
}
/* borrowed from the html5-boilerplate css file on github */
/* h5bp/html5-boilerplate/blob/5382f78315be9ed31546131ec543353d9c4ee5b3/dist/css/style.css#L109 */
/* hide the title by default */
.post-title {
border: 0;
clip: rect(0, 0, 0, 0);
height: 1px;
margin: -1px;
overflow: hidden;
position: absolute;
white-space: nowrap;
width: 1px;
}
.post-title::before {
content: " · ";
}
/* show the title on devices which are at least as wide as the iPad Mini */
@media screen and (min-width: 48rem) {
.post-title {
clip: inherit;
height: inherit;
margin: inherit;
overflow: inherit;
position: inherit;
white-space: inherit;
width: inherit;
}
}
.unknown-page {
display: flex;
flex-direction: column;
align-items: center;
margin-block: var(--space-xl);
}
/* code blocks inside pre should be a block otherwise it doesn't work well when
* text overflows inside code */
pre > code {
display: block;
}
code[role="img"] {
display: inline-block;
vertical-align: middle;
}
.figquote {
display: flex;
flex-direction: column;
place-items: center;
}
/* -------------------------------------------------------------------------- */
/* don't style h2 to h6 because it's not needed on this website */
:is(h2, h3, h4, h5, h6) {
font-size: var(--step-x0);
}
pre {
padding: var(--space-2xs);
border: 0.1rem solid var(--fg-border);
border-radius: var(--step-s5);
}
/* show the name of the programming language inside pre */
pre[data-lang]::before {
display: block;
content: attr(data-lang);
text-decoration: underline var(--fg-border) solid;
text-underline-offset: var(--space-3xs);
text-decoration-thickness: 0.1rem;
text-transform: uppercase;
padding-block-end: var(--space-2xs);
}
/* add space after line numbers and don't select the line numbers for copying */
pre[data-linenos] table tbody tr td:first-child {
padding-inline-end: var(--space-s);
user-select: none;
}
pre[data-linenos] table {
/* if we set table width to 100% and if text overflows, the space separation
* between cells is removed */
/* width: 100%; */
border-collapse: collapse;
border-spacing: 0;
text-indent: 0;
}
.unknown-page-emoticon {
font-size: var(--step-x3);
padding: var(--space-2xs);
border: 0;
border-radius: 0;
}
blockquote {
margin-inline-start: var(--space-l);
padding: var(--space-2xs);
border-inline-start: var(--step-s4) solid var(--fg-border);
}
figcaption {
text-align: center;
}
:is(ul, ol) {
padding-inline: var(--space-l);
}
mark {
/* plays well with at least 1.5 line-height or more */
padding-inline: var(--space-3xs);
padding-block: 0.1rem;
color: var(--fg-mark);
background: var(--bg-mark);
border-radius: var(--step-s5);
}
kbd {
border-inline: 0.1rem solid var(--fg-border);
border-block-start: 0.1rem solid var(--fg-border);
border-block-end: 0.2rem solid var(--fg-border);
border-radius: var(--step-s5);
padding-inline: var(--space-3xs);
padding-block: 0.1rem;
}
/* -------------------------------------------------------------------------- */

View file

@ -0,0 +1,10 @@
/* modus vivendi colorscheme */
:root {
--fg-color: #e0e6f0;
--bg-color: #323232;
--fg-href: #f2e4c4;
--fg-border: #969696;
--bg-mark: #dfdfb0;
--fg-mark: #100f10;
}

View file

@ -0,0 +1,12 @@
/* modus operandi colorscheme */
:root {
--fg-color: #282828;
--bg-color: #f8f8f8;
--fg-href: #0000c0;
/* deliberaty choose a color with a lesser contrast */
/* APCA contrast value of 83.77 against bg-color */
--fg-border: #505050;
--bg-mark: #f9ff00;
--fg-mark: #282828;
}

10
public/elasticlunr.min.js vendored Normal file

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 189 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 199 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 168 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 156 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 731 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

View file

@ -0,0 +1 @@
window.searchIndex = {"fields":["title","body"],"pipeline":["trimmer","stopWordFilter","stemmer"],"ref":"id","version":"0.9.5","index":{"body":{"root":{"docs":{},"df":0,"h":{"docs":{},"df":0,"o":{"docs":{},"df":0,"m":{"docs":{},"df":0,"e":{"docs":{"http://127.0.0.1:1111/":{"tf":1.0}},"df":1}}}}}},"title":{"root":{"docs":{},"df":0,"h":{"docs":{},"df":0,"o":{"docs":{},"df":0,"m":{"docs":{},"df":0,"e":{"docs":{"http://127.0.0.1:1111/":{"tf":1.0}},"df":1}}}}}}},"documentStore":{"save":true,"docs":{"http://127.0.0.1:1111/":{"body":"","id":"http://127.0.0.1:1111/","title":"Home"}},"docInfo":{"http://127.0.0.1:1111/":{"body":0,"title":1}},"length":1},"lang":"English"}

1
themes/kangae Submodule

@ -0,0 +1 @@
Subproject commit b265935373f1fe73e17b968204b13738dc6d4136