The GitHub pages hosted site can be found here.
This project was generated using Angular CLI version 19.2.0 and has been migrated to use version 21.x.x.
To start a local development server, run:
ng serveOnce the server is running, open your browser and navigate to http://localhost:4200/. The application will automatically reload whenever you modify any of the source files.
Angular CLI includes powerful code scaffolding tools. To generate a new component, run:
ng generate component component-nameFor a complete list of available schematics (such as components, directives, or pipes), run:
ng generate --helpTo build the project run:
ng buildThis will compile your project and store the build artifacts in the dist/ directory. By default, the production build optimizes your application for performance and speed.
To execute unit tests with Jest, use the following command:
npm testFor CI environments, use:
npm run test:ciThis runs tests with code coverage reporting and JUnit output for CI integration.
For end-to-end (e2e) testing, this project uses Cypress. Run the following commands:
npm run cypress:run:e2enpm run cypress:run:componentnpm run cypress:run:accessibilityTests WCAG compliance, keyboard navigation, screen reader support, and color contrast.
npm run cypress:run:performanceTests page load times, Core Web Vitals, bundle size, and runtime performance.
npm run cypress:run:mobileTests mobile layouts, touch interactions, and responsive design across different viewports.
npm run cypress:run:visualCaptures and compares visual snapshots to detect UI changes (requires cypress-image-snapshot plugin).
npm run cypress:openThe project includes comprehensive test coverage for:
- Component logic and templates
- Service methods and state management
- Model classes and data structures
- Code coverage reporting
- User workflows and navigation
- UI interactions and state changes
- Responsive design and mobile support
- Accessibility compliance
- Performance monitoring
- Visual regression detection
- Individual component mounting and rendering
- Template binding and change detection
- User interaction simulation
- Dark mode theming
- Mobile-specific layouts
Tests are automatically run in GitHub Actions with:
- Unit test execution and coverage reporting
- E2E test execution across multiple browsers
- Accessibility and performance validation
- Test result artifacts and summaries
cypress/
├── e2e/
│ ├── spec.cy.ts # Main E2E test suite
│ ├── footer.cy.ts # Footer component tests
│ ├── mobile.cy.ts # Mobile responsiveness tests
│ ├── accessibility.cy.ts # Accessibility compliance tests
│ ├── performance.cy.ts # Performance monitoring tests
│ └── visual-regression.cy.ts # Visual snapshot tests
├── about.cy.ts # About component tests
├── projects.cy.ts # Projects component tests
└── toolbar.cy.ts # Toolbar component tests
For more information on using the Angular CLI, including detailed command references, visit the Angular CLI Overview and Command Reference page.