Skip to content

Commit

Permalink
Add user card for url preview
Browse files Browse the repository at this point in the history
- Create user card layout
- Changed pdf.ts to file-generate.ts
- added .has-skill for block skill
  • Loading branch information
eerison committed Jul 21, 2023
1 parent d906496 commit 145e0e2
Show file tree
Hide file tree
Showing 20 changed files with 267 additions and 143 deletions.
2 changes: 1 addition & 1 deletion .github/DISCUSSION_TEMPLATE/resume.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ body:
- [blog.john-doe.com](https:blog.erison.work) {% .icon-website %}
{% /block%}
{% block .has-tag %}
{% block .has-tag .has-skill %}
## Skills {% .icon-rock %}
Expand Down
1 change: 1 addition & 0 deletions data/.gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
json
pdf
files
data.md
130 changes: 51 additions & 79 deletions data/data.md.dist
Original file line number Diff line number Diff line change
@@ -1,59 +1,54 @@
{% column %}

{% block .basic %}
![Profile Picture](https://avatars.githubusercontent.com/u/6358755?v=4) {% #profile-image %}
![Profile Picture](https://user-images.githubusercontent.com/6358755/229285256-03f05195-33b1-477f-ac5a-155a6a26a8c5.png) {% #profile-image %}

# Erison Silva
# John Doe

## Senior PHP Developer

{% /block %}

{% block .has-list %}
- [linkedin.com/**eerison**](https://www.linkedin.com/in/eerison) {% .icon-linkedin %}
- [linkedin.com/**john-doe**](https://www.linkedin.com/in/eerison) {% .icon-linkedin %}
- Berlin, Germany {% .icon-location %}
- [hey@erison.work](mailto:hey@erison.work) {% .icon-mail %}
- [github.com/**eerison**][link_github_profile] {% .icon-github %}
- [blog.erison.work](https:blog.erison.work) {% .icon-website %}
- [hey@john.doe](mailto:hey@john-doe.com) {% .icon-mail %}
- [github.com/**john-doe**](https://your-link.com) {% .icon-github %}
- [blog.john-doe.com](https:blog.erison.work) {% .icon-website %}
{% /block%}

{% block .has-tag %}
{% block .has-tag .has-skill %}

## Skills {% .icon-rock %}

- PHP {% .icon-php %}
- Laravel {% .icon-laravel %}
- Symfony {% .icon-symfony %}
- MySQL {% .icon-mysql %}
- JavaScript {% .icon-js %}
- PHP {% .icon-php %}
- Test {% .icon-double-check %}
- Git {% .icon-git-branch %}
- Docker {% .icon-docker %}
- Open source {% .icon-heart %}

{% /block %}

{% block %}

## Certification {% .icon-certification %}
## Courses & Certifications {% .icon-certification %}

> ![Certification Logo 1](https://github.com/shield-wall/myprofile/assets/6358755/a9b5f93b-4c2b-4479-98db-376260665ad5)
>> **Certification example 01**
>> *December 2019*

> **Sumo logic certified fundamentals**
> *December 2019 - December 2020*

> ![Alt text](https://user-images.githubusercontent.com/6358755/226969617-612c5fc9-1859-4708-9212-2cb36143fdfd.gif)
>> **Zend Certified PHP Engineer 2017**
>> *since November 2017*
>
>> **Certification example 02**
>> *December 2020*
{% /block %}

{% block %}
## Education {% .icon-education %}

>**Master's Degree in Computer Science**
>*Universidade Federal do CearΓ‘*
>*Fortaleza, Brazil*
>*Mar 2012 - Dec 2014*

>**Bachelor's Degree in Computer Science**
>*Universidade Estadual do CearΓ‘*
>*Fortaleza, Brazil*
> *Mar 2006 - Dec 2009*
>**Bachelor of Computer Science**
>*University XYZ*
>*March 2014 - July 2017*
{% /block %}

{% block .has-tags %}
Expand All @@ -64,7 +59,6 @@

**Deutsch**
**Beginnen**

{% /block %}

{% /column %}
Expand All @@ -74,68 +68,46 @@
{% block %}
## Summary {% .icon-file-description %}

I'm a **Senior software engineer** with more then **10 years** of experience and work in different projects as Helpdesk, [Insurance for pets](https://petcopetwellness.com), [Video stream](https://flimmit.at/de/) for 3 countries
in Europe and many projects with Third party integration.

I'm a professional that really like to **bring new technologies** to the project, care about **quality code**,
and In the past 3 yeas I've been working with different _open source projects_ such as [Sonata Page Bundle][link_sonata],
I was one of the most active maintainer for the [last **major** release][link_sonata_release_4_issue],
Then I invite you to check out my github [profile][link_github_profile], So you can have a good overview
I'm a **Senior PHP Developer** with **5 years of experience** in developing web applications. My expertise lies in **building scalable and efficient PHP-based solutions** using frameworks like Laravel and Symfony. I have a strong understanding of **object-oriented programming**, **database design**, and **RESTful API development**.

how I handle Pull requests, issues and collaborate with OSS!
BTW this resume was generate for one of my open source projects: [myprofile][link_github_myprofile]

For the past years I've been working with **Symfony 3/4/5/6, PHP 7/8, Elastic search, Redis, Message queue** and so on,
and recently I started to play with [Tinygo][link_tinygo] for hobby project that involve hardware πŸ€“.
Throughout my career, I have successfully delivered high-quality projects by following best practices such as **clean code**, **test-driven development (TDD)**, and **continuous integration**. I'm passionate about staying updated with the latest technologies and enjoy tackling complex challenges.

{% /block %}

{% block .has-timeline %}
## Experience {% .icon-work %}

{% timeline %}

> [![image](https://user-images.githubusercontent.com/6358755/227289068-b6c3e1f3-1f63-47a0-a214-77b0297263dc.jpeg)](#)
>>> [![Company logo 1](https://github.com/shield-wall/myprofile/assets/6358755/f9918622-d3ba-4ae9-abb4-fc184948779b)](https://www.google.com)
>>
>>> ### Senior Software Engineer
>>> #### Example Company
>>> ##### Since Jan 2023
>>
>>> Example Company is a leading software development firm specializing in cutting-edge technologies. As a Senior Software Engineer, I have been instrumental in designing and developing scalable and high-performance systems. I have worked on various projects, including the implementation of distributed systems and the integration of third-party APIs.
>>>
>>> Throughout my tenure, I have utilized modern technologies such as **Node.js**, **Docker**, and **Kubernetes** to ensure efficient deployment and scalability. Additionally, I have contributed to the team's success by conducting thorough code reviews, implementing best practices, and collaborating closely with cross-functional teams.

>>>
>>
>>> ### Software Developer
>>> #### ABC Corporation
>>> ##### May 2018 - Dec 2022
>>
>>> During my time at ABC Corporation, I gained valuable experience in technologies such as **JavaScript**, **React**, and **Node.js**. I actively participated in code reviews, agile development processes, and continuous integration to deliver high-quality software products on time.

{% content %}
### Senior Software engineer
#### Legal One
##### 2019 - present

- Lead a team of developers to build and maintain the company's main web application using PHP and Laravel.
- Collaborated with the product team to implement new features and improve the user experience.
- Worked closely with the [DevOps](#) team to deploy the application and ensure high availability.

{% /content %}
{% /timeline %}


{% timeline %}
>
{% content %}
### Senior php Developer 2
#### Endava Berlin
##### 2017 - 2019
{% /block %}

Worked on a project for a major telecommunications company, developing a high-availability web application using PHP and Laravel.
{% block %}

Collaborated with a team of developers to design and implement new features.
Contributed to code reviews and testing efforts.
## Courses & Certifications {% .icon-certification %}

1. aa
1. 222
1. aaa


> ![Certification Logo 1](https://github.com/shield-wall/myprofile/assets/6358755/a9b5f93b-4c2b-4479-98db-376260665ad5)
>> **Certification example 01**
>> *December 2019*

{% /content %}
{% /timeline %}
>
>> **Certification example 02**
>> *December 2020*
{% /block %}

{% /column %}

[link_github_profile]: https://github.com/eerison
[link_github_myprofile]: https://github.com/shield-wall/myprofile
[link_sonata_release_4_issue]: https://github.com/sonata-project/SonataPageBundle/issues/1495
[link_sonata]: https://github.com/sonata-project/SonataPageBundle
[link_tinygo]: https://tinygo.org/
{% /column %}
83 changes: 83 additions & 0 deletions node/file-generate.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
import puppeteer, { Page } from "puppeteer";
import fs from "fs";
import { dirname } from "path";
import { fileURLToPath } from "url";

(async () => {
const browser = await puppeteer.launch({
headless: true,
});
const page = await browser.newPage();

const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);

const fileToGenerate = process.argv[2];
let url = "http://localhost:8000/";
let fileName = "resume-default.pdf";
let fileType = "pdf";
let fileFolder = `${__dirname}/../data/files/`;

if (process.argv[3])
fileType = process.argv[3];

if (!fs.existsSync(fileToGenerate)) {
url += `${fileToGenerate}.html`;
fileName = `${fileToGenerate}.${fileType}`;

}

const filePath = fileFolder + fileName;

await getPage(page, __dirname, url);

if (!fs.existsSync(fileFolder)) {
fs.mkdirSync(fileFolder, { recursive: true });
}

await generateFile(page, filePath, fileType);

await browser.close();

console.log(
`%s Your file is located at "${filePath}" ;) %s`,
"\x1b[33m",
"\x1b[0m"
);

})();

async function generateFile(page: Page, path: string, type: string): Promise<Buffer> {

if (type === 'pdf')
return await page.pdf({
format: "A4",
// preferCSSPageSize: true,
path: path,
printBackground: true,
margin: {
top: "1cm",
right: "1cm",
bottom: "1cm",
left: "1cm"
},
});

// 1200x600
return await page.screenshot({
path: path,
fullPage: true,
});
}

function getPage(page: Page, __dirname: string, url: string) {
if (process.argv[2] && process.argv[2] === "--file=true") {
const html = fs.readFileSync(`${__dirname}/../dist/index.html`, "utf8");
return page.setContent(html, {
waitUntil: "domcontentloaded",
});
}

return page.goto(url, {waitUntil: 'networkidle0'});

}
55 changes: 0 additions & 55 deletions node/pdf.ts

This file was deleted.

9 changes: 4 additions & 5 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,10 @@
"preview": "vite preview",
"cloud:bucket:object": "npx wrangler r2 object",
"node:copy-data": "cp data/data.md.dist public/data.md",
"node:generate:json": "ts-node ./node/parse.ts",
"node:generate:pdf": "ts-node ./node/pdf.ts",
"node:generate:data": "ts-node ./node/create-data.ts",
"node:group:init": "npm run node:copy-data && npm run node:generate:json",
"node:group:pdf": "npm run node:generate:json && npm run node:generate:pdf"
"node:generate:pdf": "ts-node ./node/file-generate.ts resume-default",
"node:generate:card": "ts-node ./node/file-generate.ts user-card-default webp",
"node:group:init": "npm run node:copy-data",
"node:group:pdf": "npm run node:generate:init && npm run node:generate:pdf"
},
"devDependencies": {
"@babel/eslint-parser": "^7.21.3",
Expand Down
1 change: 1 addition & 0 deletions index.html β†’ public/resume-default.html
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Myprofile resume</title>
<script type="module" src="src/main.ts"></script>
<link rel="stylesheet" href="src/style/resume-default/main.scss">
</head>
<body>
<div id="app"></div>
Expand Down
13 changes: 13 additions & 0 deletions public/user-card-default.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<script type="module" src="src/main.ts"></script>
<link rel="stylesheet" href="src/style/user-card-default/main.scss">
<title>User Card</title>
</head>
<body>
<div id="app"></div>
</body>
</html>
1 change: 0 additions & 1 deletion src/main.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import Markdoc, { Config, Node, Tag } from "@markdoc/markdoc";
import "./style/main.scss";

const config = {
tags: {
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
@import "bulma/bulma.sass";
@import "@fortawesome/fontawesome-free/css/all.css";
@import "block";
@import "icons";
@import "../icons";
@import "timeline";
@import "columns";
@import "image";
Expand Down
File renamed without changes.
File renamed without changes.
Loading

0 comments on commit 145e0e2

Please sign in to comment.