A comprehensive full-stack application for managing personal digital security and data protection
- Overview
- Features
- Tech Stack
- Screenshots
- Installation
- Usage
- API Documentation
- Project Structure
- Contributing
- License
- Author
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.
- π 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
- 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
- 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
- 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
- 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
- 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
- Maven - Build tool
- npm - Package manager
- Git - Version control
- TypeScript - Type checking
- Node.js (v16 or higher)
- Java (v17 or higher)
- Maven (v3.6 or higher)
- Git
-
Clone the repository
git clone https://github.com/Naveenkm07/SecureSuite.git cd SecureSuite -
Install dependencies
# Install frontend dependencies cd frontend npm install # Install backend dependencies (Maven will handle this) cd ../backend mvn clean install
-
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
-
Access the application
- Frontend: http://localhost:3000
- Backend API: http://localhost:8081
- Register a new account or Login with existing credentials
- Set up 2FA for enhanced security (recommended)
- Add your first password or contact
- Explore the dashboard and analytics features
- 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
POST /api/auth/register - User registration
POST /api/auth/login - User login
POST /api/auth/logout - User logout
GET /api/passwords - Get all passwords
POST /api/passwords - Create new password
PUT /api/passwords/:id - Update password
DELETE /api/passwords/:id - Delete password
GET /api/contacts - Get all contacts
POST /api/contacts - Create new contact
PUT /api/contacts/:id - Update contact
DELETE /api/contacts/:id - Delete contact
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
We welcome contributions! Please follow these steps:
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
- Follow the existing code style
- Add tests for new features
- Update documentation as needed
- Ensure all tests pass before submitting
This project is licensed under the MIT License - see the LICENSE file for details.
Naveen Kumar KM
- Institution: New Horizon College of Engineering, Bengaluru
- USN: 1NH24CS409
- GitHub: @Naveenkm07
- Email: kmnaveenkm01@gmail.com
- 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