I've tried this approach and I didn't like it. Mostly because I found it problematic to find the components I was looking for.
For example: imagine a Button with IconButton and ProgressButton variants. In this case, the Button goes to Atoms, IconButton to Molecules (as it contains other components) and the ProgressButton to organisms (as it tracks some progress in the state). Now, it wasn't always clear to me where should I look for the specific component. And this was an even bigger problem for someone who just joined the project. It's a lot easier to have related components next to each other.
(btw. I know that the ProgressButton could just accept progress and be a Molecule, treat it just as an example!)
This wasn't a problem when the project was small, but as soon as it became bigger, it was a lot easier to just put all components into one folder, or just structure them by feature.
But that's just my opinion :D It "feels right" for me - quoting Dan Abramov's words - but everyone feels different :)
I've tried this approach and I didn't like it. Mostly because I found it problematic to find the components I was looking for.
For example: imagine a
Button
withIconButton
andProgressButton
variants. In this case, theButton
goes to Atoms,IconButton
to Molecules (as it contains other components) and theProgressButton
to organisms (as it tracks some progress in the state). Now, it wasn't always clear to me where should I look for the specific component. And this was an even bigger problem for someone who just joined the project. It's a lot easier to have related components next to each other.(btw. I know that the
ProgressButton
could just acceptprogress
and be a Molecule, treat it just as an example!)This wasn't a problem when the project was small, but as soon as it became bigger, it was a lot easier to just put all components into one folder, or just structure them by
feature
.But that's just my opinion :D It "feels right" for me - quoting Dan Abramov's words - but everyone feels different :)
Thanks for this insight ;D
I wonder if I will have the same feeling when my project grows.