A modern, bilingual (Arabic/English) job marketplace connecting employers and job seekers.
π Live Demo: https://mohammedzom.online
Shaghalni is the main user-facing application for the Shaghalni Job Platform. It provides a seamless experience for job seekers to find listings, build their profiles, and submit job applications, while also incorporating AI to analyze resumes.
This project delivers a premium "Cosmic Dark" UI experience, ensuring responsive and highly polished user interactions.
Backend: Fully developed by @mohammedzom
Frontend / UI: Designed with the assistance of AI (Claude by Anthropic / Gemini)
You can test the live application using the following seeded account. This account provides access to explore the job seeker features, including profile management, AI resume parsing, and job applications.
- URL: https://mohammedzom.online
- Email:
test@job.com - Password:
12345678@
(Note: The database is periodically reset. Feel free to register a new account to test the full onboarding process).
- Comprehensive user profiles.
- Integrated Resume Parsing and AI Analysis (extracting skills, education, and experience dynamically).
- Premium resume view interface inline with modern standards.
- Browse and filter job vacancies dynamically.
- Detailed job display pages.
- Job application tracking and management for job seekers.
- Full English (LTR) and Arabic (RTL) support.
- Localization of UI strings.
- RTL layout flips automatically.
- Cosmic Dark theme tailored for a high-end experience.
- Responsive mobile-first layouts.
- Dynamic interactions, toast notifications, and modals using Alpine.js and Tailwind CSS.
| Layer | Technology |
|---|---|
| Language | PHP 8.5 |
| Framework | Laravel 13 |
| Frontend CSS | Tailwind CSS v4 |
| Interactivity | Alpine.js v3 |
| Templating | Blade |
| Database | MySQL / SQLite |
| Build Tool | Vite |
This application is part of a broader ecosystem. To maintain consistency, Eloquent Models are shared between the main job platform and the backoffice dashboard via a local package.
All three projects should ideally be placed in the same parent directory to correctly resolve the local composer path for the shared library.
| Project | Link | Role |
|---|---|---|
| π Job Platform (User-Facing) | mohammedzom/job-app | This repository (Main application for job seekers) |
| π’ Backoffice Dashboard | mohammedzom/job-backoffice | Administration & Company Dashboard |
| π¦ Shared Models Library | mohammedzom/job-shared | Local library containing shared Eloquent models |
- PHP >= 8.2
- Composer
- Node.js >= 18
- MySQL or SQLite
# 1. Create a directory for the project
mkdir job-project
# 2. Enter the directory
cd job-project
# 3. Clone the repository library
git clone https://github.com/mohammedzom/job-shared.git
# 4. Clone the backoffice
git clone https://github.com/mohammedzom/job-backoffice.git
# 5. Enter the directory backoffice
cd job-backoffice
# 6. Install PHP dependencies
composer install
# 7. Install Node dependencies
npm install
# 8. Copy environment file and configure
cp .env.example .env
php artisan key:generate
# 9. Set up the database in .env (make sure it connects to the same DB as backoffice if needed), then run migrations
php artisan migrate --seed
# 10. Build frontend assets
npm run build
# 11. Serve the application (optional)
php artisan serve --port=8001
# 12. Go back to the parent directory
cd ..
# 13. Clone this repository
git clone https://github.com/mohammedzom/job-app.git
# 14. Make sure you have the following directory structure:
job-project/
βββ job-app/
βββ job-shared/
βββ job-backoffice/
# 15. Enter the directory
cd job-app
# 16. Install PHP dependencies
composer install
# 17. Install Node dependencies
npm install
# 18. Copy environment file and configure
cp .env.example .env
php artisan key:generate
# 19. Set up the database in .env (make sure it connects to the same DB as backoffice if needed), then run migrations
php artisan migrate
# 20. Build frontend assets
npm run build
# 21. Serve the application
php artisan serve# Run Vite dev server with hot reload
npm run dev
# In a separate terminal, serve Laravel
php artisan serveapp/
βββ Http/Controllers/ # Controllers for Jobs, Resumes, User Profile...
βββ Services/ # Business logic (e.g. OpenAI parsing)
βββ ...
job-shared/ (External package)
βββ src/Models/ # Eloquent models with relationships & casts
resources/
βββ views/
β βββ layouts/ # App shell
β βββ components/ # Reusable Blade components
β βββ jobs/ # Job vacancy listings & details
β βββ resumes/ # Resume building & viewing
β βββ job-applications/ # Job Application tracking
βββ css/
β βββ app.css # Global design system
βββ js/
βββ app.js # Interactivity entry point
Mohammed Zomlot
Backend Developer & DevOps Engineer | Laravel
π GitHub @mohammedzom
This project follows Semantic Versioning. We use GitHub Releases to distribute stable versions of the application.
To see the latest changes, features, and bug fixes, please visit the Releases page.
Each release contains:
- Detailed Changelog.
- Source code (zip/tar.gz).
- Instructions for upgrading from previous versions (if applicable).
This project is open-sourced software licensed under the MIT License.