Shoglana is a Job Board Portal Management System built with Django, designed to facilitate job postings, applications, and user management. This system provides a platform for employers to post jobs and for job seekers to browse and apply.
- User authentication and authorization.
- User and Company profile management.
- Job posting creation and management.
- Job application submission and tracking.
- Dashboard for tracking jobs by companies.
- Dashboard for companies for tracking applications for a job.
- Dashboard for users for tracking their applications.
- Search functionality for jobs.
- Responsive design for mobile and desktop viewing.
- Backend: Django
- Frontend: HTML, CSS, JavaScript, Bootstrap
- Database: SQLite (default), (Postgresql) for Docker version only
- Containerization: Docker
- Clone the repository:
git clone https://github.com/your-username/job-board-portal.git
- Navigate to project folder
- Create a virtual environment and activate it:
python -m venv venv
source venv/bin/activate # On Windows, use `venv\Scripts\activate`
- Install the required packages:
pip install -r requirements.txt
-
Setup the database:
replace this section at
jobs/settings.py
DATABASES = {
"default": {
"ENGINE": "django.db.backends.postgresql",
"NAME": SECRETS.get("DB_NAME", "jobs_portal"),
"USER": SECRETS.get("DB_USER", ""),
"HOST": SECRETS.get("DB_HOST"),
"PASSWORD": SECRETS.get("DB_PASSWORD", ""),
"PORT": SECRETS.get("DB_PORT"),
}
}
with the following
DATABASES = {
"default": {
"ENGINE": "django.db.backends.sqlite3",
"NAME": BASE_DIR / "db.sqlite3",
}
}
- Apply the migrations to the database:
python manage.py migrate
- Run thin command to populate database with data for skills, industries, countries, and currencies:
python manage.py populate_data --industry industry.txt --country country.txt --skills skills.txt --currency currency.txt
- Run the development server
python manage.py runserver
- Access the website at
http://127.0.0.1:8000/
:
- Build the images:
docker compose build
- Run the containers
docker compose up
- Access the website at
http://0.0.0.0:8000
- Improve the project overall performance.
- Develop a public API for integration with other services or platforms.
- Develop an AI-powered recommendation system for job seekers.
- Implement notifications system about new relevant job postings
Any one are welcome to contribute to project. Please don't hesitate if you want to add feature, fix a problem or suggest some improvement to the code base, to contribute follow the known contribution steps:
- Fork the repository.
- Create a new branch for your
feature
,fix
,enhancement
. - Make your changes.
- Commit your changes and push to the branch on your fork.
- Open a Pull Request.