Commit Graph

7 Commits

Author SHA1 Message Date
xiaomai
6473bdcc15 refactor(ui): adopt Nuxt UI components for homepage and layout
This commit refactors the main layout and homepage to utilize components from the Nuxt UI library, simplifying the
codebase and reducing custom boilerplate.

- The default layout is now built with `UPage`, `UHeader`, `UMain`, and `UFooter`.
- The homepage (`pages/index.vue`) has been updated to use `UPageHero` and `UBlogPosts`.
- The `IndexHero` and `IndexNews` components have been removed as their functionality is now integrated directly into
the index page.
- `Donate`, `Events`, and `HallOfFame` components are now wrapped with `UPageCTA` or `UPageSection`.
2025-10-23 09:16:59 +08:00
xiaomai
e7f2bc2c47 feat(admin): implement initial admin dashboard and member management
This commit introduces the foundational structure for the admin dashboard, focusing on the member management feature.
Key additions include:

- A new page at `/admin/manage/members` to display and manage members.
- An `AddModal` component with a comprehensive form for creating new members, featuring validation with Zod and input
masking.
- A reusable `PhoneInput` component with country code selection, backed by a new `useCountries` composable and a full
country dataset.
- A custom, user-friendly global error page (`error.vue`) to handle application errors gracefully.
- Updated dashboard sidebar navigation to include the new member management section.
- Added recommended VS Code extensions and settings to improve developer experience.
2025-10-22 21:40:30 +08:00
xiaomai
1fedf7094c refactor(admin): simplify entry route to point to dashboard
The `/admin` route now directly serves the dashboard page by adding an alias, removing the need for a separate login page at that path.

- Deletes `pages/admin/index.vue` and the `admin-login` layout.
- Aliases `/admin` to `/admin/dashboard` for a more direct entry point.
- Improves the default layout with a sticky footer.
- Updates VSCode settings for better Tailwind CSS IntelliSense.
2025-10-09 09:22:21 +08:00
xiaomai
6f181d3f22 feat(admin): add initial admin dashboard structure
This commit introduces the foundational structure for the new admin dashboard.

- Utilizes @nuxt/ui to build the dashboard layout, including a collapsible sidebar and navigation.
- Adds initial pages for the dashboard, news, events, and hall of fame management.
- Implements a composable `useDashboardSidebarLinks` for managing sidebar navigation.
- Refactors the default layout by integrating the header and footer directly.
- Swaps the primary and secondary theme colors across the application.
2025-10-08 09:05:14 +08:00
xiaomai
b05faddfc0 feat(seo): implement dynamic page titles
This commit enhances SEO and user experience by setting dynamic page titles for detail pages and updating the global title configuration.

- Event, Hall of Fame, and News detail pages now use the specific item's title as the page title.
- The global `titleTemplate` and default `title` in `nuxt.config.ts` have been updated for better branding.
- These changes ensure each page has a unique, descriptive title, which is beneficial for search engine ranking and browser tab clarity.
2025-10-04 11:03:21 +08:00
xiaomai
09ec61e315 feat(app): introduce Hall of Fame section and refactor UI
This commit adds the '名人堂' (Hall of Fame) feature and removes the Element Plus dependency.

- feat(content): Add Hall of Fame section with a new content collection, homepage component, and detail pages.
- refactor(join-us): Rewrite the 'Join Us' form to remove Element Plus, using native elements and Reka UI. The form is
temporarily disabled.
- feat(ui): Display cover images on News and Events cards.
- chore: Integrate Umami for web analytics.
- fix: Correct minor text issues, including graduation year in the footer.
2025-10-03 16:23:16 +08:00
xiaomai
e93b931288 initial commit 2025-10-01 16:52:52 +08:00