13 ms·
InfernoJS – A JavaScript library for building powerful user interfaces
- quickben 10y agoMinor note: the linked url brings to a placeholder page.
- Jake232 10y agoShould probably link here: https://github.com/trueadm/inferno https://github.com/trueadm/inferno
- walid 10y agoThe graphic on the page links to the github repo.
- rickyc091 10y agoThanks! That definitely wasn't apparent to me. I think the problem is with the UI in that it states "New Website Coming Soon." I quickly exited the tab and did a search on google for the github repo.
- bsilvereagle 10y agoMight as well link to the GH page (which is available by clicking the icon on the linked page): https://github.com/trueadm/inferno https://github.com/trueadm/inferno
- walid 10y agoFrankly I think this posting of github pages instead of the authorative source is inappropriate. I see it a lot on HN and find myself having to check that this is the official repo by going to the original website. If you know it you don't need to be told about it but if it's being posted to get it to people's attention then the canonical source is the right link even if it only has a link to github.
- chipgap98 10y agoYou realize the site just links to the github repo, right?
- detaro 10y ago> then the canonical source is the right link even if it only has a link to github I assume they realize, yes.
- bsilvereagle 10y agoI can see the rationale behind linking to the original website, even if the UI isn't immediately apparent. However, the linked page is served via HTTP, so, depending on your threat vector, there isn't an authoritative source.
- MaulingMonkey 10y ago> Frankly I think this posting of github pages instead of the authorative source is inappropriate The website is the authorative source of... what, exactly? Not the codebase, not the documentation - neither of those things are on there. The only piece of content is a stealth link - and I'm not alone in having missed it, and only found out about it via the comments. "Did it get HNed...?" I wonder if the link would've been more obvious on desktop, where I might've hovered over the icon with my cursor. I see linking github pages as more along the lines of e.g. deep linking specific developer.apple.com pages. This has always been how the web was designed to work - link directly to the useful information. If you want the authoritative source readily available, link back to your authoritative website via your readme.md, so everything's nice and cross-referenced (as I note they have.) > I see it a lot on HN and find myself having to check that this is the official repo by going to the original website. Ahh - just because you're on an official-looking website doesn't mean you're on the official website. You could easily be looking at e.g. a community fork of a project, possibly renamed, instead. Linking to a website doesn't actually solve this problem. That github links encourage you to look at the wider ecosystem might even be a feature... ;)
- aargh_aargh 10y agoConsidering the lifetime of JS frameworks nowadays, the website has been "coming soon" for ages. http://web.archive.org/web/*/http://infernojs.org/ http://web.archive.org/web/*/http://infernojs.org/
- overcast 10y agoDoesn't mean much. I purchase domains for rainy day ideas all the time.
- chrshawkes 10y agoGo back to the original check-in to this repository it was clear this project wasn't planned out from jump street.
- grayrest 10y agoThey just went through a big github discussion about the design that finished last Saturday. It should be actually pretty soon instead of "soon".
- kimshibal 10y agoNow, it's all about Svelte vs Inferno. I like Svelte more than Inferno.
- deleted 10y ago[deleted]
- proyb2 10y agoNo need comparison, they help each other is greater than the sum of all parts.
- epmatsw 10y agoIt's all about a Svelte, a framework that came to light a week ago and isn't in production anywhere that matters? Come on...
- TheCoreh 10y agoA week is about 6 months in JS-years.
- moron4hire 10y agoOnly if your training was a "coding bootcamp".
- Klathmon 10y agoNo it's not, I hate when people spread this shit. Inferno JS is probably one of the newest "frameworks"/large-libraries that I would even consider using, and it's over a year old already. React has been around in some fashion since 2011, and was open sourced in 2013. Angular 1 has been since around 2010 IIRC. Angular 2 since around mid-late 2015. Ember since before mid 2014. Yes, some terrible developers like to chase the "new cool thing" every few weeks, but that doesn't mean that you need to, and it doesn't mean that there aren't stable, powerful, good choices that have been around for years.
- kimshibal 10y agowe move a production app from react to Svelte in a week. What are you smoking?
- chickenfries 10y agoFrom the README > Inferno is much smaller in size, 7kb vs 45kb gzip. Given that you're building the kind of app that is complicated enough to require a state management library, a virtual dom implementation, etc... does this 38kb really matter? Is anyone really shipping commercial apps where 38kb on page load would be that meaningful of a performance gain? Especially if you're doing serverside rendering and requiring react asynchronously?
- epmatsw 10y agoI assume the argument is going to be that on mobile the parsing time for 7kb of JS vs 45kb of JS is going to be significant.
- mhd 10y agoAnd you might be able to avoid simultaneous client- and server-side rendering and all the horrors this brings with it in the first place.
- tracker1 10y agoFrankly, everyone I know insisting on isomorphic rendering is doing it for SEO not for improved first display on mobile. Not that it isn't worth it... what WalmartLabs has done is incredibly impressive in this space.
- untog 10y agoThese days, JS parse time on mobile devices is more important than file size. And that isn't even necessarily file size specific - Nolan Lawson did a comparison of the different methods used to bundle JS to show how they can have a huge impact: https://nolanlawson.com/2016/08/15/the-cost-of-small-modules/ https://nolanlawson.com/2016/08/15/the-cost-of-small-modules...
- amelius 10y agoStill does 38kB really matter if the rest of your app requires parsing of several hundreds of kB of JS?
- coldcode 10y agoMan I can't keep up with all of these. Is there a list that anyone is keeping track of for javascript UI frameworks? I suppose it would require daily updating.
- knicholes 10y agoI like to refer to http://stateofjs.com/ http://stateofjs.com/ and http://todomvc.com http://todomvc.com.
- iLoch 10y agoCool, so it's React but presumably they've stripped out many of the things that make React enjoyable to use in order to satisfy some arbitrary file size metric. Why isn't this library 1kb, like LatestHotFramework.js?
- masklinn 10y agoReading the list of react differences, the biggest con is the lack of synthetic events, they plan on adding one but IME[0] that is pretty inconvenient as that means you need to handroll event delegation and dispatching, which means you need DOM access (via refs or componentDidMount) or will have to do all event dispatching from the root; and their devtools debugger is "still in development". They also require fairly modern ES features (maps and weakmaps). OTOH it provides lifecycle events for functional (stateless) components which is nice. [0] from having dealt with that when using snabbdom[1] without the event listener module [1] which is a "raw" vdom library not a high-level components-oriented system
- iLoch 10y agoSo basically, as the platform matures beyond a fun experiment, it'll grow in size. Got it. ;)
- coltonv 10y ago"but presumably they've stripped out many of the things that make React enjoyable to use in order to satisfy some arbitrary file size metric" Why make this claim without looking yourself? You could validate that "presumably" by just looking at the docs, but instead you get sassy about it. If you look at the docs, you'll see that the API is almost exactly the same. You really don't lose any features from switching to Inferno from React, what you lose is the React community. I say this as an avid React user. Don't discredit something until after you've dove into it a bit.
- iLoch 10y agoWhat do you think the extra 38kb of code is for? My point of view is, you've got a company with thousands of employees who work with a library every day and core teams dedicated to its improvement. Their requirements for speed and bandwidth far exceed our own as they reach further into the nth percentile of users, so you know things like speed and bloat are important for them to cut out. What, if anything, is actually gained from a business perspective by reducing a single library by 38kb? My guess is exactly nothing. And the benefit of sticking to React is not only the community, but the fact that they actually own their virtual DOM implementation and actively work to improve it (the forthcoming fiber rendering engine is a great example of that.) I'm not hating on new technology, but this isn't actually new. It's a clone that isn't really bringing anything new to the table, and just muddies the water for developers. It's like if every few weeks there was a new take on Git that did practically the same thing but wasn't Git. We'd be much better off if these people were contributing to React core. Because if it truly has the same capability as React, you should be able to shave the 38k off right?
- SamBam 10y agoWhat's it like to re-write a React application into Inferno?
- trueadm 10y agoYou really don't need to do this to play with Inferno, try using `inferno-compat`.
- deleted 10y ago[deleted]
- wje 10y agoUnfortunately unrelated to Inferno the operating system, which was warped into running in a browser, many moons ago. http://www.vitanuova.com/inferno/ http://www.vitanuova.com/inferno/
- trueadm 10y agoJust a note to people expecting an actual website – we are in the process of building one and you can see what it will look like here: https://twitter.com/trueadm/status/802675565421625344 https://twitter.com/trueadm/status/802675565421625344 Furthermore, if anyone has any questions feel free to ask away (I'm the author of Inferno). :)
- laurent123456 10y agoI don't know if it's been spotted but the logo looks a lot like Code Igniter's one.
- chrshawkes 10y agoIt's React-like with CodeIgniter-like logo, what's not to love?
- omnimus 10y agoVuejs site in red? :) I dont want to bash, just thinking maybe there should be some universal jsframework theme (even playing field). I feel like one of the big reasons vue became popular is because it had proffesionaly looking design from v0.01. Compare that to for example mithrill and many people will just pick vue straight away. Its good idea to have nice page.
- trueadm 10y agoI think it looks great. We've been designing this site for a while now and there comes a point where you need to stop designing it and start building it – which is why we still don't have a site :D
- odbol_ 10y agoWhy is a blank under-construction website on the frontpage of Hacker News? This site sometimes...
- trueadm 10y ago
- tzaman 10y agoHere we go again. I click the link. Get to an under construction page. Click the link, get to Github, think "this is interesting" to myself. Read on. Find there's a project called Cerebral, which is a state management library for React/Inferno/Whatever. Start thinking there's something wrong with my app, that's "just" about to launch, and is "just" using plain old Redux. And now I'm thinking it's not good enough any more (while remembering I haven't even given a try to redux-saga), and maybe I should try another stack with Inferno/Cerebral? Why are you doing this to me, JavaScript?
- moron4hire 10y agoIs it JavaScript that is doing this to you? I think it's you doing this to you.
- tzaman 10y agoFailed attempt of being funny aside. The struggle is real for many developers. Many (if not most) of us are self-taught and we like to explore how deep the rabbit hole goes, which inflicts many episodes of analysis paralysis upon us, and it takes a lot of willpower to stay on course. The fear then becomes what if any given choice will be obsolete once we launch our products, given how fast the technologies move forward, especially JavaScript ecosystem. So in my opinion and all honesty, I still prefer React+Redux (and Angular for some of our apps) because it's the safest bet that they are in for the long run and won't be obsoleted by shiny new library of tomorrow.
- tomascot 10y agoI think this is spot on. And is hard to understand while working for yourself and thinking your knowledge may become obsolete if you don't know the latest trending tech.
- moron4hire 10y agoIf your knowledge is becoming obsolete, then you weren't really, actually learning the concepts, you were just copy-pasting recipes.
- JustSomeNobody 10y agoWhere is this being used?
- deleted 10y ago[deleted]
- joobus 10y agoInferno seems to be very comparable to Riot.js, only Riot is more mature, has event delegation and a router, and is only 9.5k vs Inferno's 7k. And riot has an actual web page. http://riotjs.com/ http://riotjs.com/
- shados 10y agolast I checked, Inferno was a React "near drop-in" replacement. So not the same at all, unless you look at it in a vacuum.
- joobus 10y agoNowhere does the inferno docs say only people who already use react should use it. As a library for creating "modern user interfaces", it is in direct competition with riot.
- rk06 10y agoAhhh, you know riot is bad performance wise? I am sure riot's performance is not bad many real world apps. but the devs would certainly prefer the faster one so they won't run into problems later.
- deleted 10y ago[deleted]
- iamleppert 10y agoIt's disingenuous for the authors to claim this is a near "drop-in" replacement for React. Just because it works now for (likely) some limited surface area test app doesn't mean it will work in all of React's weird nooks and cranes, or its constantly changing APIs or huge stack of dependent behaviors it has inherited from its ever-changing dependencies. Clearly, the authors don't have much experience in this regard to make such claims. Caveat emptor.
- trueadm 10y agoThat's why I claim near rather than perfect. It's a constant work in progress, that's the challenge :)
- deleted 10y ago[deleted]
- findjashua 10y agoif you don't have the site ready, it'd make more sense to just link to the repo
- cheapsteak 10y agoPrevious discussion: https://news.ycombinator.com/item?id=11837082 https://news.ycombinator.com/item?id=11837082
- spankalee 10y agoThere are many reasons why Web Components are important and framework proliferation is just one of them.
- magic_quotes 10y agoDon't forget there are many unpopular (wdsl) and dead (xhtml, e4x) standards out there already. There is absolutely no reason to believe that web components will have a better track record.
- spankalee 10y agoOf course there're reasons to believe it: Web Components solve some critical problems, All the browsers are in support of the standards and implementing them, we've had very good uptake with Polymer, other Web Component frameworks are popping up at places like Atlassian, and many large companies like ING, IBM, GE, Bloomberg, Salesforce, and of course Google - with YouTube and more - moving to Web Components. Relevant to this discussion, Web Components will make it possible for less mainstream frameworks to get a foothold in real applications by not being locked out by proprietary silos.
- magic_quotes 10y ago> browsers are in support of the standards Well, realistically speaking, web components consist of a bunch of different specs and each specification should really be considered on its own merits. Shadow DOM and Custom Elements are mostly ok. HTML Imports spec looks like it was created with the simple "include jQuery widget on the page" use case in mind and doesn't consider anything else. Node.js/npm/CommonJS ecosystem, es6 modules — it's like nothing of this even exist. This is obviously not good enough and that's why Mozilla decided to not support this thing. > being locked out by proprietary silos That's a really mean thing to say about an open-source javascript library. Especially considering that Inferno is a reimplementation of React API. I actually think Fb should make React API into its own mini-spec (like JSX or GraphQL) if only for trolling "muh web standards!" people.
- 10y ago
- mikebay 10y agoI prefer riot.js it's really one of the best ever "ui" library I'm ever used. Lightweight and fast. React do not give same nice development flow for me and I don't like reactjs licensing..
- mstijak 10y agoCx widgets mostly work with inferno-compat. There are still some issues to iron out, but hopefully that will be fixed with 1.0. Performance improvement over React is clearly visible, especially on large unbuffered grids: http://cx.codaxy.com/v/inferno/docs/examples/grid/dynamic-grouping http://cx.codaxy.com/v/inferno/docs/examples/grid/dynamic-gr... http://cx.codaxy.com/v/master/docs/examples/grid/dynamic-grouping http://cx.codaxy.com/v/master/docs/examples/grid/dynamic-gro... I think that inferno-compat parity with React should be Inferno's top priority now. The performance is already great.
- nkkollaw 10y agoSorry, can someone do a ELI5? What does it mean to be React-like? Is it a drop-in replacement? Are React components compatible? Or it just looks like React (it does)? I'm going absolutely crazy trying to keep up-to-date with all frameworks coming out nowadays. Yesterday it was Svelte, today it's Inferno. What's good about using this instead of React? 3k of parsing instead of 40k is a huge improvement, but can we still using stuff that was made for React? I'm lost.
- trueadm 10y agoYou totally can use Inferno. You can use a package on NPM called "inferno-compat" to alias out React to Inferno via Webpack/Babel/Browserify if you want to. Alternatively, you can use Inferno as is and it has JSX Babel plugin, all the same top-level APIs and has the same ES2015 components as React (although we've put them in their own package called "inferno-component", as some people don't use them). I hope that helped – I'd recommend jumping on the Inferno Slack if you'd like to know/understand more: https://inferno-slack.herokuapp.com/ https://inferno-slack.herokuapp.com/
- nkkollaw 10y agoThanks.
- trueadm 10y agoIf anyone has any further questions/queries/ideas/rants you can jump on the Inferno Slack - https://inferno-slack.herokuapp.com/ https://inferno-slack.herokuapp.com/. The team and I would love to hear from you. We want to make Inferno better and we believe in doing so, we can start a shift in the community that starts to realise that performance on mobile with the current state of libraries and tools is not good enough. This was always the primary goal for why I began Inferno – about 2 years ago.
- dirkg 10y agoI don't understand the negativity. This isn't buzzfeed or reddit, the target audience is supposed to be people who are already devs and not need handholding. So there's no website. So what? The github page clearly explains what it is, who its for and how it works. Focus on the product, talk about its pros/cons without trying to distract from the core issues. e.g. the size complaint - almost every article about React/Angular/Vue will compare the lib sizes and impact on loading etc - Inferno is faster and smaller. Why complain? The focus of the library seems to be speed, a minimal implementation that is still fully API compatible with React, which is no mean feat. And on top of that it happens to be the fastest UI framework. Give some credit to the author, FB has already said they might be incorporating ideas from it.
- wheelerwj 10y agono one is going to comment on how a library for powerful UI's has an under construction landing page that only links to github?
- HugoDaniel 10y agoIs there any place where the community usually hangs ? Some chat room or forum ? Thanks