A comprehensive CRUD (Create, Read, Update, Delete) application built with Angular for managing student information. This project demonstrates best practices in Angular development including component architecture, routing, services, and authentication.
- User Authentication (Login/Logout)
- Student Management:
- Add new students
- View student details
- Update student information
- Delete students
- List all students with filtering capabilities
- Responsive Design
- Custom Pipes for data formatting
- Route Guards for authentication
- Directive for student highlighting
- Angular
- TypeScript
- SCSS for styling
- W3.CSS Framework
- Angular Router for navigation
- Angular Services for state management
src/
├── app/
│ ├── components/
│ │ ├── home/
│ │ ├── index/
│ │ ├── login/
│ │ └── student/
│ │ ├── add/
│ │ ├── details/
│ │ └── list/
│ ├── directives/
│ ├── pipes/
│ └── services/
│ ├── auth/
│ ├── config/
│ ├── student/
│ └── user/
└── assets/
- Node.js (version 12.x or higher)
- npm (version 6.x or higher)
-
Clone the repository:
git clone https://github.com/kaiforg-Ai/spring-angular-portfolio-project.git
-
Navigate to the project directory:
cd spring-angular-portfolio-project -
Install dependencies:
npm install
-
Start the development server:
ng serve
-
Open your browser and navigate to
http://localhost:4200
Run ng serve for a dev server. Navigate to http://localhost:4200/. The app will automatically reload if you change any of the source files.
Run ng build to build the project. The build artifacts will be stored in the dist/ directory.
Run ng test to execute the unit tests via Karma.
Run ng e2e to execute the end-to-end tests via Protractor.
- Login system with route guards
- Session management
- Secure routing
- Complete CRUD operations
- Form validation
- Real-time filtering
- Detailed student profiles
- Phone number formatting
- Search filtering
- Student highlighting based on conditions
- Fork the repository
- Create your 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
This project is licensed under the MIT License - see the LICENSE file for details.