Skip to content

daniel7grant/cv

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

75 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CV

A JSON-generated CV website using modern JavaScript and CSS animations.

Used technologies

This repository contains both server-side and client-side code. The server is a minimalistic Node.js-based Express server (one could argue if it is necessary for a static page, but I like my nice routes).

On the client-side, my build tool of choice is Webpack. I mostly used it to transpile modern sources to plain HTML, CSS and JS. For templating, I use Handlebars, the themes were generated by SCSS. The JavaScript as minimal as it can be was written with ES6 syntax using a functional approach. Special thanks to MopTym's DoSlide and zenorocha's clipboard.js for making me not write a slider and a clipboard with native sources.

I purloined the icons from multiple sources, including devicon and vendor-icons-svg.

The images are mine, including the overfiltered cover image. You can create your own with Gimp filters (probably the Newsprint filter).

Deployment

Installation

After you cloned the repository, you have to install both server-side and client-side packages (you have to have node installed on your computer).

npm install
cd public
npm install

Running

For running you have to compile the sources to the dist/ folder.

webpack -p --progress

Then you just run the index.js with node. You can change ports with the PORT environmental variable, if you want it (default is 8082).

node index.js
PORT=80 node index.js	# Might differ depending on the OS

For actual deployment, I advise to wrap the node scripts into a systemd unit, with NGINX reverse proxy mapping the domain name to the node server.

Change the content

You can change the content of the page without any knowledge in coding by modifying the content.js JSON file. Recompile your sorces with webpack after you finished.

If you use the page, please pay me a mention.