My first experience with Django was writing a small blog, which is now better served with the likes of Hugo. I am sure I am not the only one that has made a similar journey.
laughs in tornado cash
Does JS and Pyodide work on GH papges? Last I checked it only serves static pages.
Tangent: What if I want to release a Python project to the world but keep it closed-source? Can we obfuscate code in Pyodide?
As for obsfucation, you could precompile to Python bytecode (.pyc files), and then to obsfucate that further you could e.g. pyminify before the bytecode compilation.
There's also pyarmor, but as of 2022 [1] that was unsupported.
The one downside of GitHub Pages generally is the lack of custom header control - you can't serve proper HTTP redirects for example.
This isn't going to work for everyone, but if you're dealing with non-tech-savvy but mostly-able-to-use-a-computer users, it can, and it being graphical seems to be less of a hill than if I tell people to run `python -m http.server` in the terminal (because, "what is a terminal"...)
Ahm, I doubt that the FSF and many others share this bold opinion - the benchmark for free software and distribution infrastructure is still GNU/Linux in distros like Debian. Probably BSD comrades can suggest something similar. Distributing free software for more than 30 years and beyond, mostly on top of C, is something I would recommend far more than "free web-hosted" HTML/Javascript.
Even among a technical crowd, most folks don't want to install some random library or another Electron-based app to test your pet project.
I wish there was some way to combine HTML + JS + brand agnostic cloud or local storage.
As someone who's interested in keeping online things around for a very long time, GitHub's owned by Microsoft now, and Microsoft's needs can change at any moment.
Unfortunately, I can't think of a better alternative for people who "lose interest" in their projects, short of non-profit organisations like Internet Archive or Apache Foundation taking over.
Maybe the best solution is to just have mirrors of the Git repo and pages hosted elsewhere like GitLab, and let search engines do the work of finding the software for anyone interested.
It can be, depending on the nature of the software. However, for a heaping ton of software (such as libraries or software that is meant to be used without internet access) it can be the worst option.
The real answer, as always, is that there is no universal one-size-fits-all solution to this.
For the majority of things I do I just want to shove data in one end and get data out of the other end without ever having to build a UI or wondering if it's "up" or "down".
That is not appropriate for all sorts of software. For a lot, though, sure, that can work. It's just not a universal solution.
And somehow they were linked. Deleting one deleted the other.
You could open the HTML page from your disk, in Internet Explorer. No internet required.
Update: they weren't linked at the filesystem level. Explorer.exe tracks .htm/.html and a folder_<something> together: https://learn.microsoft.com/en-us/windows/win32/shell/manage...
> A few years ago I'd have recommended Heroku on the basis that their free plan had stayed reliable for more than a decade, but Salesforce took that accumulated goodwill and incinerated it in 2022.
As someone building a new hosting provider with a free tier (https://val.town) it's so lovely to see folks like Simon value long-term stability. It makes it easier to make the business case to invest in it. At the end of the day, it's all about trust.
I have found HTML5 Canvas and JavaScript to be very effective for writing small games. If sound is needed, there is Web Audio available too, right within the web browser. It is quite possible to write simple games without using any external JS libraries by sticking to first principles only: drawing simple shapes with fillRect(), implementing simple collision detection algorithms, generating simple tones using OscillatorNode, etc. Here is one such game I wrote sometime back: <https://susam.net/invaders.html>.
Also, by embedding all CSS and JavaScript into a single HTML file, the game/tool becomes instantly portable. All we need to do is host the HTML file somewhere, or send the file to someone, in order to share the game. Even when it is hosted on a website, savvy users can curl/wget it, or simply perform "Save Page As" to download it and run it as a local app!
Further, if the HTML is written and formatted neatly (rather than being bundled or minified), the endangered subspecies of developers who still like to "View Source" can easily copy, edit, and customise the code to suit their own needs, and see their changes take effect instantly.
Exactly, not only is that cross-platform and frictionless, but it additionally solves the trust issue since the app runs in a more secure browser sandbox.
This is also why I recently ported my fork of the FreeJ2ME emulator to the web (with help of CheerpJ which runs Java in browser), I believe this is the most future-proof way to preserve access to J2ME games: https://github.com/zb3/freej2me-web
Nice post! This is only a nit: They did break working URLs at least once sometime between 2020 and 2023. Until 2013, GitHub served GitHub Pages from the USERNAME.github.com subdomains. Understandably, this was a security nightmare, due to which in 2013 they made the switch to USERNAME.github.io for GitHub Pages.
For several years they took care of automatically redirecting something like <http://newmerator.github.com/> to <http://newmerator.github.io/>. But if you click on those links now, you'll find that the former does not work anymore.
You can read more about it at <https://github.blog/news-insights/product-news/new-github-pa...>. The example link I've shared in the previous paragraph has been picked from this article.
In fact, <https://web.archive.org/web/20200000000000*/http://newmerato...> shows that the redirection worked until at least Feb 2020. But by Nov 2023, the redirect was already broken.
I don't like javascript much, but the option to statically host something for free while solving real problems is... something else.
I know WASM has been here for a long time but last time I tried I still had some issues setting it up (maybe just skill-issues), but I'd like to live in a world where I could do the same stuff but with other languages. Maybe just the UI code in javascript, or at least, that's what I would wish for.
Like, I feel like there's probably some importance in reinforcing the idea of "this is valuable enough such that you should take a copy for yourself that you can keep forever if you want, on your machine, to do with whatever you want."
Makes it feel more valuable or important? Something like that.
Have any of you tried this? What's the overhead/performance like?
cranberryturkey•5h ago