Skip to main content

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:
    1. Initial Submission: Applicant uploads their resume.
    2. 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

  1. Include App URLs: In your project's main urls.py file, include the django_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.

  2. Run Database Migrations: Apply the app's database migrations:

    python manage.py migrate
    
  3. Collect Static Files (If applicable): If the django_career_app uses 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_ROOT in your settings.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

django_career_app-0.2.2.tar.gz (44.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_career_app-0.2.2-py3-none-any.whl (55.6 kB view details)

Uploaded Python 3

File details

Details for the file django_career_app-0.2.2.tar.gz.

File metadata

  • Download URL: django_career_app-0.2.2.tar.gz
  • Upload date:
  • Size: 44.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for django_career_app-0.2.2.tar.gz
Algorithm Hash digest
SHA256 e2f203570339e71a2fa2397aa6aef07d0e3772d06605715f088ebb699293e8eb
MD5 5501cd49d88ba2c3cb66e4dd03c01365
BLAKE2b-256 b82fae9f3272dba3909bae3486e2edd5194d6530996d5fcf6d29171797ad6eb7

See more details on using hashes here.

Provenance

The following attestation bundles were made for django_career_app-0.2.2.tar.gz:

Publisher: workflow.yml on t6830/django-career-app

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file django_career_app-0.2.2-py3-none-any.whl.

File metadata

File hashes

Hashes for django_career_app-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 bb0e740449fbaff44242c4531986fe43c915cbc342b6d4629d8dc71b9413f648
MD5 839dcfb2487637c558ec8e6c75e58326
BLAKE2b-256 37b539e4762b1bb9d0fbc76b2cd34a5e0d2c5cc70e8670df8183f79f01b32dc7

See more details on using hashes here.

Provenance

The following attestation bundles were made for django_career_app-0.2.2-py3-none-any.whl:

Publisher: workflow.yml on t6830/django-career-app

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page