Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
chrisvxd
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
7 ms
·
31.
▲
by
chrisvxd
3y ago
Thanks! Some answers for you: 1. You can override a bunch of stuff using React-like APIs. `renderHeader` allows you to take over the header, and the plugin API allows you to wrap the root of the preview content page and take over the fields
32.
▲
by
chrisvxd
3y ago
Thanks for sharing react-page! I hadn't come across this before. Builder.io is great but the hosted nature made it a non-starter for us.
33.
▲
by
chrisvxd
3y ago
The name comes from (ChatGPT-researched) folklore: https://en.wikipedia.org/wiki/Puck_(folklore) Puck is a... fairy... [that takes on] the shape of animals Puck is also a little, er, mischievous and sometimes seen as a
34.
▲
by
chrisvxd
3y ago
Great idea - could add this as a core field type so you can use it via the fields API, i.e. `{ type: "css", cssProperties: ["color"] }`
35.
▲
by
chrisvxd
3y ago
Oh, awesome. Let me know how you get on!
36.
▲
by
chrisvxd
3y ago
React is what we needed for our use case, but maybe we can eventually evolve it to a place where it can be used with different frameworks.
37.
▲
by
chrisvxd
3y ago
Great idea - might update it once the dust has settled.
38.
▲
by
chrisvxd
3y ago
Thank you!
39.
▲
by
chrisvxd
3y ago
Yes, but turns out I don't know enough about it. Related thread: https://news.ycombinator.com/item?id=37395707
40.
▲
by
chrisvxd
3y ago
Oh that's fantastic. I wasn't aware and applaud the decision to go open source. Happy to discuss/collaborate. I'm @chrisvxd on GH/Twitter, and here's my LinkedIn: https://linkedin.com/in/ch
41.
▲
by
chrisvxd
3y ago
Puck is for integrating with your existing component library, so not completely no code. Having said that, a developer could add any type of form input as a type of component!
42.
▲
by
chrisvxd
3y ago
Typically marketing sites and blog posts etc. It could probably be extended to applications, but that’s not what we built it for.
43.
▲
by
chrisvxd
3y ago
Puck is focused on providing a solution for non technical folk to build on-brand web pages with their team’s existing React components. This enables them to build web pages with guard rails that respect their brand guidelines. Plasmic is a
44.
▲
by
chrisvxd
3y ago
You can certainly configure it to work with GraphQL if you need to. See this adaptor for an example on how to integrate with external data sources: https://github.com/measuredco/puck/tree/main/packages&#x
45.
▲
by
chrisvxd
3y ago
It’s probably a cliche but yes, we’ve been thinking about this.
46.
▲
by
chrisvxd
3y ago
It actually could be interesting to add tiptap for collaboration!
47.
▲
by
chrisvxd
3y ago
Thanks! It’s possibly I’m misunderstanding, but I believe Puck is a different problem space to the other solutions you’ve mentioned - Puck enables content teams to produce web pages using existing React components produced by their React de
48.
▲
by
chrisvxd
3y ago
Framer is a design tool, but Puck is a content tool. We're focused on allowing content teams to create pages using existing on-brand components. Like a WYSIWYG with guard-rails. We built it because we couldn't find something that
49.
▲
by
chrisvxd
3y ago
This comment made my day. Thank you
50.
▲
by
chrisvxd
3y ago
It pretty much supports anything that React supports, but it's not possible to pass callback props in directly via Puck's authoring form. However, you might be able to either wrap your component inside the `render` function and de
51.
▲
by
chrisvxd
3y ago
Sorry I got the wrong end of the stick. Please see my other reply to your comment.
52.
▲
by
chrisvxd
3y ago
+1 what Scott said Multi-column layouts are incoming very soon And Puck does support either server or client rendering
53.
▲
by
chrisvxd
3y ago
This might be a better example, actually: https://github.com/measuredco/puck/tree/main/packages/adapto...
54.
▲
by
chrisvxd
3y ago
We don't natively support templating strings, but since it's rendered by React, you can always add that when integrating Puck. However you can use an adaptor if you need to pull data in via a third party API: https://gi
55.
▲
by
chrisvxd
3y ago
You can use adaptors for this. Adaptors let you request a third party API via the `adaptor` field type. Docs are limited, but there's a reference data shape here: https://github.com/measuredco/puck#adaptor Example
56.
▲
by
chrisvxd
3y ago
I just re-read your comment and realised I didn't answer it first time around. The best way to handle this is in the render function you pass to Puck, which can continue to support the old prop (`description`) and map into the new prop
57.
▲
by
chrisvxd
3y ago
Yeah, similar!
58.
▲
by
chrisvxd
3y ago
We let the user decide how they want to store the data via the `onSave` and `onChange` callback props you provide to the `<Puck>` component. So you would likely save to your own database in the callback. The data shape is detailed her
59.
▲
by
chrisvxd
3y ago
Yup that's the one. Also recommend checking out [dnd-kit]( https://dndkit.com ), which we may migrate to at a later date.
60.
▲
by
chrisvxd
3y ago
It's such a common problem, I'm amazed there aren't more solutions out there. A sound data model really helps things out. I'd go API-first. Drag and drop is a PITA. Specifically multi-column layouts, which require nested
More ›