fixing crashes, upgrading dependencies, patching security vulnerabilities

This commit is contained in:
Amruth Pillai 2020-10-03 08:57:37 +05:30
parent 2410ce024a
commit 2aaed1a575
20 changed files with 4584 additions and 3245 deletions

View File

@ -5,8 +5,6 @@
"editor.codeActionsOnSave": {
"source.fixAll": true
},
"i18n-ally.localesPaths": [
"src/i18n/locales"
],
"i18n-ally.localesPaths": ["src/i18n/locales"],
"i18n-ally.keystyle": "nested"
}

View File

@ -2,7 +2,7 @@
## A free and open source resume builder.
[![Crowdin](https://badges.crowdin.net/reactive-resume/localized.svg)](https://crowdin.com/project/reactive-resume)
[![Crowdin](https://badges.crowdin.net/reactive-resume/localized.svg)](https://crowdin.com/project/reactive-resume)
[![GitHub](https://img.shields.io/github/license/AmruthPillai/Reactive-Resume)](https://github.com/AmruthPillai/Reactive-Resume/blob/develop/LICENSE)
### [Go to App](https://rxresu.me/)
@ -62,21 +62,25 @@ For those of you familiar with the Crowdin Platform, you could do that too and j
### Building from Source
Want to run your own instance of Reactive Resume? You are very much free to do so. The requirements to build from source are:
- NodeJS/NPM
- A Firebase Project
1. First, clone this project repository
```
git clone https://github.com/AmruthPillai/Reactive-Resume.git
cd Reactive-Resume
```
2. Run npm install to install dependencies for the project
```
npm install
```
3. Create a `.env` file and fill it with your Firebase credentials
```
FIREBASE_APIKEY=""
FIREBASE_APPID=""
@ -94,7 +98,7 @@ And that's it! 🎉
### Donation
I try to do what I can, but if you found the app helpful, or you're in a better position than the others who depend on this project for their first job, please consider donating as little as $5 to help keep the project alive :)
I try to do what I can, but if you found the app helpful, or you're in a better position than the others who depend on this project for their first job, please consider donating as little as \$5 to help keep the project alive :)
#### https://www.buymeacoffee.com/AmruthPillai

View File

@ -16,4 +16,4 @@
}
}
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -12,12 +12,12 @@
"node": "10"
},
"dependencies": {
"firebase-admin": "^9.0.0",
"firebase-functions": "^3.9.0",
"puppeteer": "5.2.1"
"firebase-admin": "^9.2.0",
"firebase-functions": "^3.11.0",
"puppeteer": "5.3.1"
},
"devDependencies": {
"firebase-functions-test": "^0.2.1"
"firebase-functions-test": "^0.2.2"
},
"private": true
}

6134
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -18,58 +18,57 @@
"dependencies": {
"@material-ui/core": "^4.11.0",
"@reach/router": "^1.3.4",
"animate.css": "^4.1.0",
"array-move": "^3.0.0",
"animate.css": "^4.1.1",
"array-move": "^3.0.1",
"classnames": "^2.2.6",
"dayjs": "^1.8.31",
"dayjs": "^1.9.1",
"dotenv": "^8.2.0",
"downloadjs": "^1.4.7",
"firebase": "^7.17.1",
"formik": "^2.1.5",
"gatsby": "^2.24.23",
"gatsby-image": "^2.4.14",
"gatsby-plugin-create-client-paths": "^2.3.10",
"firebase": "^7.22.0",
"formik": "^2.1.7",
"gatsby": "^2.24.67",
"gatsby-image": "^2.4.20",
"gatsby-plugin-create-client-paths": "^2.3.12",
"gatsby-plugin-firebase": "^0.2.0-beta.4",
"gatsby-plugin-manifest": "^2.4.21",
"gatsby-plugin-manifest": "^2.4.33",
"gatsby-plugin-material-ui": "^2.1.10",
"gatsby-plugin-postcss": "^2.3.11",
"gatsby-plugin-postcss": "^3.0.0",
"gatsby-plugin-prefetch-google-fonts": "^1.4.3",
"gatsby-plugin-react-helmet": "^3.3.10",
"gatsby-plugin-react-helmet": "^3.3.12",
"gatsby-plugin-remove-serviceworker": "^1.0.0",
"gatsby-plugin-sharp": "^2.6.24",
"gatsby-plugin-sitemap": "^2.4.11",
"gatsby-source-filesystem": "^2.3.23",
"gatsby-plugin-sharp": "^2.6.38",
"gatsby-plugin-sitemap": "^2.4.14",
"gatsby-source-filesystem": "^2.3.32",
"gatsby-source-gravatar": "^1.0.0",
"gatsby-transformer-remark": "^2.8.27",
"gatsby-transformer-sharp": "^2.5.12",
"i18next": "^19.6.3",
"lodash": "^4.17.19",
"gatsby-transformer-remark": "^2.8.37",
"gatsby-transformer-sharp": "^2.5.16",
"i18next": "^19.8.0",
"lodash": "^4.17.20",
"nanoevents": "^5.1.8",
"react": "^16.13.1",
"react-beautiful-dnd": "^13.0.0",
"react-dom": "^16.13.1",
"react-helmet": "^6.1.0",
"react-i18next": "^11.7.0",
"react-icons": "^3.10.0",
"react-i18next": "^11.7.3",
"react-icons": "^3.11.0",
"react-markdown": "^4.3.1",
"react-scroll": "^1.8.0",
"react-scroll": "^1.8.1",
"react-toastify": "^6.0.8",
"short-unique-id": "^3.0.4",
"uuid": "^8.3.0",
"yup": "^0.29.2"
"yup": "^0.29.3"
},
"devDependencies": {
"autoprefixer": "^9.8.6",
"eslint": "^7.6.0",
"eslint": "^7.10.0",
"eslint-config-airbnb": "^18.2.0",
"eslint-config-prettier": "^6.11.0",
"eslint-config-prettier": "^6.12.0",
"eslint-loader": "^4.0.2",
"eslint-plugin-jsx-a11y": "^6.3.1",
"eslint-plugin-prettier": "^3.1.4",
"eslint-plugin-react": "^7.20.5",
"eslint-plugin-react": "^7.21.3",
"gatsby-plugin-eslint": "^2.0.8",
"prettier": "2.0.5",
"tailwindcss": "^1.6.0"
"prettier": "2.1.2",
"tailwindcss": "^1.8.10"
},
"repository": {
"type": "git",

View File

@ -1,6 +1,5 @@
const tailwindcss = require('tailwindcss');
const autoprefixer = require('autoprefixer');
module.exports = () => ({
plugins: [tailwindcss, autoprefixer],
plugins: [tailwindcss],
});

View File

@ -1,7 +1,7 @@
---
slug: "/blog/acing-video-interviews"
date: "2020-07-15"
title: "Acing Video Interviews"
slug: '/blog/acing-video-interviews'
date: '2020-07-15'
title: 'Acing Video Interviews'
---
Today, as in-person interviewing has had to cease or slow due to restrictions during the Covid-19 pandemic, thousands of professionals are now needing to learn how to effectively interview in a new way using online platforms, such as Zoom, GoToMeeting and others.
@ -11,7 +11,7 @@ Here are 10 helpful tips for making the best impression you can in your video in
While so many of us are now working remotely and using Zoom or other platforms for our meetings, weve grown more accustomed to seeing people in their home settings, and noticing their home décor, pets, family members, and other aspects of their personal life in the background.
For an interview, its fine to be in your home or living room but try to present whatever people see as neutral and professional as possible. You want to let yourself and your words, conversation and experience speak most powerfully about your qualifications and suitability for the job. And you want to avoid the chance that your interviewer will be distracted by whats behind you, or perhaps have a negative reaction to any personal items (such as a plate of food behind you or a messy room) in your home.
For an interview, its fine to be in your home or living room but try to present whatever people see as neutral and professional as possible. You want to let yourself and your words, conversation and experience speak most powerfully about your qualifications and suitability for the job. And you want to avoid the chance that your interviewer will be distracted by whats behind you, or perhaps have a negative reaction to any personal items (such as a plate of food behind you or a messy room) in your home.
#### Select professional attire

View File

@ -1,7 +1,7 @@
---
slug: "/blog/ats-friendly-resumes"
date: "2020-07-14"
title: "ATS-Friendly Resumes"
slug: '/blog/ats-friendly-resumes'
date: '2020-07-14'
title: 'ATS-Friendly Resumes'
---
An ATS (Applicant Tracking System) is software used by companies to help them quickly evaluate potential candidates for any given job opening.
@ -42,5 +42,4 @@ Most ATS software is programmed to read more common typefaces. Using an unusual
#### 6. Save your resume as the proper file type
PDFs are the preferred file format for most companies today, and are easily understood by any modern applicant tracking system.
PDFs are the preferred file format for most companies today, and are easily understood by any modern applicant tracking system.

View File

@ -1,7 +1,7 @@
---
slug: "/blog/design-beautiful-resumes"
date: "2020-07-13"
title: "Designing Beautiful Resumes"
slug: '/blog/design-beautiful-resumes'
date: '2020-07-13'
title: 'Designing Beautiful Resumes'
---
Follow these 16 pro tips to help your design resume stand out from the crowd.
@ -89,4 +89,4 @@ If you're applying for multiple jobs, you should create multiple resumes, each t
#### 15. Check your spelling!
If you're getting this one wrong, you're in trouble
If you're applying for a job as a designer, does it matter how well you write? The simple answer is yes. Spelling and grammar mistakes will make you appear uneducated, ignorant and/or lazy and none of these represent the image you're trying to convey. So, always double-check your grammar and spelling, and get others to check it too (it's easy to miss your own mistakes)
If you're applying for a job as a designer, does it matter how well you write? The simple answer is yes. Spelling and grammar mistakes will make you appear uneducated, ignorant and/or lazy and none of these represent the image you're trying to convey. So, always double-check your grammar and spelling, and get others to check it too (it's easy to miss your own mistakes)

View File

@ -1,7 +1,7 @@
---
slug: "/blog/jobs-during-covid-19"
date: "2020-07-16"
title: "Jobs During COVID-19"
slug: '/blog/jobs-during-covid-19'
date: '2020-07-16'
title: 'Jobs During COVID-19'
---
As companies move to remote work to fight the coronavirus pandemic and an increasing number of workers are being laid off or furloughed, you might be wondering if you should continue to send out resumes or just assume that no one is hiring for the foreseeable future. Its true that economists are predicting a recession, but career experts say its best to keep networking and applying, provided you change your approach a bit to acknowledge these are uncertain times.
@ -35,4 +35,3 @@ Job seekers often jump at the first available opportunity or go into their searc
#### 6. Boost Your Skills
Now is the perfect time to work on bolstering your qualifications, Moser says. Analyze job descriptions by listing each required skill and experience. Then consider whether you have that exact skill, if you have the skill but havent used it in a few years, or if youre lacking the skill entirely. Use that information to determine what you need to brush up on to make yourself an even better candidate when the job market picks up again.

View File

@ -45,11 +45,14 @@ const List = ({
subtitle ||
get(x, subtitlePath, '') ||
(hasDate &&
formatDateRange({
startDate: x.startDate,
endDate: x.endDate,
language: i18n.language,
}, t))
formatDateRange(
{
startDate: x.startDate,
endDate: x.endDate,
language: i18n.language,
},
t,
))
}
text={text || get(x, textPath, '')}
onEdit={() => handleEdit(x)}

View File

@ -1,411 +1,346 @@
{
"awards": {
"heading": "Awards",
"items": [
{
"awarder": "Google",
"date": "2019-04-01",
"id": "6f857f2b-6312-4a0d-907d-2e17991954eb",
"summary": "",
"title": "International Flutter Hackathon"
},
{
"awarder": "Venturesity",
"date": "2016-06-01",
"id": "f6efa3f9-9741-4e36-a538-ba0d9779bc61",
"summary": "",
"title": "Venturesity Banyan Hack"
},
{
"awarder": "Govt. of India",
"date": "2017-04-01",
"id": "89c0171a-eae9-403e-9f4c-a757fb535c2b",
"summary": "",
"title": "Smart India Hackathon"
}
],
"visible": true
},
"certifications": {
"heading": "Certifications",
"items": [
{
"date": "2018-02-01",
"id": "d2ec12bc-7876-46bc-afd4-11ae06faf3bd",
"issuer": "Cisco Systems",
"summary": "",
"title": "CCNP"
},
{
"date": "2019-06-01",
"id": "f8312288-53ae-4504-a768-4b67aea95926",
"issuer": "VMWare",
"summary": "",
"title": "VCP6-DCV"
},
{
"date": "2014-04-01",
"id": "11107df6-5f3c-49ae-bcd4-62b8baa181a1",
"issuer": "Cisco Systems",
"summary": "",
"title": "DCUCI 642-999"
}
],
"visible": true
},
"education": {
"heading": "Education",
"items": [
{
"degree": "Masters",
"endDate": "2002-08-01",
"field": "Computer Science",
"gpa": "7.2 CGPA",
"id": "c42e2a5a-3f0d-497e-838b-ac2019dcf045",
"institution": "The City College of New York, NYC, NY",
"startDate": "2001-09-01",
"summary": ""
},
{
"degree": "Bachelors",
"endDate": "2001-08-01",
"field": "Computer Science",
"gpa": "8.4 CGPA",
"id": "278490a2-c327-4e83-8be8-adf913a9b36c",
"institution": "University of California, Berkeley, CA",
"startDate": "1997-09-01",
"summary": ""
}
],
"visible": true
},
"hobbies": {
"heading": "Hobbies",
"items": [
{
"id": "788dcf5a-78ca-4866-8397-c7a29073d9a1",
"name": "Poetry"
},
{
"id": "e3523371-f50c-4348-8c5e-35fe84c0006d",
"name": "Travelling"
},
{
"id": "92c35e3b-6cd7-4cea-b505-61347ec61b68",
"name": "Photography"
},
{
"id": "d36f2089-93a9-4f30-a425-3dd81c6b89df",
"name": "Playing Badminton"
},
{
"id": "d1da41a9-ae83-48fb-8047-d45ebd869a69",
"name": "Developing Reactive Resume"
}
],
"visible": true
},
"languages": {
"heading": "Languages",
"items": [
{
"fluency": "Very Fluent",
"id": "78d8cf32-84c7-431d-969b-fdf277968026",
"name": "English"
},
{
"fluency": "Native Tongue",
"id": "9e0bd5ed-b88d-4046-8fb9-ecba54d29924",
"name": "Tamil"
},
{
"fluency": "Native Tongue",
"id": "cb895aa9-c485-4bf3-a9e3-08e8f219451a",
"name": "Kannada"
},
{
"fluency": "Learning on Duolingo",
"id": "8fff60fc-0cd6-47e2-b64f-fb249d1af0d1",
"name": "German"
}
],
"visible": true
},
"metadata": {
"colors": {
"background": "#FFFFFF",
"primary": "#009688",
"text": "#212121"
},
"font": "Open Sans",
"language": "en",
"layout": {
"castform": [
[
"awards",
"certifications",
"languages",
"hobbies"
],
[
"objective",
"work",
"education",
"skills",
"projects",
"references"
]
],
"celebi": [
[
"awards",
"certifications",
"languages",
"hobbies"
],
[
"objective",
"work",
"education",
"skills",
"projects",
"references"
]
],
"gengar": [
[
"objective",
"skills"
],
[
"awards",
"certifications",
"languages",
"references",
"hobbies"
],
[
"work",
"education",
"projects"
]
],
"glalie": [
[
"awards",
"certifications",
"hobbies"
],
[
"objective",
"work",
"education",
"skills",
"projects",
"languages",
"references"
]
],
"onyx": [
[
"objective",
"work",
"education",
"projects"
],
[
"hobbies",
"languages",
"awards",
"certifications"
],
[
"skills",
"references"
]
],
"pikachu": [
[
"skills",
"languages",
"hobbies",
"awards",
"certifications"
],
[
"work",
"education",
"projects",
"references"
]
]
},
"template": "castform"
},
"objective": {
"body": "To obtain a job within my chosen field that will challenge me and allow me to use my education, skills and past experiences in a way that is mutually beneficial to both myself and my employer and allow for future growth and advancement.",
"heading": "Objective",
"visible": true
},
"preview": "https://images.unsplash.com/photo-1594483672645-895b77326094?crop=entropy&cs=tinysrgb&fit=crop&fm=jpg&h=600&ixid=eyJhcHBfaWQiOjF9&ixlib=rb-1.2.1&q=80&w=400",
"profile": {
"address": {
"city": "Bangalore, India -",
"line1": "#5/A, Banashankari Nivas,",
"line2": "Brindavan Layout, Subramanyapura,",
"pincode": "560061"
},
"email": "hello@amruthpillai.com",
"firstName": "Amruth",
"heading": "Profile",
"lastName": "Pillai",
"phone": "+91 98453 36113",
"photograph": "https://i.imgur.com/2dmLSCT.jpg",
"subtitle": "Full Stack Web Developer",
"website": "amruthpillai.com"
},
"projects": {
"heading": "Projects",
"items": [
{
"date": "2020-07-01",
"id": "c768dcca-90f5-4242-a608-6759b4f667fb",
"link": "https://github.com/AmruthPillai/Reactive-Resume",
"summary": "Reactive Resume, a free and open-source resume builder that works for you. A few of the important features that make it awesome are minimalistic UI/UX, extensive customizability, portability, regularly updated templates, etc.\n\nFor more information, check out [rxresu.me](https://github.com/AmruthPillai/Reactive-Resume)",
"title": "Reactive Resume"
},
{
"date": "2020-04-01",
"id": "6ca600b1-c21f-4d7b-8431-f7144d537dd3",
"link": "https://amruthpillai.com",
"summary": "Resume on the Web has been a project that I've been focused on since the early 2014s. I didn't want my information to be displayed on just a sheet of paper that only HRs or Talent Scouts had the privilege of reading, I wanted it to be accessible to everyone. And that's how this project was conceptualized.",
"title": "Resume on the Web"
}
],
"visible": true
},
"public": true,
"references": {
"heading": "References",
"items": [
{
"email": "willywonka@goldenticket.com",
"id": "168339fd-3c4b-4f2f-bd3a-ef184be81700",
"name": "Willy Wonka",
"phone": "+1 (802) 234-2398",
"position": "CEO at Chocolate Factory",
"summary": ""
},
{
"email": "elanmusk@nottesla.com",
"id": "350465b9-9989-43cc-b97e-4115b8980304",
"name": "Elangovan Musk",
"phone": "+91 93893 34353",
"position": "CEO at Newton Motors",
"summary": ""
},
{
"email": "l.beasley@carsonlogistics.com",
"id": "94e3447b-0a78-4fb7-b14d-591982d35320",
"name": "Lorraine Beasley",
"phone": "+1 661-808-4188",
"position": "Head of HR, Carson Logistics",
"summary": ""
}
],
"visible": true
},
"skills": {
"heading": "Skills",
"items": [
{
"id": "54e5bceb-d0e9-4f04-98d1-48a34f7cf920",
"level": "Advanced",
"name": "Customer Service Expertise"
},
{
"id": "f0274f62-2252-4cc0-bf12-9e1070942c50",
"level": "Intermediate",
"name": "High-Volume Call Center"
},
{
"id": "689e2852-df1b-4d41-bda8-c41c88196264",
"level": "Intermediate",
"name": "Team Leader/Problem Solver"
},
{
"id": "3a4f73b1-50c1-4a85-a4b0-2a55dfe5053a",
"level": "Novice",
"name": "Call Center Management"
},
{
"id": "08d6c739-1465-41f7-8825-b8d94faa38d6",
"level": "Novice",
"name": "Teambuilding & Training"
},
{
"id": "261b8fc3-aeec-4347-88a8-bcacb1a17aa3",
"level": "Fundamental Awareness",
"name": "Continuous Improvement"
}
],
"visible": true
},
"social": {
"heading": "Social Network",
"items": [
{
"id": "a832b37d-f11d-4a80-8b4d-24796e571b17",
"network": "Instagram",
"url": "https://pillai.xyz/instagram",
"username": "AmruthPillai"
},
{
"id": "a72107fa-a4a5-407d-9e85-39bdb9c0b11a",
"network": "Twitter",
"url": "https://pillai.xyz/twitter",
"username": "KingOKings"
},
{
"id": "1dd46fdd-b3a3-4786-89ce-2e77c0823aba",
"network": "LinkedIn",
"url": "https://pillai.xyz/linkedin",
"username": "AmruthPillai"
}
],
"visible": true
},
"work": {
"heading": "Work Experience",
"items": [
{
"company": "On Point Electronics, NYC, NY",
"endDate": "2018-07-01",
"id": "d7c64937-0cb9-41b1-a3a6-0679c882fe63",
"position": "Customer Service Representative",
"startDate": "2013-01-01",
"summary": "- Organized customer information and account data for business planning and customer service purposes.\n- Created excel spreadsheets to track customer data and perform intense reconciliation process.\n- Received 97% positive customer survey results.\n- Speed on calls was 10% above team average. \n**Key Achievement:** Designed and executed an automatized system for following up with customers, increasing customer retention by 22%.",
"website": "https://onpoint.com"
},
{
"company": "Excelsior Communications, NYC, NY",
"endDate": "2012-12-01",
"id": "f5c5dcfe-2a60-4169-a2f1-b305355518ea",
"position": "Customer Service Representative",
"startDate": "2009-10-01",
"summary": "- Worked as a full time customer service rep in a high volume call center.\n- Received \"Associate of the Month\" award six times.\n- Chosen as an example for other associates in trainings. \n**Key Achievement:** Received Customer Appreciation bonus in three of four years.",
"website": "https://excelsior.com"
},
{
"company": "Pizza Hut, Newark, NJ",
"endDate": "2009-09-01",
"id": "dd935088-6fe7-4a4b-8ff5-7417c32d2add",
"position": "Waiter",
"startDate": "2005-08-01",
"summary": "- Worked passionately in customer service in a high volume restaurant.\n- Completed the FAST customer service training class.\n- Maintained a high tip average thanks to consistent customer satisfaction.",
"website": "https://pizzahut.com"
}
],
"visible": true
}
}
"awards": {
"heading": "Awards",
"items": [
{
"awarder": "Google",
"date": "2019-04-01",
"id": "6f857f2b-6312-4a0d-907d-2e17991954eb",
"summary": "",
"title": "International Flutter Hackathon"
},
{
"awarder": "Venturesity",
"date": "2016-06-01",
"id": "f6efa3f9-9741-4e36-a538-ba0d9779bc61",
"summary": "",
"title": "Venturesity Banyan Hack"
},
{
"awarder": "Govt. of India",
"date": "2017-04-01",
"id": "89c0171a-eae9-403e-9f4c-a757fb535c2b",
"summary": "",
"title": "Smart India Hackathon"
}
],
"visible": true
},
"certifications": {
"heading": "Certifications",
"items": [
{
"date": "2018-02-01",
"id": "d2ec12bc-7876-46bc-afd4-11ae06faf3bd",
"issuer": "Cisco Systems",
"summary": "",
"title": "CCNP"
},
{
"date": "2019-06-01",
"id": "f8312288-53ae-4504-a768-4b67aea95926",
"issuer": "VMWare",
"summary": "",
"title": "VCP6-DCV"
},
{
"date": "2014-04-01",
"id": "11107df6-5f3c-49ae-bcd4-62b8baa181a1",
"issuer": "Cisco Systems",
"summary": "",
"title": "DCUCI 642-999"
}
],
"visible": true
},
"education": {
"heading": "Education",
"items": [
{
"degree": "Masters",
"endDate": "2002-08-01",
"field": "Computer Science",
"gpa": "7.2 CGPA",
"id": "c42e2a5a-3f0d-497e-838b-ac2019dcf045",
"institution": "The City College of New York, NYC, NY",
"startDate": "2001-09-01",
"summary": ""
},
{
"degree": "Bachelors",
"endDate": "2001-08-01",
"field": "Computer Science",
"gpa": "8.4 CGPA",
"id": "278490a2-c327-4e83-8be8-adf913a9b36c",
"institution": "University of California, Berkeley, CA",
"startDate": "1997-09-01",
"summary": ""
}
],
"visible": true
},
"hobbies": {
"heading": "Hobbies",
"items": [
{
"id": "788dcf5a-78ca-4866-8397-c7a29073d9a1",
"name": "Poetry"
},
{
"id": "e3523371-f50c-4348-8c5e-35fe84c0006d",
"name": "Travelling"
},
{
"id": "92c35e3b-6cd7-4cea-b505-61347ec61b68",
"name": "Photography"
},
{
"id": "d36f2089-93a9-4f30-a425-3dd81c6b89df",
"name": "Playing Badminton"
},
{
"id": "d1da41a9-ae83-48fb-8047-d45ebd869a69",
"name": "Developing Reactive Resume"
}
],
"visible": true
},
"languages": {
"heading": "Languages",
"items": [
{
"fluency": "Very Fluent",
"id": "78d8cf32-84c7-431d-969b-fdf277968026",
"name": "English"
},
{
"fluency": "Native Tongue",
"id": "9e0bd5ed-b88d-4046-8fb9-ecba54d29924",
"name": "Tamil"
},
{
"fluency": "Native Tongue",
"id": "cb895aa9-c485-4bf3-a9e3-08e8f219451a",
"name": "Kannada"
},
{
"fluency": "Learning on Duolingo",
"id": "8fff60fc-0cd6-47e2-b64f-fb249d1af0d1",
"name": "German"
}
],
"visible": true
},
"metadata": {
"colors": {
"background": "#FFFFFF",
"primary": "#009688",
"text": "#212121"
},
"font": "Open Sans",
"language": "en",
"layout": {
"castform": [
["awards", "certifications", "languages", "hobbies"],
["objective", "work", "education", "skills", "projects", "references"]
],
"celebi": [
["awards", "certifications", "languages", "hobbies"],
["objective", "work", "education", "skills", "projects", "references"]
],
"gengar": [
["objective", "skills"],
["awards", "certifications", "languages", "references", "hobbies"],
["work", "education", "projects"]
],
"glalie": [
["awards", "certifications", "hobbies"],
[
"objective",
"work",
"education",
"skills",
"projects",
"languages",
"references"
]
],
"onyx": [
["objective", "work", "education", "projects"],
["hobbies", "languages", "awards", "certifications"],
["skills", "references"]
],
"pikachu": [
["skills", "languages", "hobbies", "awards", "certifications"],
["work", "education", "projects", "references"]
]
},
"template": "castform"
},
"objective": {
"body": "To obtain a job within my chosen field that will challenge me and allow me to use my education, skills and past experiences in a way that is mutually beneficial to both myself and my employer and allow for future growth and advancement.",
"heading": "Objective",
"visible": true
},
"preview": "https://images.unsplash.com/photo-1594483672645-895b77326094?crop=entropy&cs=tinysrgb&fit=crop&fm=jpg&h=600&ixid=eyJhcHBfaWQiOjF9&ixlib=rb-1.2.1&q=80&w=400",
"profile": {
"address": {
"city": "Bangalore, India -",
"line1": "#5/A, Banashankari Nivas,",
"line2": "Brindavan Layout, Subramanyapura,",
"pincode": "560061"
},
"email": "hello@amruthpillai.com",
"firstName": "Amruth",
"heading": "Profile",
"lastName": "Pillai",
"phone": "+91 98453 36113",
"photograph": "https://i.imgur.com/2dmLSCT.jpg",
"subtitle": "Full Stack Web Developer",
"website": "amruthpillai.com"
},
"projects": {
"heading": "Projects",
"items": [
{
"date": "2020-07-01",
"id": "c768dcca-90f5-4242-a608-6759b4f667fb",
"link": "https://github.com/AmruthPillai/Reactive-Resume",
"summary": "Reactive Resume, a free and open-source resume builder that works for you. A few of the important features that make it awesome are minimalistic UI/UX, extensive customizability, portability, regularly updated templates, etc.\n\nFor more information, check out [rxresu.me](https://github.com/AmruthPillai/Reactive-Resume)",
"title": "Reactive Resume"
},
{
"date": "2020-04-01",
"id": "6ca600b1-c21f-4d7b-8431-f7144d537dd3",
"link": "https://amruthpillai.com",
"summary": "Resume on the Web has been a project that I've been focused on since the early 2014s. I didn't want my information to be displayed on just a sheet of paper that only HRs or Talent Scouts had the privilege of reading, I wanted it to be accessible to everyone. And that's how this project was conceptualized.",
"title": "Resume on the Web"
}
],
"visible": true
},
"public": true,
"references": {
"heading": "References",
"items": [
{
"email": "willywonka@goldenticket.com",
"id": "168339fd-3c4b-4f2f-bd3a-ef184be81700",
"name": "Willy Wonka",
"phone": "+1 (802) 234-2398",
"position": "CEO at Chocolate Factory",
"summary": ""
},
{
"email": "elanmusk@nottesla.com",
"id": "350465b9-9989-43cc-b97e-4115b8980304",
"name": "Elangovan Musk",
"phone": "+91 93893 34353",
"position": "CEO at Newton Motors",
"summary": ""
},
{
"email": "l.beasley@carsonlogistics.com",
"id": "94e3447b-0a78-4fb7-b14d-591982d35320",
"name": "Lorraine Beasley",
"phone": "+1 661-808-4188",
"position": "Head of HR, Carson Logistics",
"summary": ""
}
],
"visible": true
},
"skills": {
"heading": "Skills",
"items": [
{
"id": "54e5bceb-d0e9-4f04-98d1-48a34f7cf920",
"level": "Advanced",
"name": "Customer Service Expertise"
},
{
"id": "f0274f62-2252-4cc0-bf12-9e1070942c50",
"level": "Intermediate",
"name": "High-Volume Call Center"
},
{
"id": "689e2852-df1b-4d41-bda8-c41c88196264",
"level": "Intermediate",
"name": "Team Leader/Problem Solver"
},
{
"id": "3a4f73b1-50c1-4a85-a4b0-2a55dfe5053a",
"level": "Novice",
"name": "Call Center Management"
},
{
"id": "08d6c739-1465-41f7-8825-b8d94faa38d6",
"level": "Novice",
"name": "Teambuilding & Training"
},
{
"id": "261b8fc3-aeec-4347-88a8-bcacb1a17aa3",
"level": "Fundamental Awareness",
"name": "Continuous Improvement"
}
],
"visible": true
},
"social": {
"heading": "Social Network",
"items": [
{
"id": "a832b37d-f11d-4a80-8b4d-24796e571b17",
"network": "Instagram",
"url": "https://pillai.xyz/instagram",
"username": "AmruthPillai"
},
{
"id": "a72107fa-a4a5-407d-9e85-39bdb9c0b11a",
"network": "Twitter",
"url": "https://pillai.xyz/twitter",
"username": "KingOKings"
},
{
"id": "1dd46fdd-b3a3-4786-89ce-2e77c0823aba",
"network": "LinkedIn",
"url": "https://pillai.xyz/linkedin",
"username": "AmruthPillai"
}
],
"visible": true
},
"work": {
"heading": "Work Experience",
"items": [
{
"company": "On Point Electronics, NYC, NY",
"endDate": "2018-07-01",
"id": "d7c64937-0cb9-41b1-a3a6-0679c882fe63",
"position": "Customer Service Representative",
"startDate": "2013-01-01",
"summary": "- Organized customer information and account data for business planning and customer service purposes.\n- Created excel spreadsheets to track customer data and perform intense reconciliation process.\n- Received 97% positive customer survey results.\n- Speed on calls was 10% above team average. \n**Key Achievement:** Designed and executed an automatized system for following up with customers, increasing customer retention by 22%.",
"website": "https://onpoint.com"
},
{
"company": "Excelsior Communications, NYC, NY",
"endDate": "2012-12-01",
"id": "f5c5dcfe-2a60-4169-a2f1-b305355518ea",
"position": "Customer Service Representative",
"startDate": "2009-10-01",
"summary": "- Worked as a full time customer service rep in a high volume call center.\n- Received \"Associate of the Month\" award six times.\n- Chosen as an example for other associates in trainings. \n**Key Achievement:** Received Customer Appreciation bonus in three of four years.",
"website": "https://excelsior.com"
},
{
"company": "Pizza Hut, Newark, NJ",
"endDate": "2009-09-01",
"id": "dd935088-6fe7-4a4b-8ff5-7417c32d2add",
"position": "Waiter",
"startDate": "2005-08-01",
"summary": "- Worked passionately in customer service in a high volume restaurant.\n- Completed the FAST customer service training class.\n- Maintained a high tip average thanks to consistent customer satisfaction.",
"website": "https://pizzahut.com"
}
],
"visible": true
}
}

View File

@ -94,7 +94,15 @@
],
"glalie": [
["awards", "certifications", "hobbies"],
["objective", "work", "education", "skills", "projects", "languages", "references"]
[
"objective",
"work",
"education",
"skills",
"projects",
"languages",
"references"
]
],
"celebi": [
["awards", "certifications", "languages", "hobbies"],

View File

@ -3,14 +3,14 @@ import { initReactI18next } from 'react-i18next';
import resources from './locales';
const languages = [
{
code: 'zh',
name: 'Chinese Simplified (简体中文)',
},
{
code: 'ar',
name: 'Arabic (عربى)',
},
{
code: 'zh',
name: 'Chinese Simplified (简体中文)',
},
{
code: 'da',
name: 'Danish (Dansk)',
@ -51,6 +51,10 @@ const languages = [
code: 'ptBr',
name: 'Portuguese (Brazilian)',
},
{
code: 'ptPt',
name: 'Portuguese (Portugal)',
},
{
code: 'es',
name: 'Spanish (Español)',

View File

@ -1,4 +1,3 @@
import zh from './zh.json';
import ar from './ar.json';
import da from './da.json';
import de from './de.json';
@ -11,11 +10,13 @@ import kn from './kn.json';
import nb from './nb.json';
import nl from './nl.json';
import ptBr from './pt-br.json';
import ptPt from './pt-pt.json';
import tr from './tr.json';
import zh from './zh.json';
export default {
zh: { translation: zh },
ar: { translation: ar },
zh: { translation: zh },
da: { translation: da },
de: { translation: de },
en: { translation: en },
@ -27,5 +28,6 @@ export default {
nb: { translation: nb },
nl: { translation: nl },
ptBr: { translation: ptBr },
ptPt: { translation: ptPt },
tr: { translation: tr },
};

View File

@ -19,11 +19,14 @@ const EducationItem = ({ item, language }) => {
{item.startDate && (
<h6 className="text-xs font-medium mb-1">
(
{formatDateRange({
startDate: item.startDate,
endDate: item.endDate,
language,
}, t)}
{formatDateRange(
{
startDate: item.startDate,
endDate: item.endDate,
language,
},
t,
)}
)
</h6>
)}
@ -31,7 +34,10 @@ const EducationItem = ({ item, language }) => {
</div>
</div>
{item.summary && (
<ReactMarkdown className="markdown mt-2 text-sm" source={item.summary} />
<ReactMarkdown
className="markdown mt-2 text-sm"
source={item.summary}
/>
)}
</div>
);

View File

@ -16,17 +16,23 @@ const WorkItem = ({ item, language }) => {
{item.startDate && (
<h6 className="text-xs font-medium text-right">
(
{formatDateRange({
startDate: item.startDate,
endDate: item.endDate,
language,
}, t)}
{formatDateRange(
{
startDate: item.startDate,
endDate: item.endDate,
language,
},
t,
)}
)
</h6>
)}
</div>
{item.summary && (
<ReactMarkdown className="markdown mt-2 text-sm" source={item.summary} />
<ReactMarkdown
className="markdown mt-2 text-sm"
source={item.summary}
/>
)}
</div>
);

View File

@ -1,5 +1,6 @@
import dayjs from 'dayjs';
import 'dayjs/locale/ar';
import 'dayjs/locale/zh';
import 'dayjs/locale/da';
import 'dayjs/locale/de';
import 'dayjs/locale/en';