Live data from Hacker News

Show HN: I made an open-source Notion-style WYSYWIG editor

novel.sh

31–40 of 140 posts

Re: Show HN: I made an open-source Notion-style WYSYWIG editor

#31

Tangent: On the note of web based text field for "normal users", what's the best UX you can get while also trying to be as no-JS-friendly as possible? Are there CSS-only tricks to make editing in an input field nice? I'm making a low-JS site, but it also has a lot of input fields, user content generation, etc. In "modern CSS" i feel like Input boxes should be better than they are. Is JS the only way?

What issues specifically?

In general, :has and :user-invalid are new and can be useful styling forms.

Re: Show HN: I made an open-source Notion-style WYSYWIG editor

#32

Are there any examples of something similar that has the ability to seamlessly interact with tables as well? Notion seems to be the only player in the space that effectively uses its tables as linkable databases, most similar products seem to either lack table functionality or they're just simple formatted text. So much of my daily work revolves around databases and Excel, I would love the ability to have multiple vi…

There is a project called “AnyType” that is real and i use it but it’s “open source promised soon”. The gist of it is a Person knowledge management system except the items are in a linked graph (and the relationships are typed).

It actually has an editor that looks eerily like the linked one so I wonder if they’re related. It lets you use slash-commands that’s much more expressive than everything except maybe notion. But again, it lets you operate against a database-like set of objects.

I don’t think you can point it at real databases though.

AnyType.io

Re: Show HN: I made an open-source Notion-style WYSYWIG editor

#33
post #25

Earlier quoted context omitted.

Oh, it just uses OpenAI. https://github.com/steven-tey/novel/blob/62d32be43dae8aa40fa... ...and has a 50-request limit per day . https://github.com/steven-tey/novel/blob/62d32be43dae8aa40fa... ...and trims the content to, um. 500 characters?! https://github.com/steven-tey/novel/blob/62d32be43dae8aa40fa... So past a certain point you'll get the same completion repeatedly / a completion of the start of your document, c…

I think the nature/feel of the quick response is likely due to the fact the completion call is streaming "stream: true" [1]. Then, they are parsing it back to text as it streams the response back. [1] https://github.com/steven-tey/novel/blob/62d32be43dae8aa40fa...

I'd have been more surprised if there wasn't streaming. All the LLMs I have ever used, stream tokens in real-time. I'm talking about the time spent per token.

Re: Show HN: I made an open-source Notion-style WYSYWIG editor

#36
At the risk of sabotaging stuff I've worked on, it's _astoundingly easy_ to glue together Y.js, prosemirror, and a little bit of express.js to get a distributed Notion clone with conflict free resolution.

Like I have something that I got working in 3 days with multiple pages, so links between things, and cursor syncing (most of this work is provided by wonderful people with full-featured libraries!). There's some trickiness with how Y.js actually works (in particular map ID conflict resolution meaning you don't want a dictionary of page names to pages but UUIDs and then some sort of manual revision checking....). But you can get that and probably with a bit more work get ~instant search and the like. All with free offline capabilities.

Of course then I stared at this and was like "I like notion because it looks nice" (I personally don't care about the AI stuff or the database stuff), so just went and paid for notion for my family usage.

Re: Show HN: I made an open-source Notion-style WYSYWIG editor

#37

Tangent: On the note of web based text field for "normal users", what's the best UX you can get while also trying to be as no-JS-friendly as possible? Are there CSS-only tricks to make editing in an input field nice? I'm making a low-JS site, but it also has a lot of input fields, user content generation, etc. In "modern CSS" i feel like Input boxes should be better than they are. Is JS the only way?

content-editable is a crap shoot without some JS layer on top of it normalized the output. Otherwise you end up with the same visual output being able to defined as 50 different inputs.

The other thing is content editable allows all kinds of garbage to be pasted into it included any kind of inline style.

Now I maintain a fork of Htmlawed which can do a pretty decent job of filtering down arbitrary HTML into a safe and restricted subset but with no JS there can be a huge disconnect between what the user sees in their editor and what appears as the sanitized output.

As a result I’m currently using SlateJS as a rich text editor foundation. I’ve used others in the past but this is the nicest so far.

Re: Show HN: I made an open-source Notion-style WYSYWIG editor

#38

Tangent: On the note of web based text field for "normal users", what's the best UX you can get while also trying to be as no-JS-friendly as possible? Are there CSS-only tricks to make editing in an input field nice? I'm making a low-JS site, but it also has a lot of input fields, user content generation, etc. In "modern CSS" i feel like Input boxes should be better than they are. Is JS the only way?

Rich text editing is probably not possible or not worth it.

However, most people who disable JS are probably fine with not using rich text and definitely shouldn’t expect it. Just add a CSS stylesheet which turns into something half-decent, put a note that markdown is supported, and make a plain text editor.

Re: Show HN: I made an open-source Notion-style WYSYWIG editor

#40

Are there any examples of something similar that has the ability to seamlessly interact with tables as well? Notion seems to be the only player in the space that effectively uses its tables as linkable databases, most similar products seem to either lack table functionality or they're just simple formatted text. So much of my daily work revolves around databases and Excel, I would love the ability to have multiple vi…

Logseq mostly does this, I think. Rather than starting with a table and adding objects to it, you start with the objects in your database — pages and blocks — and then form tables by querying your database for those objects based on their attributes (tags, contents, etc).
Post reply on HN