How abhi-singh01/contact-management-app works
Next Gen Contact Manager is a multi-user contact application exposing REST APIs and server-rendered pages. A user’s contact workflow enters through contact endpoints, where services perform ownership-aware CRUD, search, favorites, and CSV import/export before repository persistence; dashboard and natural-language assistant requests are separate result paths. Registration, profile updates, and password changes use the user service, while authentication loads persisted user details. The README documents CSV, search, and authorization capabilities; some controller and security wiring is unsampled, so uncertain links are omitted.
Main entry points: UserRepository.java User queries · ContactRepository.java Contact queries · UserService.java User account service · ContactService.java Contact operations
Components 18
API endpoints
- Contact endpoints
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Controller/ContactController.java - Assistant endpoint
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Controller/ContactAssistantController.java - Dashboard endpoint
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Controller/DashboardController.java - Auth and profile APIs
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Controller/AuthController.java - Registration page flow
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Controller/RegistrationController.java
Application services
- Contact operations
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Service/ContactService.java - Query assistant
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Service/ContactAssistantService.java - Dashboard statistics
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Service/DashboardService.java - User account service
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Service/UserService.java - Exception mapping
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Exception/GlobalExceptionHandler.java
Domain and persistence
- Contact queries
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Repository/ContactRepository.java - User queries
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Repository/UserRepository.java - Contact records
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Model/Contact.java - User records
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Model/MyUser.java - Relational database
Identity and security
- Authorization configuration
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Security/SecurityConfig.java - Authentication lookup
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Service/MyUserDetailsService.java
Other components
- User / API client
Connections 23
- User / API client → Contact endpoints: requests
README.md - User / API client → Assistant endpoint: asks
README.md - User / API client → Dashboard endpoint: requests
README.md - User / API client → Auth and profile APIs: manages account
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Controller/AuthController.java - User / API client → Registration page flow: registers
- Contact endpoints → Contact operations: delegates
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Controller/ContactController.java - Assistant endpoint → Query assistant: delegates
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Controller/ContactAssistantController.java - Dashboard endpoint → Dashboard statistics: delegates
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Controller/DashboardController.java - Auth and profile APIs → User account service: delegates
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Controller/AuthController.java - Registration page flow → User account service: delegates
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Controller/RegistrationController.java - Contact operations → Contact queries: queries and saves
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Service/ContactService.java - Contact operations → User queries: resolves owner
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Service/ContactService.java - Query assistant → Contact queries: loads contacts
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Service/ContactAssistantService.java - Query assistant → User queries: loads user
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Service/ContactAssistantService.java - Dashboard statistics → User account service: loads user
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Service/DashboardService.java - User account service → User queries: reads and saves
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Service/UserService.java - Authentication lookup → User queries: looks up account
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Service/MyUserDetailsService.java - Contact queries → Contact records: persists
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Repository/ContactRepository.java - User queries → User records: persists
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Repository/UserRepository.java - Contact records → User records: belongs to
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Model/Contact.java - Contact queries → Relational database: reads and writes
- User queries → Relational database: reads and writes
- Authorization configuration → Authentication lookup: configures lookup
Next Gen Contact Manager/src/main/java/com/nextgen/contactmanager/Security/SecurityConfig.java