zm-careers-lib
v2.4.5
Published
An Angular library for building career sites and job portals with comprehensive job search, application, and management capabilities.
Downloads
819
Readme
ZM Career Sites Library (zm-careers-lib)
An Angular library for building career sites and job portals with comprehensive job search, application, and management capabilities.
Overview
The ZM Career Sites Library provides a complete set of components and services for building career sites and job portals. It includes features for job searching, filtering, application submission, resume parsing, and more. This library is designed to integrate seamlessly with backend job management systems.
Features
Job Search & Discovery
- Advanced search functionality with keyword, location, and filter options
- Faceted search with multiple filter options
- Elasticsearch integration
- Job recommendations based on user profiles
- "Find Your Spot" guided job discovery
Job Application
- Comprehensive job application forms
- Resume upload and parsing
- Custom application fields
- Job-specific questions
- Application confirmation
UI Components
- Responsive job listings
- Job detail views
- Pagination
- Filter chips
- Loading indicators
Integration
- API endpoints for job data
- Tenant management
- reCAPTCHA integration
- File upload configuration
Installation
npm install zm-careers-libRequirements
This library requires the following peer dependencies:
"peerDependencies": {
"@angular/common": "^15.1.0",
"@angular/core": "^15.1.0",
"bootstrap": "^5.3.0-alpha3",
"ng-recaptcha": "^11.0.0",
"ngx-mat-select-search": "^7.0.5"
}Usage
Module Import
Import the ZmCareerSitesLibModule in your application module:
import { ZmCareerSitesLibModule } from 'zm-careers-lib';
@NgModule({
imports: [
ZmCareerSitesLibModule,
// other imports
],
// ...
})
export class AppModule { }Components
The library provides the following components:
SearchComponent- Job search formJobsListComponent- List of job postingsJobsListEsComponent- Elasticsearch-based job listingJobComponent- Individual job cardFacetsComponent- Search facets/filtersPaginationComponent- Pagination controlsFindYourSpotComponent- Guided job discoveryRecommendedJobsComponent- Job recommendationsUploadResumeComponent- Resume uploadJobApplyComponent- Job application formJobViewComponent- Job details viewApplyConfirmationComponent- Application confirmationJobRecommendationComponent- Job recommendationsFilterChipsComponent- Selected filter displayInitialComponent- Initial landing componentCustomApplyComponent- Custom application form
Example
Basic job search and listing:
<zm-search></zm-search>
<zm-filter-chips></zm-filter-chips>
<zm-facets></zm-facets>
<zm-jobs-list></zm-jobs-list>
<zm-pagination></zm-pagination>Job application flow:
<zm-job-view></zm-job-view>
<zm-job-apply></zm-job-apply>
<zm-apply-confirmation></zm-apply-confirmation>Services
The library provides several services:
EndpointsService- API endpoints for job dataCommonService- Utility functionsDataStoreService- State managementServerApiService- Server API configuration
Configuration
Configure the API endpoints in your application:
import { ServerApiService } from 'zm-careers-lib';
// In your app initialization
constructor(private serverApi: ServerApiService) {
this.serverApi.API_LIST.serverHostUrl = 'https://your-api-endpoint.com';
this.serverApi.API_LIST.tenantApiUrl = 'https://your-tenant-api.com';
}Building the Library
ng build zm-career-sites-libPublishing
cd dist/zm-career-sites-lib
npm publishDevelopment
This project was generated with Angular CLI version 15.1.5.
Development server
Run ng serve for a dev server. Navigate to http://localhost:4200/.
Build
Run ng build to build the project. The build artifacts will be stored in the dist/ directory.
Running unit tests
Run ng test to execute the unit tests via Karma.
License
Proprietary - All Rights Reserved
Support
For issues and feature requests, please contact the development team.
Technical Documentation Summary
Project Structure
- Angular Library: Built with Angular 15.1.0
- Published Package: Available as
zm-careers-libon npm (currently at version 1.9.0) - Components: 16+ specialized components for job search and application
- Services: API endpoints, data management, and utility services
Key Components
Search Components
- Search forms with keyword and location filters
- Faceted search with multiple filter options
- Filter chips for selected criteria
Job Listing Components
- Standard and Elasticsearch-based job listings
- Individual job cards with details
- Pagination for result navigation
Job Application Components
- Resume upload with parsing
- Custom application forms
- Job-specific questions
- Application confirmation
Job Discovery Components
- "Find Your Spot" guided job discovery
- Job recommendations based on profiles
Services
EndpointsService
- API endpoints for job search, application, and data retrieval
- Tenant management integration
- reCAPTCHA integration
DataStoreService
- State management for application data
- Caching and data persistence
CommonService
- Utility functions for data transformation
- Form data handling
ServerApiService
- Server API configuration
- API endpoint management
Integration Points
- Backend job management systems
- Tenant management systems
- reCAPTCHA for form security
- File upload and parsing services
