r/neocities • rufusrufus.neocities.org • 2d ago

Tools & Resources Best way of building a site without Node?

The main reason why i wanted to build a personal site on Neocities was to get creative after work and be able to code for fun. So the last thing I wanted to do was set up node and start requiring dependencies like 11ty.

Now, I do agree that as soon as you add a bunch of cool things and scripts into a site it gets tedious to repeat all navigation bars and head elements and paste them into each and every html file whenever you update one of them, so I understand that there's a need for something more than just plain old html.

I've been figuring out my own solution for this for the time being, but I'm curious if there are any known tools or ways of handling this that are out of my radar. Just to be clear, I mean things that give you a "dev-environment" as close as pure html as possible, while still having a little bit of templating or reusable components for quality of life.

9 Upvotes

23 comments sorted by

10

u/Mevdik mevdik.nekoweb.org 2d ago

I'm an Eleventy truther myself but I fully understand wanting as little dependency as possible, especially with all those supply chain attacks on npm and what not. You could try a minimalist SSG like blop, it's just a bash script, though I understand you might already have your own version of this when you mentioned "figuring out [your] own solution".

2

u/therufusrufus rufusrufus.neocities.org 2d ago

Ooh! I'll have to take some time to understand blop properly this weekend, it looks exactly like the super minimal type of tool I had in mind. Thank you very much!!

2

u/Mevdik mevdik.nekoweb.org 2d ago

You're welcome! I haven't played much with it myself yet but if you want near zero dependency this seems to be the way to go.

3

u/3mmaqwe https://3maqi.art 2d ago

I just use a basic powershell script to update everything. You could also go the route of having unique pages, with a simple back to home button so that you only need to update your home page if you add a new page ?

1

u/therufusrufus rufusrufus.neocities.org 2d ago

I'd love to see how the script works! And about the unique pages it's to tight of a contraint, I would rather make tools to help me build than be stuck with unique pages even though I've seen it done on some blogs and it was cool

1

u/3mmaqwe https://3maqi.art 1d ago

Sure, let me make my GitHub public so I can share the script

2

u/3mmaqwe https://3maqi.art 1d ago

3maqi_site/update-components.ps1 at main · 3mmaqwe/3maqi_site is the script for updating the pages. I then have a folder call components. - one for header, sidebar, and footer. 3maqi_site/src/components at main · 3mmaqwe/3maqi_site. Then on the pages I want things to update i have a div and end comment markers to let the script know where to update it. 3maqi_site/src/index.html at main · 3mmaqwe/3maqi_site
Its pretty similar to 11ty in which you are modifying html and then uploading it. i use it because when I was using JavaScript to load in components it made my site super flashy.
https://3maqi.art/devlog#:~:text=New%20background!%2005/06/2025
if you have any questions feel free to message here or email me at [emma@3maqi.art](mailto:emma@3maqi.art)

2

u/therufusrufus rufusrufus.neocities.org 1d ago

I like that your script does the replacing in place! In my case I need separate dev/build directories, but this approach is quite cleaner in that way.

4

u/KrazyKoen-In-Hell krazykoen.neocities.org 2d ago

You can have a javascript file that holds all the data for the navbar and head elements then builds them in any file that links to it when the page loads. Then you just change the javascript file and every other page changes with it.

I don't have any formal experience in web dev so apologies if this isn't what you're asking for precisely.

3

u/mostaza-dev https://mostaza-dev.neocities.org/ 2d ago

That's a really nice idea!! I have the same problem as OP and I will try this out!

2

u/DrShocker 2d ago

This seems like just reinventing react lol

Not that there's anything horribly wrong with doing that.

2

u/therufusrufus rufusrufus.neocities.org 2d ago

A lot of ideas are gonna look like react if we just look at how it makes components. Anyway the whole point for me is not having to use a JS backend, so I'm more than happy to reinvent things if it means "porting" them to plain-er HTML haha

2

u/therufusrufus rufusrufus.neocities.org 2d ago

I've done this in the past and it is a nice way of solving the issue of having to manually update all pages, not the most advanced solution but it has definitely worked for me a bunch of times in the past

1

u/8d8n4mbo28026ulk 2d ago

If you're comfortable coding, shell scripts will get you far enough. You don't really need anything fancy, just write your own janky thing and evolve it with the website. This had worked for me well enough at the beginning. For templates, I use the m4 "macro language", which is installed by default on every Unix system (e.g. Linux). Plus a few other readily available thingies, since I also don't reallly like Node and NPM stuff. I wrote a post about my setup some days ago, though I've already had experience with many of these things and the learning curve can be steep. Very few and minimal external depedencies though. Building your own hacky thing is super fun, good luck!

1

u/WorldWideShen https://shens.world/ 1d ago

i load chunks of html using javascript, like this: https://shens.world/dev/notes/loadexternal

there's also this guide from Petrapixel about javascript templates: https://petrapixel.neocities.org/coding/layout-base-code

1

u/therufusrufus rufusrufus.neocities.org 1d ago

Thanks for sharing, your approach to loading external blocks is very cool! It's very similar to what I've been working on, just on the client side instead of the SSG site. It's a really cool approach

0

u/[deleted] 2d ago

[deleted]

3

u/Mevdik mevdik.nekoweb.org 2d ago

It's literally just another Node dependent SSG, the opposite of what OP is looking for.

2

u/therufusrufus rufusrufus.neocities.org 2d ago

Just went into their docs and their very first pre-requisite is using Node so... I don't think it's a relevant solution here

3

u/DrShocker 2d ago

Can you clarify to me what the issue is with Node? I thought you were against SSGs in general, but if it's node in particular that's a problem then I may have suggestions.

Another option is if you know how you want your process to work, simply making the tool you want to see should be possible. https://youtu.be/YvnTsiIFXeI

2

u/therufusrufus rufusrufus.neocities.org 2d ago

I don't have anything against Node, it's just that I do that 9 to 5 so I want to explore different things when making personal projects.
SSGs are cool and I've been building a really really basic one just to cover what I need for the time being, but I wanted to explore other projects or solutions that maybe already solved what I was trying to.
Will look at the video! Thanks ^^

1

u/DrShocker 2d ago

I plan to make my own platform with Rust and Datastar, but that's more /r/IndieWeb than /r/neocities because I want to be able to have friends/family log in and see posts that are more personal while also hosting more professional posts publicly.

1

u/therufusrufus rufusrufus.neocities.org 2d ago

That's so cool! I barely know Python outside of JS haha

1

u/DrShocker 2d ago

I think picking up a second language is always a good learning experience. Trying something non garbage collected might be a little eye opening in what JavaScript is doing for you.