A Django project for a career portal.
Project description
django-career-app
A Django-based platform designed to streamline the job application process for both applicants and recruiters, leveraging AI for resume analysis and scoring.
Features
- Browse Job Postings: Users can view a list of available job openings, including details like title and location.
- Detailed Job View: Each job posting has a dedicated page showing a full description, requirements, and department (if applicable).
- Resume Upload (PDF): Applicants can easily submit their resume in PDF format.
- Automated Resume Parsing: Utilizes Large Language Models (LLMs) to automatically extract key information from uploaded resumes, including:
- Contact details (full name, email, phone, LinkedIn).
- Latest education (degree, school, major, graduation year).
- Recent work experience (job title, company).
- Top achievements and differentiating skills as "tags".
- AI-Powered Resume Scoring: Resumes are automatically scored against the specific job description and its weighted requirements using LLMs, providing an initial assessment of fit.
- Two-Step Application Process:
- Initial Submission: Applicant uploads their resume.
- Review & Finalize: Applicant reviews the LLM-parsed data and AI score, can edit details, and confirms their application.
- User Account Management:
- Automatic user account creation for new applicants using their email.
- Links application to existing user accounts if the email is already registered.
- Secure password handling for user accounts.
- Data Management: Stores and manages company profiles, job postings, applicant data, and application records.
- Secure Application Handling: Ensures user data and application details are handled securely throughout the process.
Installation
Install the django-career-app package:
pip install django-career-app
Settings
Add django_career_app to your INSTALLED_APPS in your project's settings.py:
INSTALLED_APPS = [
# ... other apps
'django_career_app',
]
Configure the following settings in your settings.py. You can load these credentials using python-decouple or python-dotenv.
# Required for LLM features
GEMINI_API_KEY = "YOUR_GEMINI_API_KEY" # Or load from environment variable
LLM_MODEL_NAME = "gemini-pro" # Or your preferred LLM model
# Optional: Configure resume storage backend
# By default, resumes are stored locally.
# To use AWS S3 for resume storage (requires django-storages):
STORAGES = {
"django_career_app": {
"BACKEND": "storages.backends.s3.S3Storage",
# Options are typically derived from environment variables
# like AWS_STORAGE_BUCKET_NAME, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, etc.
# 'OPTIONS': {
# 'bucket_name': os.environ.get('AWS_STORAGE_BUCKET_NAME'),
# # etc.
# }
}
}
# AWS S3 settings (if using S3Storage)
AWS_STORAGE_BUCKET_NAME = "your-s3-bucket-name"
AWS_S3_REGION_NAME = "your-s3-region"
AWS_S3_FILE_OVERWRITE = False # Set to True if you want to overwrite files with the same name
# AWS credentials (if using S3Storage, load from .env or environment variables)
# AWS_ACCESS_KEY_ID = os.environ.get('AWS_ACCESS_KEY_ID')
# AWS_SECRET_ACCESS_KEY = os.environ.get('AWS_SECRET_ACCESS_KEY')
Usage
-
Include App URLs: In your project's main
urls.pyfile, include thedjango_career_app's URL patterns:from django.urls import path, include urlpatterns = [ # ... other project urls path('career-portal/', include('django_career_app.urls')), ]
Replace
'career-portal/'with your desired URL prefix. -
Run Database Migrations: Apply the app's database migrations:
python manage.py migrate
-
Collect Static Files (If applicable): If the
django_career_appuses static files (CSS, JavaScript, images) that need to be served by your project, run:python manage.py collectstatic
This will gather all static files into the directory specified by
STATIC_ROOTin yoursettings.py.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file django_career_app-0.2.4.tar.gz.
File metadata
- Download URL: django_career_app-0.2.4.tar.gz
- Upload date:
- Size: 45.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e1d0b6439f5c3a863ad4f6a37ceb0a26e2ddc5526c63eb5dc023feae034bf0d9
|
|
| MD5 |
1124792163c906878ae5c306d0896b3c
|
|
| BLAKE2b-256 |
e3c1f2d3ecebceb8be7e9b4404d2d68fee9c5206e9d7e83655ec0d37c61a5c84
|
Provenance
The following attestation bundles were made for django_career_app-0.2.4.tar.gz:
Publisher:
workflow.yml on t6830/django-career-app
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
django_career_app-0.2.4.tar.gz -
Subject digest:
e1d0b6439f5c3a863ad4f6a37ceb0a26e2ddc5526c63eb5dc023feae034bf0d9 - Sigstore transparency entry: 229053311
- Sigstore integration time:
-
Permalink:
t6830/django-career-app@9dff6529a9d8ba09f397a3d55ccdea0ab9bc17a7 -
Branch / Tag:
refs/tags/0.2.4 - Owner: https://github.com/t6830
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
workflow.yml@9dff6529a9d8ba09f397a3d55ccdea0ab9bc17a7 -
Trigger Event:
release
-
Statement type:
File details
Details for the file django_career_app-0.2.4-py3-none-any.whl.
File metadata
- Download URL: django_career_app-0.2.4-py3-none-any.whl
- Upload date:
- Size: 57.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
75f2314b47cb5da77875ef132e8bf6d111e9e54db72a2993770a4fdc51344fda
|
|
| MD5 |
43fb538e9efa0c40292ce00009a6f04b
|
|
| BLAKE2b-256 |
69c7e5b73f8c7edc63010ff3b08fd4e4a516b0066cbf3aa1a5579b268b882e8f
|
Provenance
The following attestation bundles were made for django_career_app-0.2.4-py3-none-any.whl:
Publisher:
workflow.yml on t6830/django-career-app
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
django_career_app-0.2.4-py3-none-any.whl -
Subject digest:
75f2314b47cb5da77875ef132e8bf6d111e9e54db72a2993770a4fdc51344fda - Sigstore transparency entry: 229053313
- Sigstore integration time:
-
Permalink:
t6830/django-career-app@9dff6529a9d8ba09f397a3d55ccdea0ab9bc17a7 -
Branch / Tag:
refs/tags/0.2.4 - Owner: https://github.com/t6830
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
workflow.yml@9dff6529a9d8ba09f397a3d55ccdea0ab9bc17a7 -
Trigger Event:
release
-
Statement type: