Skip to content

Madkhix/applicant_tracking_system

Repository files navigation

Applicant Tracking System

Laravel Logo

Build Status Total Downloads Latest Stable Version License

About

This is a comprehensive Applicant Tracking System (ATS) built with the Laravel framework. The system is designed to streamline the recruitment process by managing job applications, candidate information, interviews, and hiring workflows.

Features

  • User Management: Role-based access control with Spatie Laravel Permission
  • Application Tracking: Complete applicant lifecycle management
  • Job Posting: Create and manage job openings
  • Resume Management: Upload and manage candidate documents
  • Interview Scheduling: Schedule and track interview sessions
  • Activity Logging: Track all system activities with Spatie Activity Log
  • PDF Generation: Generate reports and documents with DOMPDF
  • Excel Export: Import/export data with Maatwebsite Excel
  • QR Code Generation: Generate QR codes for applications
  • SMS Notifications: Send SMS notifications to candidates
  • Avatar Generation: Automatic avatar generation for users
  • reCAPTCHA: Bot protection for forms
  • Toastr Notifications: User-friendly notification system

Requirements

  • PHP: ^8.1
  • Composer: Latest version
  • Node.js: Latest LTS version
  • NPM: Latest version
  • Database: MySQL 5.7+ or MariaDB 10.3+
  • Web Server: Apache, Nginx, or Laravel Valet

Installation

1. Clone the Repository

git clone <repository-url>
cd applicant_tracking_system

2. Install Dependencies

Install PHP dependencies:

composer install

Install Node.js dependencies:

npm install

3. Environment Configuration

Copy the environment file:

cp .env.example .env

Generate application key:

php artisan key:generate

4. Database Setup

Configure your database credentials in the .env file:

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=applicant_tracking_system
DB_USERNAME=your_database_username
DB_PASSWORD=your_database_password

Run migrations and seeders:

php artisan migrate
php artisan db:seed

5. Additional Configuration

Configure mail settings for notifications:

MAIL_MAILER=smtp
MAIL_HOST=your_mail_host
MAIL_PORT=587
MAIL_USERNAME=your_mail_username
MAIL_PASSWORD=your_mail_password
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS="your-email@example.com"
MAIL_FROM_NAME="${APP_NAME}"

Configure reCAPTCHA (optional):

RECAPTCHA_SITE_KEY=your_site_key
RECAPTCHA_SECRET_KEY=your_secret_key

6. Build Assets

Compile frontend assets:

npm run build

7. Start the Application

php artisan serve

Visit http://localhost:8000 in your browser.

Directory Structure

applicant_tracking_system/
├── app/                 # Application core files
├── bootstrap/           # Bootstrap files
├── config/              # Configuration files
├── database/            # Database migrations and seeders
├── public/              # Public assets and entry point
├── resources/           # Views, CSS, and JavaScript files
├── routes/              # Application routes
├── storage/             # Application storage
├── tests/               # Test files
└── vendor/              # Composer dependencies

Key Packages Used

Usage

Admin Panel

  1. Access the admin panel at /admin
  2. Login with default credentials (check seeder files)
  3. Manage users, job postings, and applications

Application Process

  1. Candidates can view job openings
  2. Submit applications with resumes
  3. Track application status
  4. Schedule interviews
  5. Receive notifications

Testing

Run the test suite:

php artisan test

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Push to the branch
  5. Create a Pull Request

Security

If you discover any security related issues, please email security@example.com instead of using the issue tracker.

License

This project is open-sourced software licensed under the MIT license.

Support

For support and questions, please open an issue in the GitHub repository.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors