Hi, I'm Charles and leading the engineering work on Twenty!
We've made the bet to invest on a tailored design for our components. Using an existing UI library is a strength to use robust components and move faster, but I've always struggled to customize it.
There is always a point where you want something custom that is not supported by the library and you start hacking into it.
On previous projects, I've almost always used existing UI libraries.
For Twenty, this is a long term project and the initial burden of creating UI components vs customizing existing ones will be marginal on the long run.
IMO, if you have strong design requirement (and you have enough resources ofc), don't go with UI librairies ; I take as much inspiration as I can from them, I may fork one but I would not hack their API
Agree, it feels like the right decision as well. The grid felt a little bit like shadcn hence I asked.
Using external libraries gives some early velocity, but most of the good looking libraries are incomplete and most of the complete ones are boring (material / bootstrap)
We want our design to match exactly Figma. Shadcn could have been an option because their approach is to have users copy/paste the code, so it could have worked. But copying styles from Figma isn't much more work, it wasn't painful
charlesTwenty|2 years ago
We've made the bet to invest on a tailored design for our components. Using an existing UI library is a strength to use robust components and move faster, but I've always struggled to customize it.
There is always a point where you want something custom that is not supported by the library and you start hacking into it. On previous projects, I've almost always used existing UI libraries. For Twenty, this is a long term project and the initial burden of creating UI components vs customizing existing ones will be marginal on the long run.
IMO, if you have strong design requirement (and you have enough resources ofc), don't go with UI librairies ; I take as much inspiration as I can from them, I may fork one but I would not hack their API
aiunboxed|2 years ago
Using external libraries gives some early velocity, but most of the good looking libraries are incomplete and most of the complete ones are boring (material / bootstrap)
pettycashstash2|2 years ago
iFelix|2 years ago