/DevHub

Dev Hub is a website where recruiters can find engineers all within one spot without having to visit other websites. This project is indeed a part of a hackathon.

Primary LanguageHTML

Welcome to the official repository of DevHub web application.

Note : This project is an entry for the Hackathon Code-Battle-Edition organized by Dennis Ivy sponsored by Harper DB and Agora


Table of Contents

Introduction

This markdown file contains all technical documentation related to the setup, deployment, update, and customization of DevHub web application.

About Project

DevHub is a web application that makes finding talented developers easy for Hiring Managers. This application is aimed at solving One of the major challenges faced by Hiring Managers, which is the lack of an easy process for finding developer/tech talent. With DevHub, the need for recruiters to visit multiple websites in search of developers has been eliminated. Talented Developers can now be found in a single search. Hiring Managers can search for a developer's information and save it for subsequent review. The primary feature of the site is that all developers' crucial information is fetched from different APIs, this is to ensure that no detail of a developer is left out.

Project Images Preview

Homepage Preview

Homepage

Profile Page Preview

Note: The following linkedin info is fetched from LinkedIn Profile Page

Saved Profiles Page Preview

Note: The following page is only visible to Hiring Managers Saved Profile Page HRs

Account Page Preview

Logged in as Hiring Manager Account Page for HR

Logged in as a Developer Account Page for Developers

Edit Account Page Preview

Logged in as Hiring Manager Edit Account Page for HR

Logged in as a Developer Edit Account Page for Developers

Add Project Page Preview

Note: The following page is only visible to Developers Add Project Page for Devs

Edit Project Page Preview

Note: The following page is only visible to Developers Edit Project Page for Devs

Add Skills Page Preview

Note: The following page is only visible to Developers Add Skills Page for Devs

Edit Skills Page Preview

Note: The following page is only visible to Developers Edit Skills Page for Devs

Tools & Technologies Used

This project was developed using Visual Studio Code and the following technologies were used:

  • Design
    Figma

  • Frontend
    HTML5 tailwindCss JavaScript

  • Backend
    Python Django

  • Databases
    Harperdb sqlite

  • Project Management and Version Control
    GitHub

Features

Below are some of the major features of DevHub:

Hiring Managers - An individual that is interested in hiring developers. Users registered as HRs would have access to the following pages after registration:

- Homepage, they can browse through developers on the page 
- Profile Page, see thier profiles, can edit etc
- Account Page
- Edit Account Page, to update relevant informations related to their accounts
- Saved Profiles Page, to see developers profiles that was saved for later review or for other reason
- Searched Page, to search for developers 

Developers - An individual that is interested in getting a job as a developer. Users registered as developers would have access to the following pages:

- Profile Page, see thier profiles, can edit etc
- Account Page
- Searched Page, to search for developers to collaborate with
- Add Project Page, to add their projects
- Edit Project Page, to edit the projects on their profiles
- Add Skills Page, to add their skills
- skill Page, to edit the skills on their profiles

Usage

  • Visit the website
  • Register as a hiring manager or developer
  • Login with your registered details
  • Explore the full features and different pages of the site

Project Specification

This project is fully responsive and can be accessed / viewed on all screens/devices

  • Mobile Phones
  • Tablets
  • Laptops & Desktop

Prerequisite

To run DevHub locally on your system, the following are required:

  • A computer running macOS, Windows or Linux
  • Python or pip to manage packages
  • A supported version of Django

Setup and Installation

The following installation guides will guide you step-by-step to run this project locally.

  • Clone the repository on your local machine -
git clone https://github.com/jethliya-balaji/DevHub.git
  • Environment Variables: To run this project, you will need to add the following environment variables to your .env file

    HARPERDB_URL

    HARPERDB_USERNAME

    HARPERDB_PASSWORD

    LINKEDIN_EMAIL

    LINKEDIN_PASSWORD

    ⚠️ Don't use your personal Linkedin because we are using linkedin-api module & not the official linkedin APIs: Be very careful here!

  • Making Virtual Environment: In the same directory as manage.py run the following command to create virtual environment & activate it.

    python -m venv env

    source env/Scripts/activate use this to activate from git bash.

    .\env\Scripts\activate use this to activate from windows terminal.

  • Creating Database & Database Tables: In the same directory as manage.py run the following command to creating database & database tables.

    python manage.py makemigrations

    python manage.py migrate

  • Creating Superuser: Now its time to create superuser so that we can create some skills which can be added by developer to their profile. To create superuser enter the following command.

    python manage.py createsuperuser

    Now fill the form to create superuser

  • Running the Project: Now its time to run the project so that we can see it on the web.

    python manage.py runserver

    http://127.0.0.1:8000/admin/ now go this url in your browser and login with superuser credentials. Now in projects_skills section click on the skill and create some skills and then logout.

    now got to http://127.0.0.1:8000/ and explorer the site

Contributors

Jethliya Balaji

  • Stack - Backend & Design
  • Email - jethliya.balaji1@gmail.com
  • Feedback from Omolara
    I'm completely blown away by your thoughtfulness and dedication to this project. You went above and beyond to make this work. Thank you so much for your hard work! I couldn't have wished for a better teammate.

Adebowale Omolara

  • Stack - Frontend
  • Email - debbiegterra@gmail.com
  • Feedback from Balaji
    I appreciate the fact that you stood in gap for Ishika agrawal since she had some other issues. What distinguishes you is that you don't just do the work for the sake of doing it; instead, you strive to make it as perfect as possible. You make the team stronger than it was before. Keep up the good work.

Ishika Agrawal

  • Stack - Frontend
  • Email - ishikaagrawal0711@gmail.com
  • Feedback from Balaji
    You are one of the best front-end developers I have ever encountered, yet I saw that you fell short of the expectations that were placed on you. I always value your work, but you should collaborate with others and seek assistance when necessary.
  • Feedback from Omolara
    Weldone on the effort you put to make this work.

Acknowledgement

We sincerely appreciate the organizers and the sponsors for this hackathon and for everything that was put in place to make it a success. We have been pushed to do a lot during the course of this hackathon. We are grateful for this opportunity that was given to learn, grow, and also connect with other amazing designers and developers.