- HTML + EJS
- CSS + SASS
- JavaScript
- Webpack
- PostCSS
- Autoprefixer
- JSON data files
- Node v20
- Clone repository
- Install dependencies
npm install
- Start development server
npm run dev
The skills list is stored in src/data/skills.json
in the following format
{
// List of programming languages
"languages": [ "..." ],
// List of software frameworks
"frameworks": [ "..." ],
// List of other tools, platforms and techniques
"other": [ "..." ]
}
Similarly projects are stored in src/data/projects.json
[
{
"name": "Project name",
"company": "Company name",
"start_date": "Month Year (eg: December 2018)",
"end_date": "Month Year (eg: December 2018)",
"image_set": [
"path/to/image.png",
"path/to/another-image.png",
],
"description": "Text to be displayed in project stub",
"notes": [
"Items to be displayed below description"
],
"tags": [
"List of technologies"
],
"links": [
{
"title": "Link description",
"url": "https://example.com"
}
]
},
Run npm run deploy
to deploy the latest changes to Github Pages.
This site was once written in Angular 1 because that was the first frontend framework I had learnt. It has since been migrated away to plain JavaScript with Handlebars templates, then migrated again to EJS.
I felt like a framework may be overkill for what this is doing. Maybe that'll change one day :D
This project uses Architecture Decision Records to capture the rationale behind architecturally significant decisions. They can be found at doc/architecture/decisions