[HN Gopher] FicusJS
       ___________________________________________________________________
        
       FicusJS
        
       Author : Sn0wCoder
       Score  : 17 points
       Date   : 2021-03-28 21:28 UTC (1 hours ago)
        
 (HTM) web link (docs.ficusjs.org)
 (TXT) w3m dump (docs.ficusjs.org)
        
       | Sn0wCoder wrote:
       | Hi All, I use Angular 6 - 10 at work every day @day$job and have
       | used Vue.js for some side projects / school related. Long story
       | short have been looking into standard web components for my next
       | side project and FicusJS seems to check all the boxes. Problem is
       | there is almost no information about FicusJS other than what I
       | can find linked off https://webcomponents.dev/new/ The other ones
       | in the running are GitHub/Catalyst, AppRun, CanJS or compiler
       | Riot, Stencil, ect... I think I want to stay away from build
       | tools until I can't Does anyone have any experience with FicusJS?
       | Seems FicusJS uses lit-html in all the examples so maybe start
       | there? Good or bad would love to hear your story. Cheers!
        
         | colordrops wrote:
         | The x-element library published by Netflix [1] takes the best
         | features of other web components libraries like Polymer and
         | LitElement, and focuses on a standards based approach, e.g. es6
         | module loading at runtime, which is done intentionally to avoid
         | a build step.
         | 
         | https://github.com/Netflix/x-element
        
         | Fractal_HQ wrote:
         | You can make vanilla web components with Svelte, and Svelte has
         | a much better DX than React, Vue, and Angular. It also performs
         | better thanks to the compile step. I highly recommend checking
         | it out!
        
           | eyelidlessness wrote:
           | I think the DX claim is pretty subjective. I find JSX much
           | easier to use than all the others mentioned, and a great deal
           | more flexible. The ease of use being that it's just
           | JavaScript (or more importantly TypeScript), with some DSL.
           | That means it follows all the other rules of the environment
           | in which it runs, and uses all the same tooling. It also
           | produces a data structure that's renderer-agnostic, so it's
           | trivial to adapt to different platforms and build targets.
        
         | edoceo wrote:
         | No experience with Ficus but others. I'd been trying to avoid
         | that ceremony tooling/build step too. But, modern JS I've
         | realized that's wasted effort. Embrace the suck.
        
       | colordrops wrote:
       | How is performance compared to something like LitElement, which
       | does bare minimum DOM updates in place? Also, does this have any
       | functionality to support data binding? Passing values down a
       | hierarchy of components and injecting them into the DOM is half
       | the battle with web components.
        
       | eat_veggies wrote:
       | Initial impressions:
       | 
       | Looks like a relatively new project -- only 59 commits, all by
       | one person, starting from last September. And based on a GitHub
       | search for "ficusjs," it seems that no other projects mention it.
       | 
       | It's only a bit over a thousand lines of code, and based on a
       | cursory glance, the code is in pretty good shape. It should be
       | able to fit entirely in your head, and for a lightweight
       | framework, that's a good thing.
       | 
       | The API itself reminds me of the good old React.createClass({ ...
       | }) days and I wouldn't be opposed to using it. Overall it looks
       | promising for building an MVP, and shouldn't be horribly
       | difficult to transition to a more complicated framework when
       | needed :)
        
       | eyelidlessness wrote:
       | This does look cool. I wonder if there's any interest in
       | supporting JSX?
        
       ___________________________________________________________________
       (page generated 2021-03-28 23:00 UTC)