Skip to content

chore: deploy main to prod - #5

Open
itzzjustmateo wants to merge 41 commits into
prodfrom
main
Open

itzzjustmateo wants to merge 41 commits into
prodfrom
main

Conversation

@itzzjustmateo

Copy link
Copy Markdown
Member

Merge main into prod to deploy the latest UI review fixes, broken link fixes, touch target improvements, and a11y enhancements.

dependabot Bot and others added 30 commits September 7, 2026 04:33
… with 4 updates

Bumps the major-dependencies group with 4 updates in the / directory: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node), [jsdom](https://github.com/jsdom/jsdom), [typescript](https://github.com/microsoft/TypeScript) and [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest).


Updates `@types/node` from 22.20.1 to 26.4.1
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `jsdom` from 28.1.0 to 30.0.1
- [Release notes](https://github.com/jsdom/jsdom/releases)
- [Commits](jsdom/jsdom@v28.1.0...v30.0.1)

Updates `typescript` from 6.0.3 to 7.0.2
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Commits](microsoft/TypeScript@v6.0.3...v7.0.2)

Updates `vitest` from 4.1.11 to 5.0.0
- [Release notes](https://github.com/vitest-dev/vitest/releases)
- [Changelog](https://github.com/vitest-dev/vitest/blob/main/docs/releases.md)
- [Commits](https://github.com/vitest-dev/vitest/commits/v5.0.0/packages/vitest)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-version: 26.4.1
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: major-dependencies
- dependency-name: jsdom
  dependency-version: 30.0.1
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: major-dependencies
- dependency-name: typescript
  dependency-version: 7.0.2
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: major-dependencies
- dependency-name: vitest
  dependency-version: 5.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: major-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
…pendencies-3b01abfcae

chore(deps-dev): bump the major-dependencies group across 1 directory with 4 updates
… ports

- Rewrite README, CODE_OF_CONDUCT, SECURITY, AGENTS.md with accurate
  stack details (Base UI, Node 22, no TanStack Query) and WCAG 2.2 AA
  guidance; add CONTRIBUTING.md and improve the PR template
- Add markdownlint-cli2 with the GitHub ruleset (lint:md / lint:md:fix);
  only MD033 + MD041 disabled; exclude .opencode/ and .tmp/
- Exclude Markdown from oxfmt so it no longer fights markdownlint
- Add docs.yml CI (Markdown lint + accessibility) and a source-branch
  policy job in pr.yml (prod PRs must come from main)
- Fix Docker ports: container 3000 / host :1112 for prod, dev stays
  :6001; healthcheck on localhost:3000
- Convert Reveal scroll animation to Motion (LazyMotion, reduced-motion
  aware)
- Update issue templates, manifest, footer, logo, navbar, news section,
  auth app name, page titles, and login/signup copy
- Rename theme storage key, cookie-consent keys, and Docker compose
  project/image names to nexvaultx-* for full consistency
- Apply Sage Garden theme from tweakcn.com (green brand accent)
- Move Navbar + Footer into root layout, single <main> per page (WCAG)
- Rebuild Reveal with useInView-driven animate (fixes invisible cards)
- Replace CSS marquee with Motion useAnimationFrame carousel
- Replace page-enter CSS animation with Motion entrance in Hero
- Green icon treatments across feature/news/footer components
- Add LazyMotion to root layout, switch motion imports to m
- Document tweakcn.com theme workflow in AGENTS.md
…ight

- Add Base UI Tabs primitive wrapper (Tabs, TabsList, TabsTrigger, TabsContent)
- Rewrite settings page with Profile/Account/Sessions/Danger Zone tabs
- Remove hover highlight effects from featured-project cards; hovering now only pauses the marquee
- Configure Better Auth passkey plugin (server + client) with rpID from
  BETTER_AUTH_URL hostname and rpName NexVaultX
- Add passkeys table and relations to the Drizzle schema with migration
- Add Passkeys tab to settings with add/list/remove passkey actions
- Fix Base UI Tabs selected styling to use data-active attribute
- Configure Google OAuth provider in Better Auth (server + env vars)
- Add Continue with Google button to login and sign-up pages
- Revert Antic font back to Inter Variable
- Add docs/ with guides for auth, social providers, database,
  development, deployment, theming, accessibility, and architecture
- Add standalone ElysiaJS API server (server/) on port 3002 with Node
  adapter: /api/health, /api/mods/search (Meilisearch proxy),
  /api/events (SSE), and /api/webhooks/mods (HMAC-SHA256 verified)
- Add webhook -> SSE real-time flow: mods page subscribes via
  EventSource and shows a live banner with cache-bypassing refresh
- Make mods search real-time by removing the 250ms debounce
- Add /projects hub page linking to /mods with coming-soon sections
- Add Projects link to the navbar
- Add dev:api, start:api, dev:all, and send:webhook scripts
- Document API_URL, API_PORT, WEBHOOK_SECRET, VITE_API_URL in
  .env.example and env.config.ts
- Add projects page, live-event, and cache delete tests (63 total)
- Add API server step to the E2E workflow
- Update README and docs for the API server, real-time search, and
  projects hub
- @tanstack/react-query, react-store, react-pacer, react-form
- valibot as the form validator
- @unpic/react for future image optimization
- unify dev commands: pnpm dev delegates to dev:all, add dev:web
- ConfirmDialog primitive built on Base UI Dialog with destructive variant
- navbar: active states with aria-current, cn() activeProps fix, type=button on user menu trigger
- footer: nav landmarks, compact grid, legal links, LINK_CLASS constant
- logo: use cn() for conditional classes
- Dockerfile: node:22-alpine -> node:24-alpine across all stages
- .npmrc: disable audit/fund (pnpm 11 dropped the CLI flags)
- CI setup-pnpm action: default node-version 22 -> 24
- add mise.toml (node 24), justfile, ROADMAP.md, TODO.md
- docs: update setup guide for Node 24 and new dev commands
- Impressum, Privacy, Cookies, Terms of Service, Terms of Use, Disclaimer
- shared LegalPage component with section landmarks and head titles
- placeholder content clearly marked for review before production
- pendingComponent shows skeletons during client-side navigation
- /mods/$modId detail page with stats, game versions, and tags
- use cn() for conditional classes in mods and projects routes
…ence

Expand the skill from a thin Vercel-guidelines wrapper into a complete
design-system reference for the project. Add a non-negotiable rule that
native UI controls must never be used when a shadcn/ui equivalent exists,
and document the project's design tokens, component conventions, spacing,
typography, radius, states, destructive-action handling, motion, a11y,
responsive behavior, dialog/drawer usage, icon usage, color usage, and
surface layering. Include a review checklist so future agents can audit
UI consistently.
Admin & Auth:
- Add RBAC admin panel with user/session management
- Add requireAdmin middleware and admin API routes
- Add permissions module with role-based access control
- Add DB migration for admin fields (role, banned, impersonatedBy)
- Add seed-admin script for initial admin setup
- Fix invalid origin trustedOrigins configuration

Forms & Validation:
- Migrate login/signup/settings forms to TanStack Form
- Migrate Zod to Valibot across all validation schemas
- Fix onChangeListenTo placement in settings-danger-zone

UI Polish:
- Add ChromaticTextReveal hero animation component
- Integrate TanStack Charts for download stats visualization
- Integrate TanStack Hotkeys for Cmd+K search focus
- Integrate TanStack Virtual for admin list virtualization
- Integrate TanStack Pacer for debounced search queries
- Unify Dialog/Drawer/ConfirmDialog APIs with aria-modal
- Migrate theme-toggle from lucide-react to Tabler icons
- Fix prefer-destructuring and func-names lint errors
- Fix ignoreInputFields -> ignoreInputs typo in HotkeysProvider

Dependencies:
- Add @tanstack/charts, @tanstack/react-pacer
- Remove unused @tanstack/react-store, @unpic/react, zod
- Reinstall envin (used by env.config.ts)

OpenCode:
- Create web-design-guidelines command (.opencode/command/)
- Create frontend-skills skill (.opencode/skills/)
- Configure shadcn/ui MCP server in opencode.json

Verification:
- pnpm check: all 135 files pass
- pnpm typecheck: 0 errors
- pnpm test: 64/64 tests pass
- pnpm build: succeeds
…onfig

- Remove redundant LazyMotion/domAnimation wrappers in ChromaticTextReveal
  and IconSwap — the root LazyMotion in __root.tsx already loads features
  once, so nested wrappers caused redundant feature-loading contexts and
  delayed the header animation
- Expand .gitignore: logs, caches, IDE configs, OS files; allow .env.example
- Harden .npmrc: save-exact, package-lock=false, prefer-workspace-packages,
  strict-peer-dependencies=false, auto-install-peers
- Track .env.example as the committed env template
Replace all remaining motion/react animations with CSS keyframes and
native browser APIs so the hero title no longer waits on the ~252 kB
motion bundle:

- Reveal: IntersectionObserver + animate-reveal-up CSS
- Featured projects marquee: CSS marquee-scroll with --marquee-duration
- Chromatic text reveal: CSS word-enter/word-exit swap
- Icon swap: CSS icon-enter/icon-exit crossfade
- Theme toggle + download stats: usePrefersReducedMotion hook
  (useSyncExternalStore) replaces useReducedMotion
- Remove LazyMotion/domAnimation wrapper from root layout
- Trim ease.ts to EASE_OUT_CSS; drop the motion dependency
…ixes

Blog:
- Admin CRUD: AdminPosts, PostFormDialog, slug auto-generation, confirm dialog
- Public routes: /blog list + /blog/ detail with Markdown rendering
- Server functions with admin gating via getAdminSession
- Posts schema, migration 0004, Drizzle relations
- Slugify utility extracted to src/lib/posts.ts

Optimization:
- listPosts selects only summary columns (no content) via PostSummary type
- createPost/updatePost validate input server-side with valibot schemas
- updatePost guards against empty returning() (Post not found)
- deletePost checks rowCount for honest feedback
- getAdminSessionOrNull eliminates duplicated session checks
- getPostById fetches full post on demand for admin edit flow

Navbar:
- Single source of truth for active state via useMatchRoute (desktop + mobile)
- bg-muted pill replaces dual-mechanism underline + activeProps
- Blog link added to CONTENT_LINKS
- Removed redundant underline indicator

Drizzle:
- Added passkeys to db schema object (fixes better-auth adapter error)

Misc:
- oxlint.config.ts: ignore **/.agents/** (third-party skills)
- MediaQL cache in usePrefersReducedMotion
- ChromaticTextReveal reuses the hook
- carouselProjects hoisted to module level
- Added blog test (slugify)
…mprove commands

- Migrate frontend-design and apple-design skills from .agents/ to .opencode/
- Adapt skill frontmatter to OpenCode conventions; rewrite apple-design README
- Remove .agents/ directory and skills-lock.json
- Fix stale motion/react references in web-design-guidelines skill
- Rewrite clean.md and validate-repo.md for Oxlint/Oxfmt tooling
- Fix test.md and commit.md script references (pnpm check/typecheck)
- Remove broken openagents/check-context-deps command
- Update AGENTS.md: fix motion reference, add OpenCode skills/commands section
- Fix docs/architecture/overview.md stale stack entries
- Add /mods pagination (12 per page) with page state and Prev/Next controls
- Add loading skeletons and initial-null handling to the mods grid
- Extract shared PageHeader, EmptyState, ErrorState, and StatCard components
- Merge Projects into the navbar dropdown; remove /projects route
- Rename Impressum to Legal Notes with real operator details and user-content liability
- Fill legal placeholders (privacy controller, terms governing law, contact email)
- Remove Next.js 'use client' directives from TanStack Start components
- Fix Base UI MenuGroupContext error in the user menu
- Restyle dropdown and select to the flat designbyte theme
- Redesign admin pages to match the settings design language
- Fix loadUsers/loadSessions/loadPosts TDZ runtime errors in admin
- Add shadcn Checkbox and improve the New Post modal UI
- Fix mods tests for the Base UI Select interaction model
- Enable Meilisearch typo tolerance for short queries
…sign review

- Fix 404 links: featured projects and news cards now route to /mods and /blog;
  footer marks unavailable sections as Soon instead of linking to dead routes
- Replace raw <a> with TanStack Link for client-side navigation
- Enforce 44px touch targets: dialog buttons, select triggers, tabs, search,
  and all min-h-10 buttons bumped to min-h-11
- Add ConfirmDialog for passkey removal (was single-click irreversible)
- Add icons to empty states across admin, settings, and blog
- Add name attributes to form inputs for autofill support
- Add focus rings to login/signup inline links and cookie banner policy link
- Align popover elevation: dropdown/select shadow-lg -> ring-1 ring-foreground/10
- Normalize badge text size text-[0.65rem] -> text-xs
- Drawer: duration-450 -> duration-400, use ease-smooth token
- Remove dead code: download-stats-chart.tsx
@coderabbitai

coderabbitai Bot commented Sep 13, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Advanced

Run ID: 791a28d2-77af-4ffa-8a59-972b343cc633

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant