user avatar
Dominic Gannaway
@trueadm
I'm a software engineer @attio. Author of @ripple_ts, @lexicaljs and @inferno_js. Former @reactjs core engineer, and core maintainer of @sveltejs at @vercel.
London
Joined May 2009
Posts
  • user avatar
    Lexical is now open-source! 🎉github.com/facebook/lexic… None of this would have been possible if it wasn't for the awesome team that work on Lexical full-time! I hope folks get a chance to play around with what we've spent the last 18 months building.
  • user avatar
    I created RippleJS because open source is about sharing new ideas. You don’t have to like it or agree with any of those ideas. That’s the beauty of open source. However, enough people asked me to share it and that’s why it’s now a thing. :)
    react's ecosystem is so big that i give 2 shits about ripplejs inventing new frameworks died long time ago let it go
  • user avatar
    I’m excited to share that I will be joining Vercel next week. I’ll be joining the awesome folks on the Svelte core team! 🔥
  • user avatar
    I’ve been working on a new React-like framework in my spare time. It’s fully compiler driven, there’s no virtual DOM, or component re-rendering. There are signals, but they’re never exposed to the developer and they’re also fully compiled to avoid any runtime lookups. And…
  • user avatar
    We've been building Outline – an extensible text editor library that does things differently. If you use facebook.com or workplace.com, you've likely already used it. We're expecting to open source it early 2022. Website coming soon: outline.dev
  • user avatar
    Replying to @thekitze
    I didn’t create Ripple for you to give a shit. I created it so others that like it care about this stuff give a shit. :)
  • user avatar
    I'm excited to announce that I'll be joining Facebook and the React team next month!
  • user avatar
    I recently spent 2 days on a hackathon project to see if it was possible to render React to HTML at build time with Prepack. I focused on getting our Hacker News benchmark, written in React, working and passing tests. The results were very interesting! github.com/trueadm/ssr-wi…
  • user avatar
    I personally think that 2018 will be the year that JavaScript frameworks start to become JavaScript compilers. Here's a sneak peak at what we've been working on in collaboration with the Prepack team: goo.gl/KeUzXG
  • user avatar
    I'm excited to share that I have joined Attio as a Principal Product Engineer. 🎉
  • user avatar
    For those that don’t already know, I left the React Core team at Meta 2 years ago. Why? I wanted to work on a different problem that is essential to the web — rich text editing/authoring. Specifically around web’s contentEditable.
  • user avatar
    The problem here isn’t the editor, it’s the browsers’ interpretation of the Selection API around contentEditable. It’s almost impossible to build a decent text editor around contentEditable today - there are so many edge cases battling against you.
    I wonder why no app has figured rich text editing yet. It’s really simple: you allow two positions on block boundary, one inside and one outside.
    00:00
  • user avatar
    It's a shame that JavaScript getters/setters on object literals (inside a closure) perform so poorly compared to getters/setters on classes. The difference in all JS VMs is huge – as much as 80x difference in some cases.
    Code snippet:

// Object literals in a closure
function create_item(initial) {
    let x = initial;

    return {
        get x() { return x },
        set x(val) { x = val }
    };
}

// Class based approach
class Item {
    constructor(x) {
        this._x = x;
    }
    get x() { return this._x }
    set x(val) { this._x = val }
}

function create_item_class(initial) {
    return new Item(initial);
}
  • user avatar
    I've open sourced Ripple! github.com/trueadm/ripple It's super early days, not much works and there's little to no documentation or guidance. Plus the codebase is raw, but I at least wanted to share my ideas with the community. :)