Changelog
What's new.
Every improvement to the platform, as it ships.
· kamo-login
Disable all interactive elements during successful login redirect
- Added redirecting state to track when login succeeds and redirect is in progress - Disabled username and password input fields when redirecting - Disabled Continue, Back, and Sign In buttons when redirecting - Disabled external auth provider buttons (Google, Microsoft, Apple, etc.) when redirecting - Disabled Remember Me checkbox when redirecting - Disabled all links (Forgot Password, Register) with pointer-events and opacity when redirecting - Disabled password visibility toggle icon when redirecting Prevents user interaction while 'Login successful! Redirecting...' message is shown.
· kamo-login
Add re*** configuration to environment setup
- Added NEXT_PUBLIC_RE***_SITE_KEY to k8s ConfigMaps - Added NEXT_PUBLIC_RE***_ATTRIB_MODE to ConfigMaps (badge mode) - Updated README with environment setup instructions - Added section for re*** configuration with placeholder key - Added API service URL configuration examples IMPORTANT: Replace '6LfYourSiteKeyHere' with actual re*** site key from: **************** For local dev, create .env.local with: ****************
· InitializerService
Add localhost domain support in DataLoader
- Added localhost and localhost:3000 domains for local development - Improved comments explaining subdomain concatenation behavior - Works with updated OrganizationRepository that handles parent-child domain concatenation
· InitializerService
Add external auth provider initialization in DataLoader
- Added ExternalAuthProviderService dependency injection - Created addExternalAuthProviders() helper method to configure providers - Populated external auth providers for each organization: * KamoCRM: Google, Microsoft, Apple * KamoClub: Google, Microsoft, Apple * Ebonix: Steam, Roblox, Xbox (gaming/kids platforms) * TheShortTermRent: Google, Microsoft, Apple - Commented out old IdentityProviderConfigHelper implementation - Providers are ordered by display priority Initial commit of KamoInitializerService with ExternalAuthProvider support.
· SecurityService
Add GET /api/security/providers endpoint
- Added endpoint to return enabled external auth providers for an organization - Determines organization from request hostname (X-Forwarded-Host header) - Queries ExternalAuthProvider entities via ExternalAuthProviderService - Converts IdentityProviderType enum to Spring Security registration IDs - Maps MICROSOFT -> 'azure' per Spring Security convention - Returns ordered list of provider IDs for login page to display buttons Integrates with new ExternalAuthProvider system from kamo-shared-library.
· kamo-shared-library
Add ExternalAuthProvider system for dynamic login button configuration
- Created ExternalAuthProvider entity with JPA/Hibernate annotations - Added ExternalAuthProviderRepository with queries for provider management - Implemented ExternalAuthProviderService for business logic - Created ExternalAuthProviderDTO for data transfer (excludes credentials) - Updated Organization entity with OneToMany relationship to external auth providers - Added comprehensive documentation in **************** This enables organizations to configure which external authentication provider buttons (Google, Apple, Xbox, Steam, etc.) appear on their login pages.
· kamo-login
Disable login form after successful authentication to prevent duplicate submissions
· kamo-internal
Show departments in member list even when empty with 'No members' message
· SecurityService
Add MemberController with /by-department endpoint to fetch org members grouped by department with OTK auth
· kamo-internal
Implement member list API integration - fetch members by department from SecurityService with real data
· kamo-internal
Add intro animation to OTK login flow in kamo-internal matching kamo-login style
· kamo-login
Add elegant intro animation to login page with org logo, themed gradient, and loading spinner
· kamo-internal
Redesign network/create page to use 100% width layout with optimized sidebar/content ratio
· kamo-internal
Use full organization logo (with text) instead of logo-only on validate and logout screens
· kamo-internal
Redesign logout page with modern themed UI - use org colors, animated logo, and elegant loading spinner
· kamo-internal
Auto-redirect to /logout on 401 authentication errors for network page and OTK generation
· kamo-internal
Add professional Material-UI confirmation dialog for unsubscribe action with warning message
· kamo-internal
Redesign network page - highlight current org separately with premium styling, show other orgs in grid below
· kamo-internal
Replace Open/Switch buttons with Enter/Unsubscribe - Enter generates OTK and opens org domain in new window
· SecurityService
Add OTK authentication support to OrganizationController /my-networks endpoint for API proxy integration
· kamo-internal
Add API proxy route for /my-networks endpoint to connect network page with SecurityService
· kamo-internal
Implement My Network page with real backend integration - Created app/types/network.ts with NetworkOrganization interface - Rewrote app/network/page.tsx to fetch from /api/security/org/my-networks - Displays all organizations user is a member of with role badges - Shows organization logos using ThemeLogo component with domain-based paths - Material-UI design matching site theme (gradient header, cards) - Search functionality across title, description, alias, type fields - Owner/Member role badge...
· SecurityService
Add my-networks endpoint to OrganizationController - Added GET /api/security/org/my-networks endpoint - Returns all organizations the authenticated user is a member of - Includes role (owner/member), member details, and domain info - Fetches data from *** session via KSessionService - Uses MemberRepository.findByUser() to get all memberships - Filters for active members only - Returns organization title, alias, type, yearEst, domains - Includes member-specific data: memberId, usernameAlias, me...
· kamo-shared-library
Add description field to Organization entity - Added DESCRIPTION column (varchar(500)) with utf8mb4 collation - Supports storing organization descriptions for network display - Requires database schema update via KamoInitializer
· kamo-internal
Add My Network button to top navigation - Added new My Network button next to My Account - Links to /network page - Uses PeopleAltIcon for visual consistency - Same styling as My Account and Logout buttons - Tooltip: View and manage your network connections - Positioned between My Account and Logout
· kamo-internal
Make NavPri logo clickable to navigate to debug dashboard - Added onClick handler to logo box that navigates to home page (/) - Added coder: pointer to indicate clickability - Enhanced hover effect with brighter gradient - Logo now serves as quick access to Session Debug Dashboard
· kamo-internal
Completely redesign Session Debug Dashboard with professional metrics UI - Added 6 color-coded metric cards at top (Session, Latency, Memory, Load, Storage, ***) - Real-time token countdown with visual progress bar and color-coded warnings - Interactive cookie list with copy-to-clipboard buttons - Highlighted *** cookie with green background - Smart grid layout maximizing space (lg: 4/8 split) - Performance metrics: TTI, DOM loaded, memory usage - Connection latency tracking with color-coded...
· kamo-internal
Modernize Session Debug Dashboard with full-screen Material-UI design - Redesigned with modern Material-UI components and gradients - Full-screen layout with purple gradient background - Added API health checks with response time tracking - Added browser storage statistics (localStorage/sessionStorage) - Enhanced cookie display with expandable accordions - Added environment details section - Improved visual hierarchy with cards and icons - Better organization with responsive grid layout - Added ...
· kamo-internal
Clicking on primary nav sidebar now closes open panels - Added onClick/onTouchEnd handlers to NavPri to set activePanel to null - Added stopPropagation to NavItemWithPanel to prevent closing when clicking items - Improves UX by allowing sidebar click to dismiss panels
· kamo-internal
Add click-outside detection to slide-out panels - Added semi-transparent backdrop overlay to NavPriPanel, NavTopPanel, and ChatSideBar - Click or touch outside panels now closes them - Fixed z-index conflicts to ensure backdrops display above NavTop - Improved UX with AnimatePresence for smooth backdrop transitions

Your universe is waiting.
Start free in minutes. Add products whenever you are ready — no migration, no new logins.
Free forever — no credit card required