summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--config.yaml11
-rw-r--r--home.html362
-rwxr-xr-xkitebin14290747 -> 0 bytes
-rwxr-xr-xkite-releasebin2781528 -> 0 bytes
-rw-r--r--kite-release.upxbin412 -> 0 bytes
-rw-r--r--layout.html242
-rw-r--r--todos.txt5
7 files changed, 6 insertions, 614 deletions
diff --git a/config.yaml b/config.yaml
index 98edbd2..f363450 100644
--- a/config.yaml
+++ b/config.yaml
@@ -1,5 +1,6 @@
-siteTitle: "himanshu.co"
-authorName: "Himanshu Sardana"
-authorRole: "Linux Enthusiast"
-authorBio: "i use arch btw"
-# defaultTheme: "modern-light"
+siteTitle: "My Blog"
+authorName: "Test"
+authorRole: "Developer"
+authorBio: "Test bio"
+defaultTheme: "modern-light"
+siteUrl: "https://example.com"
diff --git a/home.html b/home.html
deleted file mode 100644
index 0e963fe..0000000
--- a/home.html
+++ /dev/null
@@ -1,362 +0,0 @@
-<!doctype html>
-<html lang="en">
- <head>
- <meta charset="UTF-8" />
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <title>{{ .SiteTitle }}</title>
- <link rel="preconnect" href="https://fonts.googleapis.com" />
- <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
- <link
- href="https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=Geist:wght@300;400;500&family=Geist+Mono:wght@400;500&display=swap"
- rel="stylesheet"
- />
- <style>
- :root {
- --bg: #f9f8f6;
- --surface: #ffffff;
- --border: #e4e3df;
- --text: #111110;
- --text-2: #5c5b57;
- --text-3: #a8a7a2;
- --warm: #b85c38;
- --serif: "Instrument Serif", Georgia, serif;
- --sans: "Geist", system-ui, sans-serif;
- --mono: "Geist Mono", ui-monospace, monospace;
- --ease: cubic-bezier(0.16, 1, 0.3, 1);
- }
-
- *,
- *::before,
- *::after {
- box-sizing: border-box;
- }
-
- html {
- scroll-behavior: smooth;
- }
-
- body {
- margin: 0;
- background: var(--bg);
- color: var(--text);
- font-family: var(--sans);
- -webkit-font-smoothing: antialiased;
- min-height: 100vh;
- }
-
- /* ── Layout ── */
- .page {
- max-width: 640px;
- margin: 0 auto;
- padding: 0 2rem;
- }
-
- /* ── Nav ── */
- nav {
- display: flex;
- justify-content: flex-end;
- align-items: center;
- padding: 2rem 0 0;
- gap: 2rem;
- }
-
- nav a {
- font-family: var(--mono);
- font-size: 0.68rem;
- letter-spacing: 0.08em;
- text-transform: uppercase;
- color: var(--text-3);
- text-decoration: none;
- transition: color 120ms ease;
- }
-
- nav a:hover {
- color: var(--text);
- }
-
- /* ── Hero ── */
- .hero {
- padding: 5rem 0 4rem;
- border-bottom: 1px solid var(--border);
- }
-
- .hero-name {
- font-family: var(--serif);
- font-size: clamp(2.8rem, 8vw, 4.5rem);
- font-weight: 400;
- line-height: 1.05;
- letter-spacing: -0.01em;
- margin: 0 0 1.2rem;
- color: var(--text);
- animation: fadeUp 0.7s var(--ease) both;
- }
-
- .hero-name em {
- font-style: italic;
- color: var(--text-2);
- }
-
- .hero-role {
- font-family: var(--mono);
- font-size: 0.7rem;
- letter-spacing: 0.1em;
- text-transform: uppercase;
- color: var(--text-3);
- margin: 0 0 1.4rem;
- animation: fadeUp 0.7s 0.08s var(--ease) both;
- }
-
- .hero-bio {
- font-size: 0.975rem;
- line-height: 1.8;
- color: var(--text-2);
- margin: 0;
- max-width: 420px;
- animation: fadeUp 0.7s 0.15s var(--ease) both;
- }
-
- /* ── Writing section ── */
- .writing-header {
- display: flex;
- align-items: center;
- gap: 1rem;
- padding: 2.8rem 0 1.6rem;
- }
-
- .writing-label {
- font-family: var(--mono);
- font-size: 0.64rem;
- letter-spacing: 0.12em;
- text-transform: uppercase;
- color: var(--text-3);
- white-space: nowrap;
- }
-
- .writing-rule {
- flex: 1;
- height: 1px;
- background: var(--border);
- }
-
- /* ── Post list ── */
- .post-list {
- margin: 0;
- padding: 0;
- list-style: none;
- }
-
- .post-list li {
- padding: 0;
- margin: 0;
- }
-
- .post-list li::before {
- display: none;
- }
-
- .post-item {
- display: flex;
- align-items: baseline;
- gap: 1.5rem;
- padding: 1rem 0;
- text-decoration: none;
- color: inherit;
- border-bottom: 1px solid var(--border);
- transition: opacity 140ms ease;
- animation: fadeUp 0.5s var(--ease) both;
- }
-
- .post-item:hover {
- opacity: 0.55;
- }
-
- .post-date {
- font-family: var(--mono);
- font-size: 0.63rem;
- letter-spacing: 0.05em;
- color: var(--text-3);
- white-space: nowrap;
- flex-shrink: 0;
- padding-top: 0.1em;
- min-width: 5.5rem;
- }
-
- .post-right {
- flex: 1;
- min-width: 0;
- }
-
- .post-title {
- font-family: var(--serif);
- font-size: 1.05rem;
- font-weight: 400;
- color: var(--text);
- line-height: 1.45;
- display: block;
- }
-
- .post-tags {
- display: flex;
- gap: 0.3rem;
- margin-top: 0.4rem;
- flex-wrap: wrap;
- }
-
- .pill {
- display: inline-block;
- font-family: var(--mono);
- font-size: 0.58rem;
- letter-spacing: 0.06em;
- text-transform: uppercase;
- padding: 0.15rem 0.45rem;
- background: transparent;
- border: 1px solid var(--border);
- border-radius: 100px;
- color: var(--text-3);
- }
-
- /* ── Empty state ── */
- .empty {
- font-family: var(--mono);
- font-size: 0.72rem;
- color: var(--text-3);
- letter-spacing: 0.06em;
- padding: 2.5rem 0;
- }
-
- /* ── Footer ── */
- footer {
- padding: 2.5rem 0 3rem;
- display: flex;
- justify-content: space-between;
- align-items: center;
- flex-wrap: wrap;
- gap: 0.8rem;
- font-family: var(--mono);
- font-size: 0.65rem;
- letter-spacing: 0.05em;
- color: var(--text-3);
- }
-
- footer a {
- color: inherit;
- text-decoration: underline;
- text-underline-offset: 3px;
- text-decoration-color: var(--border);
- transition: color 120ms ease;
- }
-
- footer a:hover {
- color: var(--text);
- }
-
- /* ── Animations ── */
- @keyframes fadeUp {
- from {
- opacity: 0;
- transform: translateY(10px);
- }
- to {
- opacity: 1;
- transform: translateY(0);
- }
- }
-
- /* stagger post items */
- .post-item:nth-child(1) {
- animation-delay: 0.2s;
- }
- .post-item:nth-child(2) {
- animation-delay: 0.27s;
- }
- .post-item:nth-child(3) {
- animation-delay: 0.34s;
- }
- .post-item:nth-child(4) {
- animation-delay: 0.41s;
- }
- .post-item:nth-child(5) {
- animation-delay: 0.48s;
- }
- .post-item:nth-child(6) {
- animation-delay: 0.55s;
- }
-
- /* ── Mobile ── */
- @media (max-width: 500px) {
- .page {
- padding: 0 1.4rem;
- }
- .hero {
- padding: 3.5rem 0 3rem;
- }
- .post-item {
- flex-direction: column;
- gap: 0.2rem;
- }
- .post-date {
- min-width: unset;
- }
- footer {
- flex-direction: column;
- }
- }
-
- :focus-visible {
- outline: 2px solid var(--text);
- outline-offset: 3px;
- border-radius: 2px;
- }
- </style>
- </head>
- <body>
- <div class="page">
- <nav>
- <a href="/about">About</a>
- <a href="/feed.xml">RSS</a>
- </nav>
-
- <header class="hero">
- <h1 class="hero-name">{{ .AuthorName }}</h1>
- <p class="hero-role">{{ .AuthorRole }}</p>
- <p class="hero-bio">{{ .AuthorBio }}</p>
- </header>
-
- <main>
- <div class="writing-header">
- <span class="writing-label">Writing</span>
- <span class="writing-rule"></span>
- </div>
-
- {{ if .Posts }}
- <ul class="post-list">
- {{ range .Posts }}
- <li>
- <a class="post-item" href="/{{ .Slug }}/">
- <span class="post-right">
- <span class="post-title">{{ .Title }}</span>
- {{ if .Tags }}
- <span class="post-tags">
- {{ range .Tags }}
- <span class="pill">{{ . }}</span>
- {{ end }}
- </span>
- {{ end }}
- </span>
- <span class="post-date">{{ .Date }}</span>
- </a>
- </li>
- {{ end }}
- </ul>
- {{ else }}
- <p class="empty">No posts yet.</p>
- {{ end }}
- </main>
-
- <footer>
- <span>© {{ .Year }} {{ .AuthorName }}</span>
- <span>Built with <a href="#">kite</a></span>
- </footer>
- </div>
- </body>
-</html>
diff --git a/kite b/kite
deleted file mode 100755
index 3b9a3c6..0000000
--- a/kite
+++ /dev/null
Binary files differ
diff --git a/kite-release b/kite-release
deleted file mode 100755
index 2deca52..0000000
--- a/kite-release
+++ /dev/null
Binary files differ
diff --git a/kite-release.upx b/kite-release.upx
deleted file mode 100644
index 4898f35..0000000
--- a/kite-release.upx
+++ /dev/null
Binary files differ
diff --git a/layout.html b/layout.html
deleted file mode 100644
index 97bdb4b..0000000
--- a/layout.html
+++ /dev/null
@@ -1,242 +0,0 @@
-<!doctype html>
-<html lang="en">
- <head>
- <meta charset="UTF-8" />
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="description" content="{{ .Title }}" />
- <title>{{ .Title }}</title>
- <link rel="preconnect" href="https://fonts.googleapis.com" />
- <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
- <link
- href="https://cdn.jsdelivr.net/npm/prismjs/themes/prism.css"
- rel="stylesheet"
- />
- <script src="https://cdn.jsdelivr.net/npm/prismjs/prism.js"></script>
- <script src="https://cdn.jsdelivr.net/npm/prismjs/plugins/autoloader/prism-autoloader.min.js"></script>
- <link rel="stylesheet" href="../style.css" />
- <style>
- .toc {
- position: static !important;
- width: auto !important;
- right: auto !important;
- top: auto !important;
- background: var(--bg-subtle) !important;
- border: 1px solid var(--border) !important;
- padding: 1.2rem 1.4rem !important;
- margin: 0 0 3rem !important;
- }
-
- .toc-title {
- margin: 0 0 0.8rem !important;
- font-size: 0.65rem !important;
- line-height: 1 !important;
- display: block;
- }
-
- .toc ul {
- display: block;
- margin: 0;
- padding: 0;
- }
-
- .toc li {
- display: block;
- padding-left: 0 !important;
- margin: 0.25rem 0 !important;
- }
-
- .toc li::before {
- display: none !important;
- }
-
- .toc a.active {
- color: var(--text);
- font-weight: 500;
- }
-
- .toc-toggle {
- display: flex;
- align-items: center;
- gap: 0.5rem;
- cursor: pointer;
- background: none;
- border: none;
- padding: 0;
- font-family: var(--mono);
- font-size: 0.65rem;
- letter-spacing: 0.1em;
- text-transform: uppercase;
- color: var(--text-muted);
- margin-bottom: 0.8rem;
- width: 100%;
- text-align: left;
- }
-
- .toc-toggle svg {
- transition: transform 140ms ease;
- flex-shrink: 0;
- }
-
- .toc-toggle[aria-expanded="false"] svg {
- transform: rotate(-90deg);
- }
-
- .toc-body {
- overflow: hidden;
- transition:
- max-height 240ms ease,
- opacity 200ms ease;
- max-height: 800px;
- opacity: 1;
- }
-
- .toc-body.collapsed {
- max-height: 0;
- opacity: 0;
- }
-
- @media (max-width: 699px) {
- .toc-title {
- display: none;
- }
- .toc-toggle {
- display: flex;
- }
- .toc-body {
- }
- }
-
- @media (min-width: 700px) {
- .toc-toggle {
- display: none;
- }
- .toc-title {
- display: block;
- }
- .toc-body {
- max-height: none !important;
- opacity: 1 !important;
- }
- }
-
- @media (min-width: 1100px) {
- .toc {
- position: fixed !important;
- top: 6rem !important;
- left: max(2rem, calc((100vw - 680px) / 2 - 220px)) !important;
- width: 200px !important;
- background: transparent !important;
- border: none !important;
- padding: 0 !important;
- margin: 0 !important;
- }
-
- .toc-toggle {
- display: none;
- }
- .toc-title {
- display: block;
- }
- .toc-body {
- max-height: none !important;
- opacity: 1 !important;
- }
-
- .toc-level-2 {
- margin-left: 0.8rem !important;
- }
- .toc-level-3 {
- margin-left: 1.4rem !important;
- }
- .toc-level-4 {
- margin-left: 2rem !important;
- }
- }
- </style>
- </head>
- <body>
- <main class="article">
- <nav class="toc" aria-label="Table of contents">
- <button
- class="toc-toggle"
- aria-expanded="false"
- aria-controls="toc-body"
- >
- <svg
- width="10"
- height="10"
- viewBox="0 0 10 10"
- fill="none"
- aria-hidden="true"
- >
- <path
- d="M2 3.5L5 6.5L8 3.5"
- stroke="currentColor"
- stroke-width="1.4"
- stroke-linecap="round"
- stroke-linejoin="round"
- />
- </svg>
- Contents
- </button>
-
- <div class="toc-body collapsed" id="toc-body">
- <ul>
- {{ range .TOC }}
- <li class="toc-level-{{ .Level }}">
- <a href="#{{ .ID }}">{{ .Text }}</a>
- </li>
- {{ end }}
- </ul>
- </div>
- </nav>
-
- <h1>{{ .Title }}</h1>
- {{ .Content }}
- </main>
-
- <script>
- const toggle = document.querySelector(".toc-toggle");
- const body = document.getElementById("toc-body");
-
- if (toggle && body) {
- toggle.addEventListener("click", () => {
- const expanded = toggle.getAttribute("aria-expanded") === "true";
- toggle.setAttribute("aria-expanded", String(!expanded));
- body.classList.toggle("collapsed", expanded);
- });
- }
-
- const tocLinks = document.querySelectorAll(".toc a");
-
- if (tocLinks.length > 0) {
- const headingIDs = Array.from(tocLinks).map((a) =>
- decodeURIComponent(a.getAttribute("href").slice(1)),
- );
- const headings = headingIDs
- .map((id) => document.getElementById(id))
- .filter(Boolean);
-
- let current = null;
-
- const observer = new IntersectionObserver(
- (entries) => {
- entries.forEach((entry) => {
- if (entry.isIntersecting) {
- current = entry.target.id;
- }
- });
-
- tocLinks.forEach((a) => {
- const id = decodeURIComponent(a.getAttribute("href").slice(1));
- a.classList.toggle("active", id === current);
- });
- },
- { rootMargin: "0px 0px -70% 0px", threshold: 0 },
- );
-
- headings.forEach((h) => observer.observe(h));
- }
- </script>
- </body>
-</html>
diff --git a/todos.txt b/todos.txt
deleted file mode 100644
index bed8ddb..0000000
--- a/todos.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-REFACTORRRR
-
-cmd/ -> contains main.go files
-internal/<abc> -> code that is not to be imported anywhere outside the internal dir
-pkg/<abc> -> code that is supposed to be imported anywhere outside the internal dir