CV Brand me
https://cvbrandme.com
A complex subscription based online resume-builder
Awards
CVBrandme has been nominated in the following 2 categories:
- 10 Best Website for 2021
- Innovation Category (Product Design)
This is for the UK Business Awards.
Project Summary
A London-based client wanted us to develop a complex subscription-based resume builder where the user gets to select beautiful templates from the gallery and then just fill up the Resume form. On a click of a button, a beautiful resume is generated.
The main goal was to ensure the new generation of jobseekers should be able to attract resumes or CVs with just a client of a button.
Got a similar project in mind?
CV Brand me
Technology Stack – WordPress, JQUERY, MySQL andPHP
Special feature includes colour code selection for the CV and embedding Youtube Video links in the CV.
Challenges and Solutions
1. 1.Create PDF from html file in wordpress with DOM pdf
Challenges faced:
It was difficult to pass dynamic value in the html template which was finally used to generate a PDF format too.Solution:
To overcome this problem, we created two separate files for HTML and PDF conversion The file used for PDF conversion was included in the HTML file. Therefore, we could pass dynamic values in the HTML file.Example:
use Dompdf\Dompdf;
acf_form_head();
$postId = filter_input(INPUT_GET, ‘id’);
ob_start();
include_once(__DIR__ . ‘/pdf-template-standard1.php’);
$html = ob_get_clean();
$dompdf = new Dompdf();
$dompdf->loadHtml($html);
$dompdf->setPaper(‘A4’, ‘portrait’);
$dompdf->render();
$dompdf->stream($fileName, array(‘Attachment’ => 0));
2. Rendering the image and previewing the CV in different Browsers.
Challenges faced:
Couldn’t pass image in ‘Preview’ sectionSolution:
The solution was to store the Url of the image in array and get the image value while displaying in ‘PreviewExample:
$image_fields = [‘profile_image’ => get_stylesheet_directory_uri() . ‘/images/default/default-2100×1300.png’];foreach ( $image_fields as $image_field => $defalut_image ) {
$field_val = get_field( $image_field );
$$image_field = ( ! empty( $field_val ) ) ? esc_url( $field_val[‘url’] ) : $defalut_image;
}
3. Showing Dashboard based on subscription
Challenges faced:
A customized Dashboard needed to be displayed based on the user subscription.Solution:
The solution was to get the user subscription status i.e active or not Once the subscriber is active then we checked the subscription type of the user, and then displayed the customised dashboard4. Display video in Resume
Challenges faced:
Video was displayed in embedded format, which worked only on Static values. However dynamic values could not be passed in embedded code.Solution:
We used iframe for showing dynamic embedded code in videos.Example:
$iframe = get_field( ‘video_url’ );
// Use preg_match to find iframe src.
preg_match( ‘/src=”( .+? )”/’, $iframe, $matches );
$src = $matches[1];
// Add extra parameters to src and replace HTML.
$params = array(
‘controls’ => 0,
‘hd’ => 1,
‘autohide’ => 1,
);
$new_src = add_query_arg( $params, $src );
$iframe = str_replace( $src, $new_src, $iframe );
// Add extra attributes to iframe HTML.
$attributes = ‘frameborder=”0″‘;
$iframe = str_replace( ‘>’, ‘ ‘ . $attributes . ‘>’, $iframe );
// Display customized HTML.
echo $iframe;
5. Showing video thumbnail in PDF
Challenges faced:
The video thumbnail could not be directly displayed in the generated PDF.Solution:
For this we fetched the video id and passed to (http://img.youtube.com/vi..) In this it will get the original thumbnail of the video from the youtube.6. PDF structure in Bootstrap
6.1 Challenges faced:
Pdf was not supported bootstrap structure.Solution:
To overcome this, we designed the PDF in table format.6.2 Challenges faced:
Pdf was not supporting external link and browser supported cssSolution:
The solution was to use only inline/internal css
“I approached Shar and the team a few months ago. I gave them a difficult task to build a new & very unique platform that allows for the creation of Digital Media CV/resumes. This would be a complete platform where people can log in & create the digital cv/resume and have it live on the internet within an hour. At the time, no such platform existed in the way we envisioned it.
The difficulty of this task was amplified by the fact that I am not a coder and so as well as building the platform itself, a large part of the challenge was to educate me to a point of fluency. Immediately, the team set about planning & took the time to explain to me what can & can’t be achieved as well as the best ways to do it. At every step I was kept well informed and anytime I had a question, it was responded to almost immediately without any delay. This is a very impressive level of customer care and rarely seen these days as everything is automated & you sometimes lose the personal touch.
Today, www.cvbrandme.com is live and people all over the world are able to log in & create the digital CV/resume. The solution looks fantastic on a mobile device, the user interface couldn’t be easier to use and I have received many compliments for creating such an innovative platform.
Shar and the team fulfilled my exact requirements and I am happy to recommend this team to anyone looking to build a digital platform.”
Got a similar project in mind?