Skip to content

SanchezOLeary/SMART

Repository files navigation

SMART: Strategic Applicant Management and Recruitment Tracker

Streamline Your Hiring Process the SMART Way

Description

SMART is an advanced Software-as-a-Service (SAAS) platform designed to revolutionize the recruitment process for businesses of all sizes. Our application provides a comprehensive solution for applicant tracking while also empowering job seekers to find, apply for, and track opportunities within their desired companies. Whether you're managing a small startup or a large enterprise, SMART is the tool you need to make your hiring process more efficient, transparent, and data-driven.

Who Uses SMART?

SMART is tailored for forward-thinking businesses—from dynamic startups to large enterprises—looking to simplify, optimize, and enhance their hiring processes. It’s ideal for any organization that values efficiency, effectiveness, and innovation in their recruitment strategies.

Our customers are companies seeking a smarter, centralized solution to manage applicants, monitor their progress, and make informed, data-backed decisions throughout the hiring cycle. SMART helps businesses reduce time-to-hire, improve candidate quality, and automate manual tasks, ensuring recruitment workflows are streamlined and seamless.

What SMART Offers

For Applicants

SMART offers an intuitive, user-friendly experience for job seekers, enabling them to:

  • Explore Job Opportunities: View a full list of available positions within the target company.
  • Advanced Search Filters: Filter opportunities by geographical location, ensuring they find positions that match their preferences.
  • Interactive Map: Use an integrated map to easily discover nearby job opportunities.
  • Job Details: Access in-depth information about each job posting, including role requirements and company details.
  • Apply with Ease: Submit applications directly through the platform with a simple, efficient process.
  • Track Application Status: Monitor the status of all applications—whether accepted, rejected, or in progress.
  • Manage Interview Requests: Receive notifications for upcoming interviews, view requests, and confirm or cancel interview appointments.

For Hiring Managers

Hiring managers can optimize their workflow by leveraging SMART’s comprehensive set of features designed for applicant management:

  • Create Job Postings: Effortlessly create new job postings by specifying details like position, location, pay rate, and other relevant information.
  • Advanced Filtering: Manage job postings with ease, filtering by location, job title, or posting status to keep everything organized.
  • Applicant Profiles: View detailed applicant profiles, including all job applications submitted by the individual.
  • Application Overview: Access an applicant’s complete application history, including their personal information, job details, notes from other managers, and interview schedules.
  • Interview Management: Schedule, confirm, or cancel interviews, and log results with just a few clicks.
  • Collaboration: Leave notes on applications, share feedback with team members, and track progress in real time.
  • Interview Packet Creation: Standardize interviews by creating interview packets with predetermined questions, ensuring consistency across all applicants for the same role.
  • Interview Calendar: View and filter upcoming interviews on a calendar to stay organized and ensure timely follow-ups.

For Admins

In addition to all the capabilities available to managers, SMART admins have full control over the platform, allowing them to:

  • User Management: Add or remove users, update user details, and change the active status of any account.
  • Role Management: Assign and manage user roles, ensuring that the right people have the right permissions.
  • Location & Job Title Management: Edit and manage job locations, titles, and posting statuses to keep the platform up to date.
  • Comprehensive Control: Admins have complete access to all functionalities, empowering them to manage users, postings, and settings with full authority.

SMART is the ultimate solution for businesses looking to streamline their hiring process, increase the efficiency of their recruitment workflows, and provide an exceptional experience for both applicants and hiring teams. Whether you're an applicant seeking your next opportunity or a hiring manager overseeing recruitment, SMART has the tools you need to succeed.

Project Setup Guide

We will provide step-by-step instructions for setting up and running the project using Docker and accessing the PostgreSQL database with Beekeeper Studio.


Clone the Project Repository

Once you're ready, clone the project repository from GitLab:

  1. Open a terminal.

  2. Run the following command in your projects directory:

    git clone https://gitlab.com/smart-galvanize-mod3/smart.git
  3. Navigate into the project directory:

    cd smart

Configure Environment Variables

This project requires environment variables to be set up correctly.

  1. Copy the example .env file:

    cp .env.example .env
  2. Update the following values as needed:

    POSTGRES_DB="db_name"
    POSTGRES_USER="user"
    POSTGRES_PASSWORD="password"
  3. Save the file.


Start the Project Using Docker

To build and start the necessary services, run the following command in your terminal:

  1. Build the project:

    docker compose build
  2. Start the services:

    docker compose up

This command will:

  • Start the PostgreSQL database (db service) on port 15432.
  • Start the API (api service) on port 8000.
  • Start the Frontend (ghi service) on port 5173.

To stop all running containers, use:

docker compose down

Access the Database in Beekeeper Studio

Beekeeper Studio can be used to connect to the PostgreSQL database and inspect data.

Connecting to the Database

  1. Open Beekeeper Studio.

  2. Click "New Connection" → Select "PostgreSQL".

  3. Enter the following details:

    • Connection Type: Postgres
    • Authentication Method: Username / Password
    • Connection Mode: Host and Port
    • Host: localhost
    • Port: 15432
    • User: user
    • Password: password
    • Default Database: db_name
    • Do not enable SSL or SSH Tunnel.
  4. Click "Test Connection" to verify the connection.

  5. If successful, click "Save & Connect" to access the database.

Importing Data into the Database

Once you're in the database, follow these steps to load the project data:

  1. Locate the file named SQL.txt in the root directory.
  2. Open the file and copy all of the text inside.
  3. Open Beekeeper Studio.
  4. Paste the copied text into the "Query #1" file.
  5. Execute the query to load the data into the database.

Now you have all the data used to create this project!


Accessing the Application

Once the project is running, access different services via the following URLs:

User Logins

After setting everything up, use the provided logins to access all website features.

Username Password Role
app app Applicant
app2 app Applicant
app3 app Applicant
manager manager Manager
admin admin Admin

We hope you enjoy exploring our web app!

Database Diagram

Database Diagram

Screenshots

Applicant View

Applicant View

Manager View

Manager View

Admin View

Admin View

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors