Skip to content

Commit 42c3a85

Browse files
committed
First blog post! + Update file links to point to github releases
1 parent adf52da commit 42c3a85

File tree

17 files changed

+130
-26
lines changed

17 files changed

+130
-26
lines changed

eleventy.config.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ module.exports = function(eleventyConfig) {
1010
eleventyConfig.addPassthroughCopy("src/css");
1111
eleventyConfig.addPassthroughCopy("src/js");
1212
eleventyConfig.addPassthroughCopy("src/images");
13-
eleventyConfig.addPassthroughCopy("src/files");
1413
eleventyConfig.addPassthroughCopy("src/favicon-32x32.png"); // Adjust if needed
1514

1615
// --- Filters ---

src/blog/first-post.md

Lines changed: 117 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,126 @@
11
---
2-
title: My First Blog Post!
3-
date: 2025-05-05 # Use YYYY-MM-DD format, or use "Last Modified" for Eleventy to use file mod date
2+
title: My Experience Building This Website
3+
date: 2025-05-16 # Use YYYY-MM-DD format, or use "Last Modified" for Eleventy to use file mod date
44
tags: post
55
layout: layouts/post.njk # Tell it to use the post layout
6-
excerpt: "This is a custom, concise summary of my first blog post, designed to grab the reader's attention on the blog listing page."
6+
excerpt: "Ever wondered what goes into building a website from scratch? In my first blog post, I share the journey behind creating this VCE resource hub – from the initial idea and tech choices to the challenges faced and lessons learned along the way. Take a peek behind the scenes!"
77
permalink: "/blog/{{ page.date.getFullYear() }}/{{ page.fileSlug }}/"
88
---
99

10-
## Welcome
10+
## Introduction: Why Share This?
1111

12-
This is content written in **Markdown**. Eleventy converts this to HTML.
12+
Welcome to the very first blog post on My Portfolio! While the primary mission here is to arm you with top-notch VCE resources, I thought pulling back the curtain on how this site was built might be an interesting read. For fellow aspiring developers, students curious about web development, or just anyone wondering what goes into creating an online resource, this one's for you.
1313

14-
You can create lists:
15-
* Item 1
16-
* Item 2
14+
This isn't just about lines of code; it's about the problem-solving, the "aha!" moments, the inevitable frustrations, and the satisfaction of bringing an idea to life. So let's dive into the journey of building this platform.
1715

18-
Add code blocks:
19-
```js
20-
console.log('Hello, Eleventy!');
21-
```
16+
![A snapshot of the website's homepage](/images/blog/2025/05-16/welcome.png)
17+
18+
## The Spark: Where the Idea Came From
19+
20+
Every project, big or small, starts with a spark. For me, the idea for this website wasn't a sudden lightning bolt but more of a slow burn, fuelled by my own experiences and observations. As a current VCE student myself, I noticed how most resources available for students were often paywalled. The few free sources that were available were great, but were outdated in some cases.
21+
22+
I envisioned a clean, accessible space where students could quickly find reliable resources without getting lost in a maze of forums or outdated links. The goal was to create something genuinely helpful.
23+
24+
## Planning and Tech Choices: Laying the Foundation
25+
26+
Choosing the right technology stack is always a crucial decision. For this project, I opted for:
27+
28+
* **Hosting:** **GitHub Pages**. It's free for public repositories, integrates beautifully with Git for version control (an absolute lifesaver!), and is fantastic for serving static sites like this one.
29+
* **Core Technologies:** I decided to build the site primarily with **HTML, CSS, and vanilla JavaScript**. While frameworks are powerful, I wanted to keep things lightweight, ensure fast load times, and have granular control over every aspect. It also felt like a good way to reinforce foundational skills.
30+
* **Version Control:** **Git and GitHub**. Non-negotiable for any development project, in my opinion. It allows for tracking changes, collaborating (even if it's just with your future self!), and rolling back if something goes spectacularly wrong.
31+
32+
Here’s a very basic example of the HTML structure I used for a typical resource listing item. The actual implementation has a bit more to it for styling and functionality, but this gives you an idea:
33+
34+
```html
35+
<h3>General Notes & Summaries</h3>
36+
<ul class="resource-list">
37+
<li>
38+
<a href="Link to file..." download>Complex Numbers Summary (PDF)</a>
39+
- Overview of complex number operations and De Moivre's theorem.
40+
</li>
41+
<li>
42+
<a href="Link to file..." download>Calculus Notes (PDF)</a>
43+
- Covers differentiation and integration techniques relevant to Spec Maths.
44+
</li>
45+
</ul>
46+
```
47+
48+
## The Building Process: Bringing it to Life
49+
50+
With a plan and tech stack decided, the real work began: translating ideas into a functional website. My process generally involved:
51+
52+
1. **Structuring the Content (HTML):** Building the semantic skeleton for each page type – homepage, subject pages, resource listings, blog posts.
53+
2. **Styling (CSS):** Applying the visual design. This was an iterative process, starting with a basic layout and progressively refining the look and feel, focusing on readability and a clean user interface. I made heavy use of CSS Flexbox and Grid for layout.
54+
3. **Adding Interactivity (JavaScript):** Implementing any dynamic features, like a mobile navigation menu, search/filter functionality (a future goal!), or smooth scrolling.
55+
56+
One of the first major components I tackled was setting up the system for displaying the VCE resources. This involved thinking about how to categorise them and make them easily discoverable.
57+
58+
![The first iteration of the test blog](/images/blog/2025/05-16/wip-blog.png)
59+
60+
Ensuring the website was fully responsive was a top priority. This meant a lot of testing across different screen sizes and tweaking CSS. Here’s a little CSS snippet that helps manage the layout of resource cards on different screen sizes using Flexbox:
61+
62+
```css
63+
.resource-list {
64+
list-style: none;
65+
padding-left: 0;
66+
margin-top: 0;
67+
margin-bottom: 15px;
68+
}
69+
70+
.resource-list li {
71+
margin-bottom: 18px;
72+
padding-left: 30px;
73+
position: relative;
74+
line-height: 1.5;
75+
color: #ccc;
76+
}
77+
78+
.resource-list li::before {
79+
content: '\f019';
80+
font-family: 'Font Awesome 6 Free';
81+
font-weight: 900;
82+
position: absolute;
83+
left: 0px;
84+
top: 3px;
85+
color: #a78bfa;
86+
font-size: 1em;
87+
}
88+
```
89+
## Challenges I Faced (And How I Tackled Them)
90+
It wouldn't be a real development story without a few curveballs! Here are a couple of notable challenges:
91+
92+
- **Challenge 1: The Dreaded Bandwidth Question**
93+
One of the biggest initial headaches was figuring out the best way to host and serve the PDF resources, especially considering potential bandwidth limits with free hosting. GitHub Pages has soft limits, and while GitHub Releases is excellent for larger files, I also explored external options.
94+
- **Solution:** After much research and weighing pros and cons (including cost, ease of use, and reliability), I decided to initially leverage GitHub Releases within a separate repository. This involved creating a separate repository dedicated to releases and linking to those assets. It’s an area I’ll continue to monitor and adapt if the site grows.
95+
96+
![First Release of the Physics Resources](/images/blog/2025/05-16/releases.png)
97+
98+
## Challenge 2: Perfecting the "User-Friendly" Vibe
99+
100+
It's one thing to make a site functional; it's another to make it genuinely user-friendly and intuitive, especially for students who might be stressed and short on time. I spent a lot of time tweaking navigation, information architecture, and even font choices.
101+
102+
- **Solution:** I focused on simplicity. I tried to put myself in a VCE student's shoes: What would I need to find quickly? How can I reduce clicks? I also asked a few friends to test early versions and provide honest feedback, which was incredibly valuable for identifying confusing elements or awkward workflows.
103+
104+
## Key Learnings and Takeaways
105+
106+
This project has been a fantastic learning curve. Beyond the technical skills, here are some broader lessons:
107+
108+
- **Start Simple, Iterate Often:** It’s tempting to want to build everything at once, but starting with a core set of features and then building outwards is much more manageable.
109+
110+
- **The Value of Good Structure:** Well-organized code and content make a world of difference, not just for me maintaining the site, but hopefully for users navigating it too.
111+
112+
- **Don't Underestimate Design:** Even for a resource-focused site, thoughtful design significantly impacts usability and the overall user experience.
113+
114+
- **Community is Key:** While I built this solo, the wealth of knowledge shared by the developer community online (blogs, forums, documentation) was indispensable. Never hesitate to search for solutions or learn from others.
115+
116+
- **Persistence Pays Off:** There were definitely moments of staring blankly at a bug at 1 AM, but pushing through those challenges is incredibly rewarding.
117+
118+
## What's Next?
119+
120+
This is just version 1.0! I have a list of ideas and improvements I’d love to implement over time:
121+
122+
- Expanding the range of subjects and resources available.
123+
124+
- Adding more interactive study tools or checklists.
125+
126+
- Perhaps a dedicated section for VCE news and exam tips.
-31.1 KB
Binary file not shown.
-34.8 KB
Binary file not shown.
-785 KB
Binary file not shown.
-46.3 KB
Binary file not shown.
-382 KB
Binary file not shown.
-7.1 MB
Binary file not shown.
-203 KB
Binary file not shown.
-370 KB
Binary file not shown.

0 commit comments

Comments
 (0)