- Apply rose-pine dark theme across all pages for darker appearance
- Update Button component with dark mode variants
- Replace basic city select with searchable CitySelect on create team page
- Show Dashboard button in navbar when user is authenticated
- Apply dark mode styling to onboarding, team pages, and user profile
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add loading state check before leader validation to prevent race condition
- Fix useRemoveMember hook to use Supabase directly instead of missing API endpoint
- Leader check now waits for team data to load before showing Access Denied
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add ThemeProvider with system/light/dark mode support and localStorage persistence
- Add ThemeToggle component for pages without sidebar (landing, login, signup)
- Enable class-based dark mode in Tailwind CSS v4 via @custom-variant
- Add dark mode classes to landing page, login, signup, and all dashboard pages
- Keep IMPHNEN logo blue in dark mode, invert Kolosal logo
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add isMember check to only show Quick Actions to team members
- Hide submission status from non-members
- Non-members can only view team info, leader, and member list
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Update teams/[teamId]/layout.tsx to use Sidebar component
- Update users/[userId]/layout.tsx to use Sidebar component
- Now matches dashboard layout with sidebar navigation
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Set consistent h-[42px] height for both search and city filter inputs
- Add 300ms debounce to search to reduce API calls while typing
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Replace browse teams city dropdown with searchable CitySelect component
- Remove "Back to Dashboard" button from team detail page (uses sidebar nav)
- Add cities constant to service library for validation
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add .eq('status', 'pending') filter to useTeamJoinRequests hook
- Add toast notifications for approve/reject actions on members page
- Parse Supabase error messages to show user-friendly error text
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
* feat: enhance team browsing with member count and view team option
* feat: add default banner image for teams without a custom banner
* feat: implement user profile page and user layout component
* feat: improve browse team filtering layout
* feat: limit join request button visibility based on team member count
* feat: enhance user profile and team dashboard layouts for improved responsiveness
* feat: add location, bio, and skills fields to user profile schema and form
* feat: enhance team display and user information layout for better readability
* feat: update join request button visibility logic based on user team membership
* feat: enhance team and user profile layouts with improved text truncation and responsiveness
- Created CitySelect component with real-time filtering
- Supports 516 Indonesian cities with array filtering
- Added search functionality for better UX
- Integrated with react-hook-form in user onboarding
- Includes clear button and auto-close on outside click
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Remove automatic redirect from "/" to login/dashboard
- Allow everyone to view the hackathon landing page
- Users can still click "Daftar Sekarang" to go to login
This fixes the issue where the landing page immediately redirected to login.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Triggering deployment for all apps to deploy the following changes:
- Fixed circular dependency between utils and service libraries
- Added missing auth hooks (usePostVerifyEmail, useGoogleCallback, etc.)
- Moved useAuthStore from utils to service
- All apps now build successfully
Apps to deploy:
- hackathon
- gacha
- dimentorin
- backoffice
- landing
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Moved useAuthStore from utils to service to break circular dependency:
- utils was importing from service (supabase client, types)
- service was importing from utils (useAuthStore)
- Solution: moved useAuthStore and related storage utilities to service
Changes:
- Created libs/service/src/storage/ with cookies.ts and local-storage.ts
- Moved use-auth-store.ts from utils/hooks to service/hooks/auth
- Updated all 20+ files to import useAuthStore from service instead of utils
- Removed useAuthStore export from utils
- Added storage exports to service index
This fixes the build error: "Could not execute command because the task graph has a circular dependency"
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Implemented `getGoogleAuthUrl` and `postGoogleCallback` in auth API.
- Added corresponding hooks `useGoogleAuth` and `useGoogleCallback` for handling Google authentication.
feat(api): enhance API structure with mentors and upload services
- Created `mentors` and `upload` API modules with respective services for managing mentor details and file uploads.
- Added session management utilities to handle authentication tokens in cookies.
feat(users): expand user service with detailed user management
- Enhanced user service to include detailed user information and update capabilities.
- Added hooks for fetching and updating user data.
feat(hooks): introduce hooks for mentors and upload functionalities
- Added hooks for fetching mentor details and updating mentor information.
- Implemented hooks for file upload, avatar upload, and CV upload with validation.
refactor(types): organize and extend type definitions
- Introduced new types for mentors and enhanced existing user types.
- Re-exported user-related types for better accessibility.
chore: update index files to include new services and hooks
- Updated index files to export new services and hooks for mentors and uploads.
* fix: docker
* fix landing
* chore(landing): add outputFileTracingRoot to next config
* ci: add github workflow for landing deployment via ssh and docker compose
* chore: add docker-compose file for landing app build and run
* feat docker
* fix: correct link for Roadmap navigation item
* feat: add feature request and projects voting components
* fix: correct spelling of 'Certificate' in ProjectsVote component
* feat: add Request Feature popup with responsive dialog and drawer components
* feat: enhance Header component with mobile menu animations and improved navigation styling
* refactor: simplify Header component by removing unused scroll handling and improving mobile menu structure
* fix: replace motion span with static span for header underline
* fix: update FeatureRequestCTA text for clarity and adjust page layout margins
* fix: remove DialogDescription from RequestFeaturePopup and update textarea placeholder for clarity
* fix: remove DrawerDescription from RequestFeaturePopup for cleaner UI
* fix: remove unused icon exports from icons
* fix: replace XIcon with LuX in DialogClose for consistency
* fix: remove unused icon export from index for cleaner module structure
* feat: setup openapi libs for landing
* feat: seperate landing layouts
* feat: movee landing providers
* feat: add auth layout
* feat: implement cookie management for access and refresh tokens
* feat: replace Inter font with Bai Jamjuree in layout and add font utility
* feat: add signin
* feat: add Poppins font to the font utility
* feat: expand theme colors in index.css for improved styling options
* feat: update dependencies and enhance button and form components with new variants and context
* feat: move old components to __old__ dir
* feat: add react query support
* feat: hide the footer
* fix: header style
* feat: replace Image component with LogoSimple in Header and update Logo component to accept props
* fix: update label for tutorial stat in hero-stats.json
* feat: implement EventsPage component with event listing and details
* feat: add signup button and page
* feat: add HERO_CONTENT data and integrate into Hero component
* fix: update navigations import to uppercase and add missing Testimoni entry
* feat: implement testimonials display and add submission page
* fix: correct link path for testimonial submission
* feat: add communites component and integrate social links from JSON data
* fix: adjust grid gap in Communities component for better layout
* fix: update font imports in layout components for consistency
* fix: replace text logo with LogoSimple component in Footer and restore Footer in Layout
* feat: add TestimonialSection component and update testimonials data
* fix: update section ID from 'komunitas' to 'community' for consistency
* feat: add CTASection component with interactive elements and background pattern
* fix: update join URL in hero content for consistency
* fix: update text in CTASection for improved emphasis and consistency
* feat: add CommunitySection component and integrate it into the main page
* feat: update Footer component to use dynamic navigation and social links
* feat: implement HeroSection component with dynamic content and animations
* refactor: replace hardcoded testimonials with dynamic data from JSON
* feat: add signup page
* feat: integrate Turnstile captcha verification in signup process
* feat: implement verification page
* feat: add signin link to the signup page
* feat: add "Forgot Password?" link to the signin form
* refactor: clean up unused ThemeProvider code and CSS variables
* feat: add base styles for borders and background to improve UI consistency
* feat: implement forgot password functionality with validation and UI components
* fix: update password validation rules for clarity and consistency
* feat: enable rich colors for Toaster component in layout
* feat: implement reset password functionality with validation and UI components
* feat: implement Turnstile captcha verification for forgot password and signup actions
* refactor: remove console log and enhance error handling in signin and resend OTP actions
* feat: add navigation entries for Roadmap and Artikel sections
* feat: create initial Page component for articles section
* feat: update footer component with additional social media links and icons
* feat: remove all unused components in landing
* chore: add @radix-ui/react-label deps
* feat: wrap VerificationTabs in Suspense
* feat: update .env.example to include TURNSTILE_SECRET_KEY and correct NEXT_PUBLIC_TURNSTILE_SITEKEY