The Online Job Application Portal is a modern Angular application that enables users to browse available job openings and submit applications through a guided, user-friendly process.
The application includes:
- A landing page displaying current job vacancies.
- A multi-step application form built with Angular Reactive Forms.
- Comprehensive client-side form validation with meaningful validation messages.
- A file upload feature for submitting application documents such as a résumé and cover letter.
- A progress indicator that guides users through each step of the application process.
- A responsive and accessible user interface designed for both desktop and mobile devices.
The project demonstrates modern Angular development practices, including reusable standalone components, Reactive Forms, routing, service-based architecture, and clean separation of concerns.
T## Features
- Angular 22
- Standalone Components
- REST API integration
- Environment-based configuration
- Responsive user interface
- Unit tests with Vitest
- Node.js 20+
- npm
- Angular CLI
Clone the repository:
git clone https://github.com/romkaras2-a11y/app-portal.git
cd app-quizInstall dependencies:
npm installThe project uses Angular environments.
src/environments/environment.dev.ts
Example:
export const environment = {
production: false,
apiUrl: 'http://localhost:4200/job-api/api/job-board-api/'
};src/environments/environment.prod.ts
Example:
export const environment = {
production: true,
apiUrl: 'https://www.arbeitnow.com/api/job-board-api/?tag=PHP,javascript,frontend,munich&limit=20&page=1'
};The application should access the backend using:
environment.apiUrlinstead of hardcoded URLs.
Start the development server:
ng serveOpen:
http://localhost:4200
If you use a local backend, you can configure a proxy (proxy.conf.json) and use relative API paths during development.
Example:
{
"/api": {
"target": "http://localhost:8080",
"secure": false,
"changeOrigin": true
}
}Run Angular with:
ng serve --proxy-config proxy.conf.jsonDevelopment build:
ng buildProduction build:
ng build --configuration productionRun unit tests:
ng testsrc/
├── app/
├── environments/
│ ├── environment.dev.ts
│ └── environment.prod.ts
├── assets/
└── styles/
MIT License - Freie Nutzung für private und kommerzielle Zwecke.
Roman Karas