On Thu, Dec 1, 2016 at 11:45 AM Benjamin Young <[email protected]> wrote:
> The UI bits would be (as much as possible) saved for future work. The > focus for this iteration would be something as simple as wrapping > highlights in <mark> tags. > > +1 to semantic markup Here are a couple other ideas floating around from Hypothesis that never made it to release: Marks [1] is an alternative highlighter implementation that uses an SVG overlay rather than surrounding the highlighted segment with markup. The domannotations project [2] is an idea for how annotation activity might broadcast DOM events, rather than exporting an `annotator` object to the window. Anyway, doing significant UI work often means choosing and adopting a UI framework, which means tying ourselves to something in a really high churn environment and limiting our usefulness to anyone who hasn't made the same choice. Trying to be a whole annotation workflow without choosing a framework is how Annotator became a framework in the first place. The result was that no one who was contributing (me and Nick) cared enough about it to get 2.0 released. I'd like to see some work that is framework-less, leverages the platform (clipboard, events, editing commands), and exports a sensible code interface. We couldn't easily consume UI from Hypothesis. It's a non-trivial Angular application, and it's not Apache licensed. The pitch has to be that we'll help maintain things that aren't their application, for mutual benefit. Make it less work for them if they support us. If we produce anything compelling, I'll even make the PRs to port the Hypothesis client to use our work. For instance, I wrote the core `anchor` implementation in the Hypothesis client [3]. I contributed that under CLA that allows me to pull it out and relicense it. It's just a little async, idempotent function to drive selector resolution, but it's central to the application. There's also really good ideas that went into the marker support of Atom [4] that might be useful. > The primary objective is to get us coding together. :) And output > something useful as a foundation.j > +1 I am not really interested in saying anything about storage or style at this time. These are the things that everyone has strong opinions about. I want to solve the problems that people don't care about so that they can focus on building their applications. [1] https://github.com/nickstenning/marks [2] https://github.com/nickstenning/domannotations [3] https://github.com/hypothesis/client/blob/master/h/static/scripts/annotator/guest.coffee#L172 [4] https://github.com/atom/atom/pull/9426
