Hi, I'm Stefan and this project contains the codebase for my website stefan-girlich.github.io. Feel free to fork and customize it for your own purposes under the given license.
The website represents my CV including previous jobs in my career, current skills and my professional goals and motivation.
- Responsive layout with breakpoints for desktop, tablet and mobile viewports
- Customizable theme and content
- Optimized for performance, SEO and accessibility via Lighthouse
- Tested on latest desktop and mobile versions of Chrome, Firefox and Safari (as of April 2022)
If you plan to use this codebase for your own website, please first read "Customization" below.
- Make sure you have Node.js (>=v16.14.2) installed. Installation via nvm is recommended
- Make sure you have Yarn (>=v1.22.18) installed
- Clone this repository to a local machine and
cd
into the local working copy - Run
yarn install
to install all dependencies - You may now
- run
yarn start
to run a local development server - run
yarn deploy
to build the website and deploy it to GitHub pages - run
yarn build
to create a bundle for manual deployment
- run
This section describes the standard approach to using this codebase as a template. Feel free to modify and re-use the codebase in any way you like under the given license.
- Prepare the following assets:
- a font from Fontsource
- icons for the "motivation" section from Font Awesome Free
- a color palette, e.g. from coolors
- a full set of favicon files, e.g. via favicon.io
- Fork this GitHub project to create a new project named
<your-github-user-name>.github.io
- In
package.json
, update the value ofhomepage
tohttps://<your-github-user-name>.github.io
- Follow the Installation steps above using your own fork
- Install your own web font
- In
package.json
, replace the dependency starting with@fontsource
with the package name of your chosen font - In
index.css
, update the value forfont-family
to your chosen font - In
index.tsx
, update the import starting with@fontsource
to reflect the package for your chosen font
- In
- Install your own icons
- Search for files containing an import from
'@fortawesome/fontawesome-svg-core/import.macro'
, e.g. importing thesolid
function - In each file, apply your own icon's names (e.g.
solid('camera')
). Icon names are defined by Font Awesome - In the
public
directory, replace all.png
,.ico
and.svg
files with your own favicon files
- Search for files containing an import from
- Apply your own theme
- Apply your own text content
- In
index.html
, apply your own texts for the<title>
and<meta name="description">
tags - In
manifest.json
, updatename
andshort_name
- In
data.json
, apply your own CV information and general UI labels
- In
- Run
yarn install
to update changed dependencies - Run
yarn start
to see the changes in a local web browser or proceed with one of the other final steps from the Installation section
- Most text values in
data.json
require special characters to be provided as Unicode characters, but some may contain HTML entities since they currently contain e.g.<a>
tags - Some information (e.g. page title) needs to be defined in
index.html
andmanifest.json
rather than indata.json
- Font Awesome icons cannot be defined via
data.json
since Dynamic Icon Importing requires string literals to be used - The website has not been tested with right-to-left (RTL) layouts
- The website does not yet comply with the JSON Resume standard
This project is licensed under GPL v3.