ResumeMate — A Job Partner

Adil Shehzad
5 min readDec 24, 2020

--

ResumeMate provides professional assistance with a premium template resume. ResumeMate is a non-profit Web Application That Saved User Data on Microsoft Azure Blob, Container and has the ability to Creates a Shareable resume link with a complete user-level Control panel.

How ResumeMate Solved Problems?

During my Initial Semester Days, I found Students are having trouble while creating Online Resume. Those Students who cannot afford Custom domains and Hosting ResumeMate Allows them to Creates a Built-in resume where they can easily Create, Delete, and Modify records. User Storage is linked up on Microsoft Azure so the User has a 100% Security Guarantee and CI/CD Pipeline GitHub with Heroku which is a PaaS Cloud Provider. Moreover, Users can share Resume Via a Custom Link which can be accessed from anywhere around the Globe. ResumeMate Solved out Student problems which help them to provide a Complete Readymade Resume Platform.

ResumeMate Infrastructure FlowChart

ResumeMate Backend

ResumeMate Backend is created on Python3 and Having a sqlite3 Database. A Manage.py file that handles all the backend tasks and frontend tasks. Inside the Resumecreator folder, we have settings.py file which contains projects settings, urls.py which contains the URL of the admin panel, and the Resumecreator folder which is the main folder linked to the home folder and cv folder through urls.py,wsgi.py contains settings which need during deployment on cloud server i.e Heroku and static folder contains Django Admin panel storage while admin upload videos, images using Django Admin will store inside the static folder.

ResumeMate FrontEnd

ResumeMate Built on Django Framework which means ResumeMate Contains Html Files in the Templates folder and has Static Files which means CSS And javascript files are saved inside Static files. Static files are served via Microsoft Blob, Container storage. This Makes ResumeMate Frontend faster and user-friendly.

Let’s Explore Frontend

Inside the home/template folder, we have HTML files which is the frontend of the ResumeMate. navbar.html contains the navbar HTML code, home.html contains the center body of the Resumemate frontend, and base.html loads the navbar.html and home.html.

ResumeMate Frontend + Backend

Let's discuss the home folder where the frontend and backend are working together. First, we have a Migrations folder where we saved my Database logs. The templates folder has Html files which means the frontend is working inside the templates folder. Our backend is working in different python files. admin.py contains models registry on admin panel. app.py contains the configuration to the application .custom_azure.py contains the Azure Secret information which is stored in GitHub Secrets which we will discuss later on. custom_azure.py purpose is to LinkedIn ResumeMate User Storage on Azure Blob, Container. forms.py is used to create input forms for the user like Registration, Login, etc. Models.py contains the ResumeMate SQL where user database will be created.

The most important are urls.py and views.py. each URL is connected to the views.py and views have templates insides it. like if we redirect the user to the home page like this

urls.pyfrom . import views
url('/home',views.home,name='home')views.pydef home(request):
return render(request, 'home/home.html', {})

ResumeMate User Authentication

As we discussed Backend + Frontend so we got an idea of working on Django python. For User Authentication, Resumemate is using a separate app folder that contains the frontend and backend of the ResumeMate. As we previously discussed admin.py,app.py,forms.py,models.py,urls.py and views.py. Now we will discuss signal.py and test.py.

Inside signal.py user authentication will allow certain senders to notify a set of receivers that some action has taken place. They’re especially useful when many pieces of code may be interested in the same events. Sent before or after a model’s save() method is called.

Test.py is used to Writing and running tests on the Django Project.

GitHub Secrets

GitHub provides a token that you can use to authenticate on behalf of GitHub Actions. You can also store sensitive information as a secret in your organization, repository, or environment. GitHub encrypts all secrets.

As I used GitHub Secrets to Store my Azure Authentications for the Blob, Container storage.

What is Heroku Used For?

The Heroku cloud service platform is based on managed containers (called dynos within the Heroku paradigm) system with integrated data services and a powerful ecosystem for deploying and running modern applications.

ResumeMate Azure Blob, Container Storage

Microsoft Azure Blob storage is a cloud computing PaaS that stores unstructured data in the cloud as objects/blobs. Blob storage can store any type of text or binary data, including documents, media files, and application installers.

ResumeMate GitHub Continuous Integration(CI) Pipeline With Heroku

Heroku CI is easy to set up and use, detecting, and running your tests with a minimum of configuration while providing enough flexibility and power for the most demanding uses. Seamlessly integrated with Heroku Pipelines, it completes Heroku Flow to provide a unified solution for continuous integration/continuous delivery.

Let’s Explore ResumeMate

ResumeMate : GitHub Continuous Integration (CI) Pipeline with Heroku

Creating Account and resume on ResumeMate

What's Up next

As I am trying to make this project up to date following technologies I will add to my Resume in the future.

  • GitHub Actions for Automation Commands
  • OAuth for Users
  • Premium Templates and Premium Account
  • More templates
  • User Friendly
  • Mobile Application

Wrapping Up

I hope you like my project documentation. You can contribute if you would like on GitHub. You a reach me out on

Linkedin

GitHub

--

--