This is a simple, minimal and responsive personal website template, built using vue-js, html and css.
💻 Live demo
These are the local dependencies that are needed for development,
Get this repo to your local machine using,
$ git clone https://github.com/hrishikeshpaul/portfolio-template.git
To install the node packages used in the project:
$ cd portfolio-template
$ npm install
Compiles and hot-reloads for development
$ npm run serve
Compiles and minifies for production
$ npm run build
Error: error:0308010C:digital envelope routines::unsupported Đây là lỗi phổ biến khi chạy Webpack (hoặc các công cụ build như vue-cli, react-scripts) với Node.js v17 hoặc v18+, do OpenSSL 3.0 thay đổi cơ chế mã hóa. export NODE_OPTIONS=–openssl-legacy-provider —
A few notable elements that makes the website intuitive to use,
| # | Feature | Screenshot |
| - | - | - |
| 1 |Timeline: Educations and Experiences are the in a timeline format. It shows most of the important details, a small description, and certain important keywords. The code to the timeline component can be found in /src/components/helpers/Timeline.vue
, that is placed in the About.vue
component.| |
| 2 |Skills: These display your skills by grouping them together. Along with a logo to depict each group, gives a great perception experience. The code to the skills component can be found in
/src/components/Skills.vue
.| |
| 3 |Portfolio: This is the place where you can show off your work samples. It uses responsive cards to display a snippet of your work along with some important tags and a small description. Additional, it also gives you the option to read more, or visit your work sample. Upon clicking read more, a modal dialog is opened, that enlists all the details of your work sample. It also has a gallery that shows various snippets of your work. The code to the portfolio component can be found in
/src/components/Portfolio.vue
, with the respective components, /helper/Card.vue
, /helper/Modal.vue
and /helper/Gallery.vue
| |
| 4 | Contact: A contact form has been added to recieve feedback or any sort of message. This form uses an API called emailjs. A detailed guide to set up your own emailing service is mentioned below (don’t worry, it’s free). All the code for the contact form can be found in
src/components/Contact.vue
| |
This section goes over the tweaks that need to be made, and where can they be made. It also talks about the free emailing service that is been used.
All the information on the template is present in info.js
that can be found in the root director, or here. This consists of various parameters that handle the information on the website. To add your own information, just edit the contents of this file, and the changes should be noticed. All the pictures need ot be present in /src/assets
(or you can configure the path in the info.js file).
The contact section of the template makes use of this API called emailjs. It is a good service that provides 200 email free every month. You will need to configure your own emailjs account for the service to work.
New message from !
You got a new message from :
}
My contact is: . ``` You can configure this however you want, but the attributes in the `` need to be those.
config.js
in the root of the project. You’ll notice that the .gitignore
has the name of this file. This is where all the data that links your web app to emailjs will be stores.let config = {
emailjs: {
serviceID: '<serviceID>',
templateID: '<templateID>',
userID: '<userID>'
}
}
export default config;
Email Services
Email Templates
Account
> API Keys
Make sure your
config.js
is in.gitignore
as you do not want to expose your keys to the public.
https://github.com/hrishikeshpaul/portfolio-template.git
https://github.com/hrishikeshpaul/portfolio-template/compare/
Reach out to me at one of the following places!
https://hrishikeshpaul.github.io/
hrishikeshpaul