https://github.com/daniel7grant/cv
CV website
https://github.com/daniel7grant/cv
cv-website handlebars javascript scss webpack
Last synced: 14 days ago
JSON representation
CV website
- Host: GitHub
- URL: https://github.com/daniel7grant/cv
- Owner: daniel7grant
- License: mit
- Created: 2018-05-05T03:11:20.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2025-12-22T12:38:18.000Z (20 days ago)
- Last Synced: 2025-12-23T23:43:22.423Z (19 days ago)
- Topics: cv-website, handlebars, javascript, scss, webpack
- Language: JavaScript
- Homepage: https://cv.danielgrants.com
- Size: 68.6 MB
- Stars: 5
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 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](https://github.com/MopTym/doSlide) and zenorocha's [clipboard.js](https://github.com/zenorocha/clipboard.js) for making me not write a slider and a clipboard with native sources.
I purloined the icons from multiple sources, including [devicon](https://github.com/konpa/devicon) and [vendor-icons-svg](https://github.com/bobthebutcher/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).
```bash
npm install
cd public
npm install
```
### Running
For running you have to compile the sources to the `dist/` folder.
```bash
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).
```bash
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.