Skip to content

tatimohammed/Contact-Management-Web-App

Repository files navigation

Contact-Management-Web-App

Screenshot from 2023-06-07 03-04-18

App Description

A Contact Management App is a software application that allows users to organize and store contact information, such as names, phone numbers, email addresses, and other details, in a digital format.

It is a useful tool for anyone who needs to manage a large number of contacts and stay on top of their communication and networking activities.

Features

  • NLP, The search is optimized using the NLP Algorithm (Min Edit Distance).
  • CRUD, you can add, delete, update, restore and manage your contacts & groups.
  • LOGGING TRACKER, you can track your daily logging displayed as Char using Char.js.
  • Multi-User, The app support multi user feature by creating user account and manage your contacts.
  • Security, As this is Spring Boot Application we have used Spring Security to manage the users.

App Design

  • This App designed using CSS, HTML, BootStrap only.
  • The web pages are implemented using Thymeleaf.

Repository Architecture

.
├── mvnw
├── mvnw.cmd
├── pom.xml
├── README.md
├── src
│   ├── main
│   │   ├── java
│   │   │   └── com
│   │   │       └── app
│   │   │           └── ContactManagement
│   │   │               ├── config
│   │   │               │   └── SecurityConfig.java
│   │   │               ├── ContactManagementApplication.java
│   │   │               ├── controller
│   │   │               │   ├── Authentications.java
│   │   │               │   ├── ContactController.java
│   │   │               │   ├── GroupController.java
│   │   │               │   ├── Navigator.java
│   │   │               │   ├── Signup.java
│   │   │               │   └── TrashController.java
│   │   │               ├── model
│   │   │               │   ├── ContactGroup.java
│   │   │               │   ├── Contact.java
│   │   │               │   ├── Groupe.java
│   │   │               │   ├── LoginCounter.java
│   │   │               │   ├── Trash.java
│   │   │               │   └── User.java
│   │   │               ├── repository
│   │   │               │   ├── ContactGroupRepository.java
│   │   │               │   ├── ContactRepository.java
│   │   │               │   ├── GroupRepository.java
│   │   │               │   ├── LoginCounterRepository.java
│   │   │               │   ├── TrashRepository.java
│   │   │               │   └── UserRepository.java
│   │   │               ├── service
│   │   │               │   ├── ContactServiceImpl.java
│   │   │               │   ├── ContactService.java
│   │   │               │   ├── GroupServiceImpl.java
│   │   │               │   ├── GroupService.java
│   │   │               │   ├── MyUserDetails.java
│   │   │               │   ├── MyUserDetailsService.java
│   │   │               │   ├── UserServiceImpl.java
│   │   │               │   └── UserService.java
│   │   │               ├── ServletInitializer.java
│   │   │               └── utils
│   │   │                   ├── AddContactToGroup.java
│   │   │                   ├── DeleteGroup.java
│   │   │                   └── NLP.java
│   │   ├── resources
│   │   │   ├── application.properties
│   │   │   ├── static
│   │   │   │   ├── css
│   │   │   │   │   ├── addContactStyle.css
│   │   │   │   │   ├── deleteContactStyle.css
│   │   │   │   │   ├── groupsStyle.css
│   │   │   │   │   ├── homeCss.css
│   │   │   │   │   ├── searchContactStyle.css
│   │   │   │   │   ├── style.css
│   │   │   │   │   ├── styles.css
│   │   │   │   │   ├── updateContactStyle.css
│   │   │   │   │   └── welcomeStyle.css
│   │   │   │   ├── js
│   │   │   │   │   └── scripts.js
│   │   │   │   └── rsc
│   │   │   │       ├── bg-form.jpg
│   │   │   │       ├── bg.jpg
│   │   │   │       └── favicon.ico
│   │   │   └── templates
│   │   │       ├── addContactPage.html
│   │   │       ├── deleteContactPage.html
│   │   │       ├── groupsPage.html
│   │   │       ├── homePage.html
│   │   │       ├── loginPage.html
│   │   │       ├── searchContactPage.html
│   │   │       ├── signupPage.html
│   │   │       ├── updateContactPage.html
│   │   │       └── welcomePage.html
│   │   └── webapp
│   └── test
│       └── java
│           └── com
│               └── app
│                   └── ContactManagement
│                       └── ContactManagementApplicationTests.java
└── target
    ├── **

50 directories, 119 files

Suggestions

  • We can make the app flexible using React as front-end and Spring Boot RESTful API as backend.

Contact Me