tailgate
htmf
tailgate | htmf | |
---|---|---|
1 | 4 | |
2 | 21 | |
- | - | |
6.7 | 7.6 | |
7 months ago | 6 months ago | |
HTML | JavaScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
tailgate
-
HTML First – Six principles for building simple, maintainable, web software
I built something recently with the same ideas in mind: https://github.com/sethkimmel3/tailgate. It allows people to build generative-AI applications without any of the complication of setting up a backend, and in the simplest cases only requires adding HTML attributes.
I originally learned to code with HTML, CSS, and JS, and I think it's still the easiest way to experience the magic of shipping a working application to others. We should keep encouraging more patterns and tooling that lower the barriers of entry to those just starting out.
htmf
-
HTML First – Six principles for building simple, maintainable, web software
I've successfully used this pattern (HTMX hypermedia style) to create an offline-first web app SPA[^1]. One of the pages is pretty dynamic and I wasn't sure if I would need a traditional front end library to work with it. But, nope, hypermedia to the win, it worked fine without a front end framework.
To build it I used my own library called HTMF[^2]. I started out using mpa-enhancer[^3] but found that that pattern is a little to janky sometimes. I think reloading a page every time on every interaction uses too many resources for a browser especially when you use a phone that doesn't have as much power as a laptop.
But overall I find the pattern very easy to use and keeps the complexity down.
I think some of the issues with traditional SPAs is that they have a lot of state and state is nonlinear in complexity. But using templating systems makes the complexity more linear in nature.
Also, I find libraries like React to be overly complex for what it does, see above. The way React works is just odd and counter intuitive. All for problems that are easy to solve. I do think there are places for a React-like library is needed but those are for websites that are inherently highly state-based. But most websites aren't state-based even ones that appear to be state-based at first.
The websites I work on are usually just forms and forms are pretty powerful and can get you a long ways before you need to go outside of that paradigm.
[^1]: https://github.com/jon49/Soccer
[^2]: https://github.com/jon49/htmf
[^3]: https://github.com/jon49/mpa-enhancer
- Things you forgot because of React
- Htmx, WebAssembly, Rust, ServiceWorker Proof of Concept
-
Ask HN: Getting tired of complexity in web development
I wrote a js lib similar to HTMX, which I call HTMF[1]. Unlike HTMX I try to stay as close to the metal of the current semantics as possible. So, all interactions are based off of forms. I also tried to keep the wording similar to HTML/JS semantics. It's pretty small lib but pretty amazing how far I can get with it. These days I mainly build offline-first apps with it. But I built it in such a way that it can easily be a progressive enhancement to an MPA app.
[1]: https://github.com/jon49/htmf
What are some alternatives?
clace - Clace is a web app deployment platform for internal tools
Soccer - Tracker for players play time
fragmentify-js - FragmentifyJs
yew-beyond-hello-world - yew rust tutorial
chat-app - A contact us demo widget built using Saasufy.
submillisecond - A lunatic web framework
dumb-tailwind
WeightTracker - Back end for saving data for weight tracker.
Fragmentify - Django like template inheritance for XML
MealPlanner - A Meal Planner to figure out what we are going to eat each week. Written with Razor Pages and HTMF. https://meals.jnyman.com/
- - Hyphen - An elegant custom element base class
mpa-enhancer - Minimalist JavaScript to make your MPA work that much better