GitHub: https://github.com/InfiniteConsult/0003_html_css_javascript_article_viewer/
Introduction
Writing deeply technical content fo...
For further actions, you may consider blocking this person and/or reporting abuse
Nice separation between article data and
/static/{path}assets. One edge I’d make explicit is the base URL contract:../img.pngresolves differently when the article URL ends in/slug/versus/slug.html. I’d also test../traversal, percent-encoded segments, query/fragment preservation, and remote schemes separately. Resolution and security are different stages—the rewrite can produce a valid URL that still needs sanitizer/CSP checks.Definitely excellent things to test and add. Yeah it was pretty much direct file paths so I don't think
/slug/would resolve to the correct path as it is. Could make a good addendum to the tutorial to handle these. Thank you!That makes sense. If the project deliberately keeps direct file paths, documenting that routing invariant may be enough. I would keep a regression test that opens an article at its actual URL and checks that its referenced assets resolve to the intended files, not merely a 200 response (a fallback HTML page can hide a broken image URL). If clean
/slug/URLs are introduced later, that test should expose the base-path change before readers encounter it. Thanks for clarifying the current boundary!I signed up to tell you I thought this is excellent! In the world of frameworks it's wierdly hard to find a good tutorial on the basics. This is the intro to website development I've been looking for. Thank you!
Thank you! Most of my posts are like this as my main focus is optimization which involves "stripping out bloat". Not for everyone but hopefully helpful to those who need it or those going into high performance computing/high frequency trading
I love the 'Librarian vs. Reading Room' analogy for the client-server model, it makes the architectural transition from traditional sites to SPAs so much easier to visualize. I'm definitely going to try and deploy this on my local Linux setup as I work through my LFS101 course. Thanks for the detailed blueprint!
Awesome. If you build the FromFirstPrinciples Dockerfile and run in (maybe through windows subsystems for Linux) it should get automatically deployed and look like this
Noted 💯
We loved your post so we shared it on social.
Keep up the great work!
Thank you
This is super useful! I love how you combined vanilla JS with Markdown and MathJax—it keeps things lightweight but powerful. Syntax highlighting looks clean too. Definitely giving me ideas for my own article viewer projects!
Thank you! Enjoy!