Commit Graph

  • 5e77e7efea build: verify image upload feature compiles and passes checks xfy 2026-06-05 15:25:59 +08:00
  • 08bd69d64b feat(write): add onImageUpload callback to tiptap editor xfy 2026-06-05 15:23:36 +08:00
  • c2c7b46958 fix(tiptap-editor): use insertContentAt with drop position in onDrop handler xfy 2026-06-05 15:21:38 +08:00
  • 00c5a880f4 feat(editor): add FileHandler extension for image paste/drop upload xfy 2026-06-05 15:19:31 +08:00
  • 3d7dd5b5a5 deps(editor): add @tiptap/extension-file-handler xfy 2026-06-05 15:17:39 +08:00
  • 76797f1bc3 feat(server): register upload route and static file serving xfy 2026-06-05 15:14:10 +08:00
  • 371ebcf8f9 fix(upload): gate axum imports behind #[cfg(feature = "server")] xfy 2026-06-05 15:08:19 +08:00
  • 93020a8e14 fix(upload): remove space in filename format and unused UploadResponse struct xfy 2026-06-05 15:00:29 +08:00
  • 1bae3446e6 feat(api): add image upload handler with admin auth xfy 2026-06-05 14:56:29 +08:00
  • eaec6d5da7 deps: add fs feature to tower-http for static file serving xfy 2026-06-05 14:51:35 +08:00
  • 16248ca330 chore: create uploads directory for image storage xfy 2026-06-05 14:49:22 +08:00
  • dd7022ec75 fix: replace select element with overlay pattern to fix dropdown arrow alignment in write page xfy 2026-06-05 11:09:02 +08:00
  • 28d1ee0d52 fix: reset UserContext on login/logout to prevent admin page stuck on re-login xfy 2026-06-05 10:42:20 +08:00
  • 58cfcc31bf fix: improve label and button text contrast in write page light mode xfy 2026-06-05 10:33:41 +08:00
  • 7866c53e36 feat: add dark mode toggle button to admin layout xfy 2026-06-05 10:33:34 +08:00
  • a8704e199f feat(editor): add slash command, table, task list, image and link extensions xfy 2026-06-05 10:20:47 +08:00
  • 5321b8cf97 refactor: reorganize admin write page layout with card-based sections xfy 2026-06-05 09:58:26 +08:00
  • 5b481e801c feat: add custom .sublime-syntax loading for Swift and Kotlin, improve alias table xfy 2026-06-05 09:27:21 +08:00
  • 81d3d72a48 feat: enable extended markdown parsing with table support in post rendering xfy 2026-06-04 18:06:46 +08:00
  • 245fd83ec8 feat: replace in-footer scroll-to-top link with fixed floating button xfy 2026-06-04 17:55:26 +08:00
  • 0dbd07198b fix: remove leftover --wasm-split flag from dx serve dev command xfy 2026-06-04 17:46:44 +08:00
  • f81656bb18 revert: disable wasm-split due to fullstack SSR incompatibility xfy 2026-06-04 17:44:33 +08:00
  • 73fd3c30e2 build: remove obsolete WASM path fix and tracked index.html xfy 2026-06-04 17:34:12 +08:00
  • a282d1dd29 feat: enable wasm-split for route-based code splitting xfy 2026-06-04 17:32:00 +08:00
  • c44f37e9ec feat: enable wasm_split for non-core routes xfy 2026-06-04 17:12:07 +08:00
  • 9c38ca7a16 chore: stop tracking tiptap build artifacts (now gitignored) xfy 2026-06-04 16:52:11 +08:00
  • 675349a5b4 fix: add #[cfg(feature = server)] to server-only imports for WASM compatibility xfy 2026-06-04 16:40:42 +08:00
  • 0ce4924e06 chore: final verification after redundancy cleanup - all checks pass xfy 2026-06-04 16:27:53 +08:00
  • cd45ab17de build: simplify tiptap build by setting fixed output filename in vite config xfy 2026-06-04 16:26:25 +08:00
  • e5ce1580e2 fix: restore dead_code allow on CreatePostRequest to suppress warning xfy 2026-06-04 16:25:05 +08:00
  • 1830fc9f2e cleanup: remove dead code, debug prints, and unused dead_code allow attributes xfy 2026-06-04 16:20:43 +08:00
  • c26c62558e fix: add status_badge_class for badge styling, restore posts table backgrounds xfy 2026-06-04 16:17:41 +08:00
  • 58e9dbc5b7 refactor: add status_label/status_class/formatted_date helpers to Post model xfy 2026-06-04 16:13:49 +08:00
  • c27b2d513e perf: pre-compile regex patterns and extract markdown stripping to utils/text.rs xfy 2026-06-04 16:08:01 +08:00
  • 28707d3c3a refactor: reuse session validation in get_current_admin_user via get_user_by_token xfy 2026-06-04 16:02:47 +08:00
  • 58f972aa17 fix: restore register success alert layout with login link xfy 2026-06-04 15:59:17 +08:00
  • 4e33bd3ee6 refactor: extract form atoms (FormInput, FormLabel, AlertBox) and replace repeated input/button styles xfy 2026-06-04 15:55:40 +08:00
  • 71abff1b3e refactor: add style prop to SkeletonBox, migrate last tags_skeleton div xfy 2026-06-04 15:49:30 +08:00
  • 4fbc938422 refactor: migrate tags_skeleton and admin_skeleton to SkeletonBox xfy 2026-06-04 15:47:21 +08:00
  • 6ed12ff1cb refactor: fix skeleton atoms - remove unused components, use &str, migrate all skeletons xfy 2026-06-04 15:43:40 +08:00
  • ebf0f84733 refactor: extract skeleton atoms (SkeletonLine, SkeletonBox, SkeletonCard) and refactor skeleton components xfy 2026-06-04 15:35:36 +08:00
  • d3be04bcec refactor: extract session parsing to auth/session.rs and db error helpers to api/utils.rs xfy 2026-06-04 15:16:40 +08:00
  • 9da060ac32 refactor: extract sleep_ms to utils/time.rs, deduplicate in hooks and skeletons xfy 2026-06-04 15:11:08 +08:00
  • ce14c476b5 refactor: replace string-based navigation with typed Route and Link components xfy 2026-06-04 14:55:18 +08:00
  • aebdcd6d99 fix(build): fix WASM 404 in production by creating symlinks in wasm/ directory xfy 2026-06-04 11:34:13 +08:00
  • 88cd23f74f fix: show route-specific skeleton screens in SuspenseBoundary fallback xfy 2026-06-04 11:06:42 +08:00
  • c2f68b9c2d fix: wrap Outlet in SuspenseBoundary to prevent full-page flash on route change xfy 2026-06-04 11:03:56 +08:00
  • 593666135c feat: add DB connection retry logic with get_conn() helper xfy 2026-06-04 10:03:56 +08:00
  • e09a0f4616 chore: remove unused PageLayout component xfy 2026-06-03 18:38:57 +08:00
  • 5d018864c2 refactor: remove PageLayout from all frontend pages, delegate to FrontendLayout xfy 2026-06-03 18:38:11 +08:00
  • 8845577958 feat: wrap frontend routes in FrontendLayout via router #[layout] attribute xfy 2026-06-03 18:35:36 +08:00
  • e861b8a5be feat: add FrontendLayout component with Header, Footer and Outlet xfy 2026-06-03 18:32:43 +08:00
  • 778726251a fix: remove SuspenseBoundary, render skeleton screens directly in loading branch xfy 2026-06-03 17:59:38 +08:00
  • 326108ab68 fix: delay skeleton pulse animation instead of hiding skeleton, prevent blank flash xfy 2026-06-03 17:47:51 +08:00
  • 754c1f5b86 feat: wrap all skeleton screens with DelayedSkeleton to prevent flicker xfy 2026-06-03 17:43:34 +08:00
  • 73e30d6f89 feat: add DelayedSkeleton wrapper to prevent skeleton flicker on fast loads xfy 2026-06-03 17:41:49 +08:00
  • 45b784d6b4 chore: add superpowers to gitignore xfy 2026-06-03 17:35:25 +08:00
  • 068d13c69f refactor: remove obsolete SuspenseWrapper, all pages now use dedicated skeleton screens xfy 2026-06-03 17:33:44 +08:00
  • 62519d620d feat: add SearchSkeleton component and replace inline skeleton on search page xfy 2026-06-03 17:30:47 +08:00
  • c2e1fbe3ac feat: add TagsSkeleton/TagDetailSkeleton and replace generic fallback on tags pages xfy 2026-06-03 17:25:47 +08:00
  • 5becd73ebc feat: add ArchiveSkeleton and replace generic fallback on archives page xfy 2026-06-03 17:19:29 +08:00
  • 372c701b07 feat: add PostDetailSkeleton and replace generic fallback on post detail page xfy 2026-06-03 17:13:39 +08:00
  • 076448d6ed feat: add HomeSkeleton and replace generic fallback on home page xfy 2026-06-03 17:09:20 +08:00
  • db8e88e1fe feat: add skeleton screens module and PostCardSkeleton component xfy 2026-06-03 17:01:39 +08:00
  • 1a78896bc4 fix(theme): replace @theme dark with .dark selector for correct light/dark variable switching xfy 2026-06-03 16:52:20 +08:00
  • 8f2f00244c fix: add WASM loading script to SSR HTML template for client hydration xfy 2026-06-03 16:30:03 +08:00
  • 3d19f62fb4 fix: prevent syntax-highlighted spans from being displayed as block due to Tailwind .block class conflict xfy 2026-06-03 16:18:24 +08:00
  • b173a5c509 refactor: merge cover_image migration into 002_posts xfy 2026-06-03 15:41:22 +08:00
  • e48ea4f97f fix: add CSS stylesheets via document API for SSR xfy 2026-06-03 15:37:17 +08:00
  • a886574696 chore: ignore static/ SSR cache dir xfy 2026-06-03 14:56:43 +08:00
  • ccffab851a fix: admin pages use client-only fetching; fix theme cookie parsing; restore custom skeletons xfy 2026-06-03 14:55:50 +08:00
  • 6cfe664085 feat: SSR for home and tags pages xfy 2026-06-03 14:40:15 +08:00
  • 6b3e086628 feat: read theme from cookie during SSR xfy 2026-06-03 14:38:00 +08:00
  • 269095cc65 feat: configure incremental SSR caching xfy 2026-06-03 14:36:22 +08:00
  • 34e70f6c57 feat: SSR for admin pages xfy 2026-06-03 14:33:49 +08:00
  • 1afb477829 feat: SSR for archives page xfy 2026-06-03 14:23:44 +08:00
  • fe30d0495f feat: SSR for post detail page xfy 2026-06-03 14:17:52 +08:00
  • 60a2cd49ab feat: add SuspenseWrapper component for SSR xfy 2026-06-03 14:14:45 +08:00
  • 5e449013d6 refactor(highlight): output CSS to public/, add syntax aliases and case-insensitive lookup, fix code block CSS xfy 2026-06-03 14:08:16 +08:00
  • 34e3bcdf95 fix: address code review feedback xfy 2026-06-03 13:13:29 +08:00
  • 2e1d05cb03 refactor: clean up highlight module, remove unused theme getters and imports xfy 2026-06-03 11:54:26 +08:00
  • 11261836c7 feat: add syntect code highlighting with catppuccin themes xfy 2026-06-03 11:52:58 +08:00
  • 37d95e6a33 feat: add catppuccin Latte & Mocha tmTheme files for syntax highlighting xfy 2026-06-03 11:43:31 +08:00
  • c6ced73bac fix(admin): resolve compilation errors in posts and write pages xfy 2026-06-03 10:57:22 +08:00
  • 6c039e16e8 refactor(api): remove unused word_count/reading_time from RenderedContent xfy 2026-06-03 10:54:02 +08:00
  • 09060e12c0 fix(admin): cap tiptap editor ready-polling at 100 attempts xfy 2026-06-03 10:34:06 +08:00
  • 61ae3abbc2 fix(api): generate ASCII-only slugs with timestamp fallback xfy 2026-06-03 10:33:11 +08:00
  • f5413e00cc fix(auth): prevent password_hash from reaching the frontend xfy 2026-06-03 10:32:15 +08:00
  • 8146a8a779 perf(api): split row_to_post into list and full variants xfy 2026-06-03 10:29:46 +08:00
  • 19e5a0be41 fix(api): correct count_words for CJK characters xfy 2026-06-03 10:25:38 +08:00
  • e6c3cacf12 chore: format with cargo fix xfy 2026-06-03 10:12:04 +08:00
  • 0290f4d2e7 fix(api): remove debug logging that caused UTF-8 boundary panic; configure ammonia to preserve anchor attributes xfy 2026-06-03 10:09:14 +08:00
  • 0c34df4ba7 fix(api): configure ammonia to preserve class and aria-hidden attributes for anchor links xfy 2026-06-03 09:54:16 +08:00
  • fb4f5790fc fix(api): remove hidden attr from anchor links, use CSS display instead xfy 2026-06-03 09:48:12 +08:00
  • 5ff58fec59 fix(api): fix markdown rendering to properly handle code blocks and other elements xfy 2026-06-02 18:30:26 +08:00
  • 14e4a26dc0 fix(api): use rendered HTML with anchors in row_to_post xfy 2026-06-02 18:28:24 +08:00
  • 5544ea0c18 feat(admin): add cover_image input field in write form xfy 2026-06-02 18:22:22 +08:00
  • 6b1f2e27c9 feat(components): add post page components (header, toc, content, footer, nav) xfy 2026-06-02 18:21:25 +08:00
  • a07f6ca51b feat(style): add PaperMod theme variables and component styles xfy 2026-06-02 18:18:40 +08:00
  • 1088691dca feat(api): enhance markdown rendering with TOC, anchors, word count; add cover_image support; prev/next post navigation xfy 2026-06-02 18:17:21 +08:00