Commit Graph

111 Commits

Author SHA1 Message Date
OpenCode Worker
de13ba43b0 fix: keep dynamic blog routes static 2026-06-03 10:46:59 -05:00
kbot
c510abe875 feat: add static tag pages 2026-06-03 10:43:55 -05:00
Krishna Ayyalasomayajula
21be810a68 fix: normalize post metadata and tag helpers 2026-06-03 10:38:19 -05:00
Krishna Ayyalasomayajula
19140b9df3 removed mdx 2026-06-02 13:14:53 -05:00
Krishna Ayyalasomayajula
521f10af90 fix: tolerate empty posts directory with turbopackOptional 2026-06-02 13:07:58 -05:00
Krishna Ayyalasomayajula
3fad46d9f9 ui: change "Latest Posts" to "Latest" 2026-06-02 12:58:03 -05:00
Krishna Ayyalasomayajula
f70c9b5abb typography: load IBM Plex Mono for body text via next/font/google 2026-06-02 12:16:52 -05:00
Krishna Ayyalasomayajula
5ff65968a3 mdx: add remark-frontmatter to pipeline, fix rehype-pretty-code line numbers visitor 2026-06-02 12:05:32 -05:00
Krishna Ayyalasomayajula
bf34a225c0 Revert "mdx: add remark-frontmatter to pipeline, fix rehype-pretty-code line numbers visitor"
This reverts commit 9867a74bdd.
2026-06-02 11:59:47 -05:00
Krishna Ayyalasomayajula
9867a74bdd mdx: add remark-frontmatter to pipeline, fix rehype-pretty-code line numbers visitor 2026-06-02 11:53:57 -05:00
Krishna Ayyalasomayajula
682d39da22 mdx: add remark-frontmatter dependency for YAML frontmatter stripping 2026-06-02 11:52:18 -05:00
Krishna Ayyalasomayajula
fbc25c5c88 fix: use unknown cast instead of any in ClientButton 2026-06-02 11:28:41 -05:00
Krishna Ayyalasomayajula
a0a162d62e types: use type alias instead of empty interface for Post 2026-06-02 11:27:47 -05:00
Krishna Ayyalasomayajula
0c0120d9bb lock: update bun.lock after adding @mdx-js/loader 2026-06-02 11:26:33 -05:00
Krishna Ayyalasomayajula
3e3b990e8b deps: add @mdx-js/loader as peer dependency for @next/mdx 2026-06-02 11:25:43 -05:00
Krishna Ayyalasomayajula
c65e58023d config: use string-format plugin config for Turbopack compatibility 2026-06-02 11:24:57 -05:00
Krishna Ayyalasomayajula
75214a3b64 fix: use empty turbopack config to suppress Next.js 16 webpack warning 2026-06-02 11:13:13 -05:00
Krishna Ayyalasomayajula
091cc56cfb fix: remove filterMetaString callback from rehypePrettyCode config 2026-06-02 01:19:38 -05:00
Krishna Ayyalasomayajula
2d2ee05025 fix: remove filterMetaString callback from rehypePrettyCode config 2026-06-02 01:16:14 -05:00
Krishna Ayyalasomayajula
8a09181cae fix: remove filterMetaString callback from rehypePrettyCode config 2026-06-02 01:13:42 -05:00
Krishna Ayyalasomayajula
f91363b240 fix: remove non-serializable rehype-pretty-code callbacks from @next/mdx config 2026-06-02 01:12:14 -05:00
Krishna Ayyalasomayajula
4874a4bae8 fix: use unknown cast for Event to MouseEvent conversion in ClientButton 2026-06-02 01:10:53 -05:00
Krishna Ayyalasomayajula
8da6a3f5ed posts: replace MDXRemote with @next/mdx dynamic import, remove remark/rehype plugin config from page 2026-06-02 01:09:33 -05:00
Krishna Ayyalasomayajula
98d1541f1b lib: remove source field from Post interface, use gray-matter for reading time only 2026-06-02 01:08:16 -05:00
Krishna Ayyalasomayajula
575b485c41 ui: update ClientButton to support function onClick alongside legacy string onClick 2026-06-02 01:07:00 -05:00
Krishna Ayyalasomayajula
f4db327d7a mdx: rename getMDXComponents to useMDXComponents convention, remove ClientButton 2026-06-02 01:06:12 -05:00
Krishna Ayyalasomayajula
0cdfeb8b89 typography: update font variables to Fraunces + IBM Plex Mono + JetBrains Mono 2026-06-02 00:48:20 -05:00
Krishna Ayyalasomayajula
2717997a92 typography: replace Inter with Fraunces (headings) + IBM Plex Mono (body), keep JetBrains Mono (code) 2026-06-02 00:47:32 -05:00
Krishna Ayyalasomayajula
ca99f60751 deps: replace next-mdx-remote and @mdx-js/react with @next/mdx 2026-06-02 00:45:56 -05:00
Krishna Ayyalasomayajula
3a506b04f6 config: add @next/mdx webpack loader with full remark/rehype plugin chain 2026-06-02 00:44:52 -05:00
Krishna Ayyalasomayajula
049bc3e7a3 Revert "feat: serve content files via catch-all route, use content-relative cover images"
This reverts commit 8d582b6ae3.
2026-06-01 23:54:23 -05:00
Krishna Ayyalasomayajula
8d582b6ae3 feat: serve content files via catch-all route, use content-relative cover images 2026-06-01 23:53:28 -05:00
Krishna Ayyalasomayajula
74dfb82069 fix: use CSS variable for TOC sticky offset instead of hardcoded pixels 2026-06-01 23:45:53 -05:00
Krishna Ayyalasomayajula
2c6cbe96d9 fix: push TOC below sticky header by increasing sticky top offset 2026-06-01 23:45:12 -05:00
Krishna Ayyalasomayajula
9531080c7a fix: add scroll-padding-top to prevent header from covering TOC targets 2026-06-01 23:34:50 -05:00
Krishna Ayyalasomayajula
17eac2c406 fix: replace post title in cover image alt text with generic description 2026-06-01 23:34:00 -05:00
Krishna Ayyalasomayajula
9767ff950b fix: use mode-aware colors for code block line numbers 2026-06-01 23:32:46 -05:00
Krishna Ayyalasomayajula
a12b13f7d1 fix: use client-side ref to handle onclick string from transformerCopyButton 2026-06-01 23:31:20 -05:00
Krishna Ayyalasomayajula
473774d0ca fix: remove duplicate blog heading and reduce home page spacing 2026-06-01 23:23:27 -05:00
Krishna Ayyalasomayajula
95f515448a fix: remove duplicate h1 from sample posts (page header already renders title) 2026-06-01 23:21:59 -05:00
Krishna Ayyalasomayajula
a44d8eaddc fix: enable line numbers on all code blocks via filterMetaString 2026-06-01 23:20:43 -05:00
Krishna Ayyalasomayajula
ee791f450c fix: correct button override to spread all props and avoid nested buttons 2026-06-01 23:19:25 -05:00
Krishna Ayyalasomayajula
fe4261f58f fix: add button override to handle transformerCopyButton onclick string 2026-06-01 23:17:51 -05:00
Krishna Ayyalasomayajula
4717dde7a2 fix: add lineNumbers: true to rehype-pretty-code config
- Adds lineNumbers: true so data-line-numbers attribute is generated
- Enables CSS counter-based line numbers in code blocks
- Follows up on mega-review finding
2026-06-01 23:00:33 -05:00
Krishna Ayyalasomayajula
94b2afc914 chore: final build + lint + cleanup
- Run bun run build: succeeded
- Run bun run lint: no errors (3 img warnings acceptable)
- Fix any types in app/posts/[slug]/page.tsx with proper hast/rehype-pretty-code types
- Fix any type in mdx-components.tsx pre component with React.HTMLAttributes
- Remove unused language variable from mdx-components.tsx
- Verify all 3 posts render with <p> tags, code block syntax highlighting, and heading ids
2026-06-01 22:57:49 -05:00
Krishna Ayyalasomayajula
0bb69a12c3 fix: remove @tailwindcss/typography + fix CSS architecture
- Remove @tailwindcss/typography from package.json devDependencies
- Remove @plugin and @utility prose from globals.css
- Fix @custom-variant dark to use &:is(.dark)
- Extract @keyframes outside @supports blocks
- Scope * transition to body/body*/[class*=bg-]/[class*=border-]/[class*=text-]
- Add prefers-reduced-motion rules for scroll-to-top + reading progress
- Add :focus-visible outline on scroll-to-top
2026-06-01 22:53:52 -05:00
Krishna Ayyalasomayajula
126fc53ab3 fix: format PostCard date with toLocaleDateString
- Replace raw {date} with toLocaleDateString formatting
- Matches post detail page date formatting
2026-06-01 22:51:50 -05:00
Krishna Ayyalasomayajula
7a17d4c538 feat: cover image display + date formatting + footer spacing
- PostCard: render coverImage above meta/content with lazy loading
- Post detail: render coverImage below title with lazy loading
- Format dates via toLocaleDateString (e.g. Jan 15, 2025)
- Footer top margin: mt-20 → mt-16
2026-06-01 22:50:10 -05:00
Krishna Ayyalasomayajula
06481d0c26 fix: scroll-to-top visible class + reading progress dark mode
- Wire visible state to className in ScrollToTop component
- Replace hard-coded rgba with color-mix() for theme-aware background
- Dark mode reading progress uses 15% ink color mix
2026-06-01 22:48:18 -05:00
Krishna Ayyalasomayajula
5ac5605933 feat: PostCard card boundary + author + reading time
- Card: rounded-xl, border, bg-canvas, p-6, hover shadow-card
- Author and reading time on meta line with · separators
- Tags use rounded-full pill shape (consistent with post detail)
- Title hover via group-hover:text-accent
- Excerpt uses leading-relaxed text-sm
2026-06-01 22:47:06 -05:00