@apollo13 At some point I want to write a blog post like "Why iommi is so weird" 🤣
TLDR: were many small steps, each fixing a problem. It's just that the entire path was largely taken inside me and my co-conspirator's head over 10 years as we developed tri.table, tri.query, tri.form, tri.declarative and then remade all that into iommi. https://kodare.net/2024/09/03/admin-replacement.html tells just a small part of the story. And https://kodare.net/2024/09/11/why-we-wrote-a-new-form-library-for-django.html another part.
In “So you want a new admin?” Jacob Kaplan-Moss writes about the cost and manpower it took to design the Django Admin system. TLDR: The original version was built by a team of 5 people working tightly with users for over a year, then it has been polished for over a decade after that. He estimates $1 million dollars to design a new one.
@apollo13 The dunder paths are just syntax sugar for nested dicts really. So like `columns__foo__display_name='foo'` is shorthand for `columns=dict(foo=dict(display_name='foo'))`
Once you get that, the dunder paths become much less intimidating.
@apollo13 Ah. Sure thing.
If you have some feedback on the docs I would love to hear it. It's been quite hard to write docs for iommi, partly because I don't write this type of docs enough probably, and partly just because I'm too much of an insider to know what needs explaining. I write a ton of it based on feedback and questions.
The cookbook parts are probably the most useful for beginners, before the philosophy clicks.
@apollo13 Hmm.. kindof like the picker data, but exploded? I like it. I think the right approach isn't an image, but building HTML and showing that in the docs.
All the examples in the docs (except the video) are iframes with the actual output of running the code of example above it. That's way more maintainable than screenshots, and work better on mobile, AND you can do inspect element and look at the DOM.
While trying to create a style for patternfly6 which uses class names like pf-v6-c-table__sort I ran into the issue that I cannot set this to a callable: my_style = Style( base, Column=dict( header...
@apollo13 Hm, yea, that's clearly a bug. I'm discussing this one with Johan who is the brain behind the fiddly parts of iommi.
Is this a part of implementing a patternfly style? I saw your post about that now and realized I didn't properly react at the time. I would love to have that included in iommi.
The discord is maybe the best place to collaborate on things like this, if you want to join it.
Oh, and the live style editor is another tool that can make building a style nicer.