Welcome to Pixel Positions Job Application Site! An advanced Job Application platform built with Laravel. powered by modern front-end tools, and enhanced for optimal user experience. This platform streamlines the process of job posting, searching, and application management. Allows employers to post job openings and users to explore various job opportunities. Built with Laravel, this site offers a user-friendly interface and seamless user experience for job seekers and employers alike.
- Job Listings 📝: Employers can post job vacancies with comprehensive details like title, description, salary, and location.
- Tagging System 🏷️: Tags categorize job listings by skills or industries, enabling easy filtering.
- User Authentication 🔐: Role-based access for applicants and employers.
- Responsive Design 📱: Fully responsive across devices for optimal user experience.
- Image and Logo Management 🖼️: Upload, store, and manage company logos and cleanup on
migrate:fresh
. - Search and Filter 🔍: Powerful search and filter options for job seekers.
| Dependency | Description | Version |
|---------------------------|----------------------------|----------|
| Laravel | PHP framework | ^11.9 |
| Tailwind CSS | Utility-first CSS framework| ^3.4.14 |
| Font Awesome | Icon library | ^6.6.0 |
| Axios | HTTP client for JS | ^1.7.4 |
| Composer | PHP dependency manager | ^2.0 |
| Vite | Front-end build tool | ^5.0 |
Follow these steps to set up the project locally:
-
Clone the Repository:
git clone https://github.com/ahmedalsanadi/Pixel-Job-App-Site.git cd Pixel-Job-App-Site
-
Install Dependencies:
- Composer
composer install
- npm
npm install
- Composer
-
Environment Configuration:
-
Copy
.env.example
to.env
and configure your database:cp .env.example .env
-
Generate a key:
php artisan key:generate
-
-
Database Setup:
-
Run migrations with seeders:
php artisan migrate:fresh --seed
-
-
Serve the Application:
-
Development:
npm run dev php artisan serve
-
Production:
npm run build
-
- app/Models: Contains Eloquent models like
User
,Employer
,Job
, andTag
. - app/Http/Controllers: Application controllers handling the app logic.
- database/migrations: Database structure definition files.
- database/factories: Factory files to generate dummy data.
- public/: Public assets, including uploaded company logos.
- User
↔️ Employer: One-to-One relationship. - Employer
↔️ Job: One-to-Many relationship. - Job
↔️ Tag: Many-to-Many relationship.
Each relationship is defined within the models, creating a robust and scalable data structure.
This project includes several factories and seeders to quickly populate the database for testing:
- EmployerFactory: Generates employers with logo uploads.
- JobSeeder: Populates job listings linked with employers and tags.
- TagSeeder: Creates skill-related tags for jobs.
To seed the database:
php artisan db:seed
-
Employers:
- Register or log in.
- Post a job listing with all necessary details.
- Add tags for easy filtering and skills search.
-
Job Seekers:
- Browse jobs, or filter by location, tags, or keywords.
- View job details and follow application instructions.
Want to improve this project? Contributions are always welcome!
- Fork the repository.
- Create a new feature branch (
git checkout -b feature/AmazingFeature
). - Commit your changes (
git commit -m 'Add 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.
Thank you for exploring the Job Application Site! We hope it provides a valuable resource.
⭐ Star this repo if you find it helpful!