Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
699efa8
Added Video for Caved In
Dylan-KA Jul 17, 2025
6f8ee5b
Merge branch 'dev'
Dylan-KA Jul 24, 2025
500f99d
Fix merge issues
Dylan-KA Jul 24, 2025
301b139
Improved mobile scaling
Dylan-KA Jul 26, 2025
6855fd4
Improved image nav buttons
Dylan-KA Jul 26, 2025
6adec62
Minor updates
Dylan-KA Jul 26, 2025
09b6204
Update degree information in About Me section
Dylan-KA Jul 31, 2025
553d044
Added itch embedded links
Dylan-KA Sep 4, 2025
fde2155
Changed colour of itch embeds
Dylan-KA Sep 4, 2025
9a37436
Add multi-level dropdown navigation for projects
Dylan-KA Sep 6, 2025
ae6ecf5
Removed email & phone number
Dylan-KA Sep 6, 2025
c82dff0
Refactor CSS structure by modularizing styles into separate files for…
Dylan-KA Nov 2, 2025
f2cb1ab
Revert "Refactor CSS structure by modularizing styles into separate f…
Dylan-KA Nov 2, 2025
8397e6c
Fixed CSS refactor (forget to add passthrough copy
Dylan-KA Nov 2, 2025
ca0c5f4
Add BUILDING.md for site setup and deployment instructions
Dylan-KA Nov 2, 2025
4023110
Merge pull request #2 from Dylan-KA/wip/detached-ca0c5f4
Dylan-KA Nov 2, 2025
214a785
Moved html into its own folder
Dylan-KA Nov 2, 2025
1faaa21
Refactored css again
Dylan-KA Nov 20, 2025
8169339
Refactored to use Nunjucks templating, moved projects to JSON file
Dylan-KA Nov 23, 2025
8e71b7b
BUILDING.md -> README.md
Dylan-KA Nov 23, 2025
5fe9bb2
updated README.md
Dylan-KA Nov 23, 2025
fcfe7be
Removed unnecessary contact page
Dylan-KA Nov 29, 2025
3015fbb
Updated Resume
Dylan-KA Nov 29, 2025
2240d7b
Added Snaked Together
Dylan-KA Nov 30, 2025
7ce3c65
Updated link to open in new tab
Dylan-KA Nov 30, 2025
e78c4fb
Removed Skills from home page
Dylan-KA Apr 4, 2026
f4d21da
Redesign portfolio with dark theme and improved UX
Dylan-KA Jul 8, 2026
718b818
Add theme toggle, back-to-top & UI refinements
Dylan-KA Jul 8, 2026
612660c
Fix Project pages + other fixes
Dylan-KA Jul 9, 2026
e2e6745
Add nested project dropdowns and enhance UI animations
Dylan-KA Jul 9, 2026
e4e6519
Update GitHub Actions to Node.js 24 compatible versions
Dylan-KA Jul 9, 2026
680734e
Minor stylng bug fixes & improvments
Dylan-KA Jul 18, 2026
3750b24
Missed one thing
Dylan-KA Jul 18, 2026
adb912e
Enhance site configuration and SEO
Dylan-KA Jul 19, 2026
c283d81
Fixed favicon
Dylan-KA Jul 19, 2026
11374bc
Fix header nav menu drop-down styling
Dylan-KA Jul 19, 2026
565c69b
Optimised images. Total size dropped from ~100.8 MB → ~8.6 MB (~91% r…
Dylan-KA Jul 19, 2026
6ab8170
Optimised images. Forgot to stage changes
Dylan-KA Jul 19, 2026
315c213
Optimize CSS loading
Dylan-KA Jul 19, 2026
2e48b3f
Add llms.txt
Dylan-KA Jul 19, 2026
9edc9ba
Fixed broken image from webp conversion
Dylan-KA Jul 25, 2026
f96d191
Add HTML resume source and PDF build script
Dylan-KA Sep 19, 2026
ac57905
Add Daniel Pazin's company to resume reference
Dylan-KA Sep 19, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
180 changes: 36 additions & 144 deletions .eleventy.js
Original file line number Diff line number Diff line change
@@ -1,152 +1,44 @@
module.exports = function(eleventyConfig) {
const fs = require("fs");
const path = require("path");

const CSS_BUNDLE_FILES = [
"css/base.css",
"css/header-and-profile.css",
"css/buttons-and-dropdowns.css",
"css/projects.css",
"css/footer.css",
"css/utilities.css"
];

function bundleCss() {
const bundled = CSS_BUNDLE_FILES
.map((file) => fs.readFileSync(path.join(__dirname, file), "utf8"))
.join("\n");
fs.writeFileSync(path.join(__dirname, "stylesheet.css"), bundled);
}

module.exports = function (eleventyConfig) {
eleventyConfig.addPassthroughCopy("Images");
eleventyConfig.addPassthroughCopy("Scripts");
eleventyConfig.addPassthroughCopy("stylesheet.css");
eleventyConfig.addPassthroughCopy("Resume.pdf");
eleventyConfig.addPassthroughCopy("robots.txt");
eleventyConfig.addPassthroughCopy("llms.txt");
eleventyConfig.addWatchTarget("css");
eleventyConfig.on("eleventy.before", bundleCss);

eleventyConfig.addShortcode("ProjectCard", function(link, img, title, logo1, logo2, logo3, description) {
let logos = '';
if (logo3) {
logos = `
<img src="${logo3}" style="width:30px; float:right; margin-left: 5px; margin-top: 2px; border-radius: 10px;">
<img src="${logo2}" style="width:30px; float:right; margin-left: 5px;">
<img src="${logo1}" style="width:30px; float:right;">
`;
} else if (logo2) {
logos = `
<img src="${logo2}" style="width:30px; float:right; margin-left: 5px;">
<img src="${logo1}" style="width:30px; float:right;">
`;
} else if (logo1) {
logos = `
<img src="${logo1}" style="width:30px; float:right;">
`;
}

return `<div class="project-item-outer">
<a href="${link}" style="display: inline-block;">
<img src="${img}">
</a>
<div class="project-item-inner">
<h3 class="project-title">
<a href="${link}">${title}</a>
${logos}
</h3>
<p>${description}</p>
<a href="${link}" class="project-learn-more">Learn More</a>
</div>
</div>`;
});

eleventyConfig.addShortcode("NavigationButtons", function() {
return `<div>
<button onclick="window.location.href='index.html'" class="medium">About Me</button>
<div class="dropdown">
<button onclick="window.location.href='index.html#projects'" class="dropbtn medium">Projects</button>
<div class="dropdown-content">
<a href="index.html#game-projects">Game Development</a>
<a href="index.html#web-projects">Web Development</a>
<a href="index.html#mobile-projects">Mobile Development</a>
<a href="index.html#3d-projects">Modelling & Animation</a>
<a href="index.html#other-projects">Other Projects</a>
</div>
</div>
<button onclick="window.location.href='Contact.html'" class="medium">Contact</button>
</div>`;
});

eleventyConfig.addShortcode("Footer", function() {
const year = new Date().getFullYear();
return `<footer class="container ">
<div>
<p>
© ${year} Dylan Archer.
</p>
<a href="https://github.com/dylan-ka" target="_blank" class="social-icon-white">
<img width="30px" class="footer-href" src="Images/Logos/GitHubLogo.png">
</a>
<a href="https://dylanka.itch.io/" target="_blank" class="social-icon-white">
<img width="30px" class="footer-href" src="Images/Logos/ItchLogo.webp">
</a>
<a href="https://www.linkedin.com/in/dylan-archer-44a783338/" target="_blank" class="social-icon-white">
<img width="30px" class="footer-href" src="Images/Logos/LinkedInLogo.webp">
</a>
</div>
</footer>`;
});

eleventyConfig.addShortcode("Sidebar", function() {
return `<nav style="z-index:3;width:300px;" id="mySidebar"><br>
<div class="container">
<a href="#" onclick="" title="close menu">
</i>
</a>
<img src="Images/ProfilePicture.jpeg" style="width:100%;" ><br><br>
<h4>Portfolio</h4>
</div>
<div>
<a href="index.html#about"></i><b>About Me</b></a>
<a href="index.html#game-projects">
</i><b>Game Projects</b>
</a>
<a href="DualWield.html" class="button nested-link">Dual Wield</a>
<a href="Caved-In.html" class="button nested-link">Caved In</a>
<a href="PacStudent.html" class="button nested-link">PacStudent</a>
<a href="Wormy.html" class="button nested-link">Wormy</a>

<a href="index.html#web-projects">
</i><b>Web Projects</b>
</a>
<a href="GroceryStore.html" class="button nested-link">Online Grocery Store</a>
<a href="CarRentalSystem.html" class="button nested-link">Online Car Rental</a>

<a href="index.html#mobile-projects">
</i><b>Mobile Projects</b>
</a>
<a href="Quiz-App.html" class="button nested-link">Quiz App</a>
<a href="OnTaskPro.html" class="button nested-link">Task Tracker App</a>

<a href="index.html#3d-projects">
</i><b>3D Creative</b>
</a>
<a href="Blender.html" class="button nested-link">3D Modelling Project</a>
<a href="3DAnim.html" class="button nested-link">Unity 3D Animation</a>

<a href="index.html#other-projects">
</i><b>Other Projects</b>
</a>
<a href="ClashOfCommands.html" class="button nested-link">Clash of Commands</a>
<a href="Contact.html"></i><b>Contact</b></a>
</div>
</nav>`;
});

eleventyConfig.addShortcode("Contact", function() {
return `<hr>
<div class="container">
<h4 id="contact"><b>Contact Me</h4>
<div style="margin:0 -16px">
<div>
<p></i></p>
<p><span>dylanka3@gmail.com</span></p>
</div>
<div>
<p></i></p>
<p>Sydney, Australia</p>
</div>
<div>
<p></i></p>
<p><span>(+61) 468 432 861</span></p>
</div>
</div>
<hr >
</div>`;
});
eleventyConfig.addFilter("encodeUri", (value) => encodeURI(value));

return {
dir: {
input: ".",
output: "_site"
}
dir: {
input: ".",
output: "_site",
includes: "_includes",
data: "_data"
},
templateFormats: ["html", "njk", "md"],
markdownTemplateEngine: "njk",
htmlTemplateEngine: "njk",
dataTemplateEngine: "njk"
};
};
};
2 changes: 2 additions & 0 deletions .eleventyignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
README.md
resume/
8 changes: 4 additions & 4 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@ jobs:

steps:
- name: Checkout code
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Set up Node.js
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
node-version: 18
node-version: 20

- name: Install dependencies
run: npm ci
Expand All @@ -25,7 +25,7 @@ jobs:
run: npx @11ty/eleventy

- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v3
uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./_site
Expand Down
58 changes: 0 additions & 58 deletions 3DAnim.html

This file was deleted.

84 changes: 0 additions & 84 deletions Blender.html

This file was deleted.

Loading
Loading