Skip to content

Naveenkm07/SecureSuite

Repository files navigation

πŸ” SecureSuite - Personal Digital Security Dashboard

A comprehensive full-stack application for managing personal digital security and data protection

React Spring Boot TypeScript Java License

πŸ“‹ Table of Contents

🎯 Overview

SecureSuite is a modern, full-stack personal digital security dashboard that provides comprehensive tools for managing passwords, contacts, secure notes, and data analytics. Built with React frontend and Spring Boot backend, it offers a secure, user-friendly interface for personal data management.

Key Highlights

  • πŸ”’ End-to-end encryption for sensitive data
  • πŸ“± Responsive design for all devices
  • πŸ”„ Real-time synchronization across devices
  • πŸ“Š Analytics dashboard for data insights
  • πŸš€ Offline capability for data access
  • πŸ›‘οΈ JWT-based authentication for security

✨ Features

πŸ” Security Features

  • Password Management: Secure storage and generation of strong passwords
  • Two-Factor Authentication: Enhanced security with 2FA support
  • Encryption: AES-256 encryption for all sensitive data
  • Security Log: Comprehensive audit trail of all activities
  • Secure Notes: Encrypted storage for private information

πŸ“Š Data Management

  • Contact Management: Secure contact information storage
  • Data Analytics: Insights into your security practices
  • Backup & Restore: Automated data backup and recovery
  • Sync Status: Real-time synchronization monitoring
  • Offline Data: Access your data without internet connection

🎨 User Experience

  • Modern UI: Clean, intuitive Material-UI design
  • Responsive Design: Works seamlessly on desktop, tablet, and mobile
  • Dark/Light Theme: Customizable appearance
  • Real-time Updates: Live data synchronization
  • Error Handling: Comprehensive error management

πŸ› οΈ Tech Stack

Frontend

  • React 18.2.0 - Modern UI framework
  • TypeScript 4.9.5 - Type-safe JavaScript
  • Material-UI 5.17.1 - Component library
  • React Router 6.30.0 - Client-side routing
  • Formik 2.4.6 - Form management
  • Recharts 2.15.3 - Data visualization
  • Crypto-JS 4.2.0 - Client-side encryption

Backend

  • Spring Boot 3.2.3 - Java framework
  • Spring Security - Authentication & authorization
  • Spring Data JPA - Database operations
  • H2 Database - In-memory database
  • JWT - Token-based authentication
  • Lombok - Boilerplate code reduction

Development Tools

  • Maven - Build tool
  • npm - Package manager
  • Git - Version control
  • TypeScript - Type checking

πŸ“Έ Screenshots

Dashboard Overview

Dashboard

Password Management

Passwords

Security Analytics

Analytics

πŸš€ Installation

Prerequisites

  • Node.js (v16 or higher)
  • Java (v17 or higher)
  • Maven (v3.6 or higher)
  • Git

Quick Start

  1. Clone the repository

    git clone https://github.com/Naveenkm07/SecureSuite.git
    cd SecureSuite
  2. Install dependencies

    # Install frontend dependencies
    cd frontend
    npm install
    
    # Install backend dependencies (Maven will handle this)
    cd ../backend
    mvn clean install
  3. Run the application

    # Option 1: Use the provided batch script (Windows)
    .\start-all.bat
    
    # Option 2: Run manually
    # Terminal 1 - Backend
    cd backend
    mvn spring-boot:run
    
    # Terminal 2 - Frontend
    cd frontend
    npm start
  4. Access the application

πŸ“– Usage

Getting Started

  1. Register a new account or Login with existing credentials
  2. Set up 2FA for enhanced security (recommended)
  3. Add your first password or contact
  4. Explore the dashboard and analytics features

Key Features Usage

  • Passwords: Add, edit, and generate secure passwords
  • Contacts: Store and manage contact information securely
  • Secure Notes: Create encrypted notes for sensitive information
  • Analytics: Monitor your security practices and data usage
  • Backup: Schedule automatic backups of your data

πŸ”Œ API Documentation

Authentication Endpoints

POST /api/auth/register - User registration
POST /api/auth/login    - User login
POST /api/auth/logout   - User logout

Password Management

GET    /api/passwords     - Get all passwords
POST   /api/passwords     - Create new password
PUT    /api/passwords/:id - Update password
DELETE /api/passwords/:id - Delete password

Contact Management

GET    /api/contacts     - Get all contacts
POST   /api/contacts     - Create new contact
PUT    /api/contacts/:id - Update contact
DELETE /api/contacts/:id - Delete contact

πŸ“ Project Structure

SecureSuite/
β”œβ”€β”€ frontend/                 # React frontend application
β”‚   β”œβ”€β”€ public/              # Static files
β”‚   β”‚   β”œβ”€β”€ components/      # React components
β”‚   β”‚   β”œβ”€β”€ services/        # API services
β”‚   β”‚   β”œβ”€β”€ contexts/        # React contexts
β”‚   β”‚   └── types/           # TypeScript types
β”‚   └── package.json
β”œβ”€β”€ backend/                  # Spring Boot backend application
β”‚   β”œβ”€β”€ src/main/java/
β”‚   β”‚   β”œβ”€β”€ controller/      # REST controllers
β”‚   β”‚   β”œβ”€β”€ service/         # Business logic
β”‚   β”‚   β”œβ”€β”€ repository/      # Data access layer
β”‚   β”‚   β”œβ”€β”€ model/           # Entity models
β”‚   β”‚   └── security/        # Security configuration
β”‚   └── pom.xml
β”œβ”€β”€ docs/                     # Documentation
β”œβ”€β”€ start-all.bat            # Windows startup script
└── README.md

🀝 Contributing

We welcome contributions! Please follow these steps:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Development Guidelines

  • Follow the existing code style
  • Add tests for new features
  • Update documentation as needed
  • Ensure all tests pass before submitting

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ‘¨β€πŸ’» Author

Naveen Kumar KM


πŸ™ Acknowledgments

  • New Horizon College of Engineering for academic support
  • Spring Boot and React communities for excellent documentation
  • Material-UI for the beautiful component library
  • Open Source Community for inspiration and tools

⭐ Star this repository if you find it helpful!

GitHub stars GitHub forks GitHub issues

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors