This is an Angular-based web application for managing passwords. The application allows users to generate, view, edit, and delete passwords for various websites.
- Technologies Used
- Project Structure
- Component Overview
- Backend Integration
- Setup and Installation
- Development
-
Frontend:
- Angular 17.2.0 (Standalone Components Architecture)
- Bootstrap 5.3.3 for styling
- TypeScript 5.3.2
-
Backend:
- PHP REST API endpoints
The project follows a component-based architecture with standalone Angular components:
src/
├── app/
│ ├── navbar/ # Navigation component
│ ├── password-creator/ # Password generation component
│ ├── password-list/ # List of saved passwords
│ ├── password-dialog/ # Modal for viewing/editing password details
│ ├── loginData.ts # Data model for login information
│ └── app.component.* # Root component files
├── assets/
└── styles.css # Global styles (includes Bootstrap)
Root component that initializes the application and manages the component hierarchy.
Simple navigation bar displaying the application title.
Allows users to:
- Select password strength (easy, medium, difficult)
- Enter website name and login information
- Generate and save new passwords
- Reset the form
Displays a table of saved passwords with:
- Website names
- Action buttons to view details
- Empty state handling when no passwords exist
Modal dialog that:
- Displays password details
- Provides copy-to-clipboard functionality
- Allows editing existing passwords
- Supports password deletion
- Uses Bootstrap's modal component
The application communicates with a PHP backend through REST endpoints:
getAllPasswords.php: Retrieves the list of stored passwordspassword_generator.php: Generates and stores new passwordsupdatePassword.php: Updates existing password recordsdeletePassword.php: Removes password entries