Smart Contact Manager is a web application designed to manage contacts efficiently. It combines robust backend functionality with a user-friendly frontend to offer a seamless contact management experience.
- Secure User Authentication:
- Self-provider login and sign-up.
- OAuth 2.0 support with Google and GitHub.
- Contact Management:
- Store and manage contacts in the cloud.
- Fields include name, email, phone number, and social links (LinkedIn, website).
- Profile Management:
- Default profile pictures for self-provider sign-ups.
- Google profile picture integration.
- Cloudinary Integration:
- Efficient media storage for user-uploaded images.
- Customizable User Experience:
- Clean, responsive UI using Tailwind CSS and Flowbite.
- Profile page showcasing user details.
- Java
- Spring Boot
- Hibernate
- JPA
- MySQL
- SQL
- HTML
- CSS
- JavaScript
- Tailwind CSS
- Flowbite
- Thymeleaf
- Cloudinary (for cloud storage)
- MySQL Workbench (local database management)
- Java 11 or later
- MySQL Workbench
- Maven
- A Cloudinary account
- Git
-
Clone the repository :
git clone https://github.com/your-username/Smart-Contact-Manager.git cd Smart-Contact-Manager
-
Configure MySQL Workbench :
- Create a database named smart_contact_manager or scm or scm2.0 or anything f your choice.
- Update
application.properties
with your MySQL credentials.
spring.datasource.url=jdbc:mysql://localhost:3306/database_name spring.datasource.username=your_username spring.datasource.password=your_password
-
Configure Cloudinary :
- Add your Cloudinary credentials to
applications.properties
:
cloudinary.cloud_name=your_cloud_name cloudinary.api_key=your_api_key cloudinary.api_secret=your_api_secret
- Add your Cloudinary credentials to
-
Build the project :
mvn clean install
-
Run the application :
mvn spring-boot:run
-
Access the application at http://localhost:8081