It's 2024 and you've created yet another JavaScript framework. Seriously man!
When talking about another Javascript framework, you may laugh and t...
For further actions, you may consider blocking this person and/or reporting abuse
I have just one question:
Is it blazingly fast? 😂
It's is based on Lit with as much adhere to the web standard as possible. Lit is small and fast, so we may expect that TiniJS will be fast too. But, don't take my word alone, please have a try and see it for yourself. 🥰
Performance is one of the key focus along with small, versatile and interoperable with other framework. So, I will try my best to make the whole system as fast as possible. 🐎
That good to know... I most definitely shall. Gotta finish this article first 😊
I was making a joke on how any new tech is always touted as 'blazigly fast'; which in my opinion is the wrong metric to aim for (see my article on obsession with speed)
Thank you for the opinion, will definitely check your suggestion. 😇
Lmao
Time to reset the timer
Haha, 0 day since the last JavaScript framework. 😝
Actually that's sad... Once i started to make a list of Javascript-frameworks, but stopped at about 30, not counting all the projects that did not even have a proper documentation. What a waste of brain power... Assume, all this clever people had contributed to a single project. The web would surely be a better place today.
Yes, it's sure an inefficient way of utilizing engineer power, but to collaborate on a massive scale with the balancing between abstraction and specificity is not an easy task.
As I mentioned, we might want to shift our viewpoint to look for solutions instead of technologies. The diversity of the web offers us more choices to our problems, as long as something works, just go with it and be satisfied with our choice. 😁
I was not even able to find out, what your "solution" really covers. You project page contains a lot features that are about to come "in the next version" and current code is marked as "experimental". So, it seems it's more an idea than a production ready solution?
Yes, it is not production ready as the version
0.x.x
implied, there are lots of work to do. The home page is now merely a introduction to what I have learned, experimented and what I plan for future development. I will continue to work on the docs as well as the missing pieces as I mentioned in the roadmap. I hope I would complete the picture as soon as possible so that you may understand the "solution" of the project. Thanks!js-framework-benchmark or it never happened 😇
(also let me know when you'll go tinier with uhtml and its signals based variants)
Hi, that's a great suggestion, it should be benchmarked. For now, you may take Lit 3 as a reference and deduct some percentages.
About signals, you can use signals in Lit, for now 1 implementation available is Preact signal, the Lit team is adding more implementations as we speak. But when it comes to performance, Lit has already have an efficient update system, so signals are probably not gonna contribute much performance in a Lit app.
again, try uhtml ... it does everything you are saying Lit does and probably it also did before it ... but it's also faster, you can see that in the benchmark link I've posted. uhtml has Preact, Solid, my own things, and any other Signal implementation you like, it's called
uhtml/reactive
and it has a faster update system than lit (benchmarks speak again) so give it a try.Great job. Congratz!
Please, I want to know if you used any design concept or design princees or patterns, please let me know and I would really know how you applied them, thank you😊
The project consists of several parts with different common practices, I'm not trying to invent anything fancy concept in terms of design patterns. I use all the familiar concepts that we used to work with, with a little addition on top for a different experience.
For example, the folder structure is a generic Typescript project. The core part is class-based custom elements. The UI system is a collection of custom elements those can be applied to any design systems, ...
All right, I just started learning design patterns and solid principle in Java, and I found out that it's just hard following those concepts strictly, thanks😁
How does it integrate to a non-JS server-side rendering, or it is for SPA application? I have worked with lit.dev for more than 4 years. I really prefer it because it is easier and straightforward to couple with a non-JS backend. Wrote helper function and libraries to help me do this.
Hi, currently server-side rendering is not supported, even with JS servers. I hope it will be available in the future. Thanks!
Ah junior devs always coming up with new frameworks instead of trying to fix that every time they face a problem outside of their domain
No worries. Everyone goes through this phase. I've also done that 3-4 times.
Words are so easy!
Uh, is it web scale?
Hi, scalability is a subject for public scrutiny. It is very early now, therefore it needs time for the community to try out and have general agreement upon whether it is useful or a completely flop. ☺️
It sounds pretty cool👍
Nice work, bro 😊
Here we go again.
Well, keep on inspiring!
Congrats! Really curious to really see how to make a page with this. Following for the next few articles on working with components.
Hi, for now please see this example for how to create components and pages working with the routing system, please visit: stackblitz.com/edit/try-tinijs?fil...
More topics about other aspects will be available in the future. Thanks!
Congrats mate, wish you all the best moving it forward 👏
Thank you! Please have a try whenever possible. 🙇♂️
Congrats :-)
Thank you! Please have a try when you have time and let me know if something not working for you. I'm happy to assist and receive feedbacks from you. 😀
What was the need of it?
Hi, as I mentioned, I create it to solve the pain points I had working with front-end web. It is not aimed to replace anything, if other frameworks work for you and you are satisfied with them, then you don't need TiniJS. But if you have a chance, please give it a try. Thanks!
Man that's so awesome heart love emoji :-D
God bless you, Dude!
If you're tired of the complexity of SPA frameworks like Angular, React, or Vue, consider trying Dodo Framework.
I disagree.
Hi, please kindly share more about your point of view so that I may learn more about your experience. Thank you! 😊
You did well man.
Nice project, though I don't see how you've resolved your pain points. My solution was to not use any frameworks and instead use the basic web components API without Lit.
Thank you for having a look. I will explain more about how to solve the pain points I had in future articles, one of the big part is the UI library where its components are designed to accommodate any design systems and can be used within TiniJS or with any other frameworks, an experimental version can be found at ui.tinijs.dev
Why I don't just use native Web Components without the Lit library? I thought about it before, but since the API of Web Components is not very efficient in term of development experience. Lit provides a reasonable solution to the maintainability problem we have with native Web Components, so in my opinion, it is the best choice now for working with Web Components. 🙇♂️
Congrats. That's fine.
Looks promising. Are you going to add more components? I see a ton of missing components as of today.
Thank you for noticing TiniJS!
The UI part is currently at a very beginning, as of the 0.20.0, we can only utilize the basic design tokens in our own components since it almost has no prebuilt components compared to other UI library.
But, adding more useful prebuilt components as well as polish the theme families is currently in the progress. I do really hope to catchup with others by implementing 20+ essential components in 8 design flavors.
Great man. Keep it up
Great, thank you
At this point, I mean, why the hell not...
Jokes aside, really curious to know how much it took from first decision until now.
Xin chúc mừng!
Hi, thank you for taking a look! 😇
A bit of insight about the journey so far, I started the experiment for around a month in November 2022, but because of a work schedule, I postponed further exploration, so nothing really happens back then.
After the work schedule was concluded, I've begun the development since July 2023, I work mainly on my free time, so the total condensed time would be approximately 3 months or so.
Congrats and nice article!
Nice website :), but in the article I am miss a reason why one'd want to use your framework, like comparing why your framework is better than others.
Thank you for the opinion! 👍
A short introduction surely not going to cover all the aspects of what I have in store for framework. I will continue work to improve the documentation and adding the missing pieces to the framework. Until then, we may have a better picture of what TiniJS offers compared to all the already established frameworks.
Awesome job! I bet it has a lot of joy and disgrace behind the ui 😂
Congratulations! Keep up!
Yes finally!
you had me up to "bootstrap"
horrible, unless you love 27 layers of pointless div
Hi, "Bootstrap" here is not the Bootstrap framework. I'm trying to solve the problem I had with CSS frameworks, so no way I use the same approach as any CSS frameworks.
The "Bootstrap" that I mentioned is a
Theme Family
for the UI system. I design a components library that accommodate as much design systems as possible, for now only the Bootstrap family available because it is one of the most basic one. In the future, I would like to add more theme families, such as: Material, Fluent, ... all can be used with one unified experience. 🙇♂️Congrats!