Personal
What's Going On? #2
More miscellaneous life updates, and Comix Cleric news!
You're Late
Yeah, I said about every month, so we're close enough.
So... What's Going On?
Personal Updates
Winter is almost over... or is it? I just made it out the otherside of a bad ice storm. Our car was frozen to the ground by several inches of ice, and the snow got so solid and slick I fell and hurt myself for the first time in 2 winters. (I have very stable footing, usually.) So, I couldn't even walk to the store to get supplies, like ice melt.
I'm redoing my own water supply-line plumbing (not drains/sewer), and while I haven't been able to make a ton of progress, I managed to run part of the new piping and get cold water back to the kitchen sink! The rest of the cold water piping will be pretty easy as well.
If you're curious, I'm just going easy-mode and using 1/2" PEX-A with SharkBite crimp fittings. I do have a few push-to-connect, but they are much more expensive, and I feel the ring clamps will be more reliable in terms of preventing future leaks.
I'm also correcting an issue the previous owners made: MORE VALVES. They are the most expensive part, but they are invaluable when you have a pipe burst. If you place your valves correctly, you can cut water off at the problem area instead of shutting off the water entirely. Our cold water has been closed-off since I accidentally broke a steel pipe in the downstairs bathroom a couple of months ago trying to fix things. So, it just led to me replacing all the old galvanized steel pipe myself. I was getting tired of the corrosion and potential lead leaking into our tap water anyway. The upstairs will be much easier to replace, since it's all basically at floor-level instead of the ceiling.
Something neat: We were quoted a little over $1000 to redo our pipes. Which, all-in-all, is not that bad. But, we were in pretty dire-straights at the time, so decided to try and buy the materials myself.
The pipe was pretty affordable, $40/100ft and I bought 100ft each of red and blue for hot/cold. So, $80 so far. It'd take forever to list all the fittings, but the total came out to about $325, including tools.
To be fair, I already had some, like a sawsall to cut the old pipe near a threaded-joint, but I could have used a hand-saw, too.
$325 and some time on the weekends is not a bad price for doing your own water pipes, tbh. The PEX-A should be more resistant to bursting, and the flexibility, simple fittings and valves are gonna make fixing problem areas so much easier.
Okay, Okay, Great! Comix Cleric News?!
So, we've been silently working away in the background after our short break. I'm incredibly happy with the progress we've made in the clean-up, but we hit a little snag: The app is a bit too heavy for our internal hosting tools, and while I planned to replace the database solution in the future due to unrelated issues, it seems we didn't get a choice this time.
We're changing out our back-end as we speak. This is not a complete rewrite, but it's not trivial either. At least not for me! Our newest team member, Aria, has been making quick work of it! Given his background in server-side programming, I'm not all that surprised, but I am eternally grateful for him going above and beyond to help us solve this problem before it got out of hand. He was brave enough to look over what we had and say "this is not gonna work out how you want unless we make some adjustments."
To be clear, Comix Cleric as it stood would have worked perfectly fine as a self-hosted system with the direction it was headed. But, it would have had some major flaws to overcome after release that would have made adding advanced features more difficult and force us to devise a more complex migration system that would have made this a pain for all involved, including those self-hosting.
Instead of putting myself, Aria, and you through that, we opted to try-out a tried-and-true method that I was not personally familiar with. I am still working on my own branch, parallel to Aria using the original database system, just in case, but ideally we wanna rip it out ASAP.
Sounds like bad news, sure, but it comes with some good! Despite now being 2 days past our estimated beta start date (at the time of writing), we had some very successful test deployments to our hosting infrastructure. We've still got a bit of work to do, but beta testing for supporters should be able to start in just a few more days, certainly before the end of the month.
Even more good news about the back-end stuff: With our new solution working, it opens us up to using many additional features of those tools to make advanced features for Comix Cleric that previously would have been extremely difficult to add myself with the old tools.
I have been hard at work reducing the overall codebase bloat and making things (hopefully) easier to understand for anyone who wants to contribute. Just in a single form, I reduced the number of lines by 40%!
Something I want everyone to be aware of: We have been harping that Comix Cleric won't be perfect, expect flaws, etc. We mean it, though. We have solid plans and working prototypes in place for updating the UI and theme system to make it extremely flexible. But, it would require too much rebuilding to be worth it at this stage. Luckily, the app UI is just a shell that helps control the database. So, as long as we don't have to make any major API changes; updating, extending, and replacing the UI should be pretty easy.
Some additional updates include:
- RSS Feed support is now in beta
- Social Link Previews are now in beta
Currently, the plan is to have the main RSS feed use a merged list of all post types (Update, Blogs, Cast, Gallery), and a feed for each of those types individually.
Things may change, but the current access pattern is https://my-site-name.com/api/rss and https://my-site-name.com/api/rss/blogs or whatever post type you'd like to subscribe to.
The social media link previews are a simple UI that will display what your link will look like on sites and apps like Bluesky, Discord, or any others that read the meta tags of your site. It shows a preview for both "Open Graph" and "Twitter" card styles. Twitter, in this case, simply refers to the web standard created by Twitter, not that it's specifically for Twitter.
Experimental Features Already?
I can't promise anything. I really can't. We have our main goal, and we need to keep heading that way.
That being said, I've been pretty proud of my solutions.
So, currently, the way of handling themes is Skeleton UI's Tailwind-based design system, which relies on a ton of custom CSS properties that are converted to Tailwind styles. It works well, as long as you don't mind the styles being a bit opinionated. It keeps things looking consistent and modern, with enough flexibility that you could really make it look however you wanted with enough fiddling. That's all well and good, but when the UI is basically hard-coded in its design, changing colors, corner roundness, and font is probably not enough for most people. Not to mention that Tailwind compiles your styles at build-time, so you'd need to build a custom version of the app to effectively modify those classes. Tailwind only includes classes with the build if they exist somewhere in your code. So, if you do not use p-78 or whatever, it can't generate that if you wanted to modify it from the admin panel. Just can't work.
I really tried to put what I thought was my best foot forward with that, but I know now I could do better. The new solution is probably not one that people want to hear, but I promise I'm going to make it as code-free as I can.
I recently heard about a CSS-in-JS library called Vanilla Extract. You can basically build an abstract design system, and create combinations and variations on those styles.
Since the admin CMS is relying mainly on JavaScript and JSON already, I can easily get references to those styles on all components and register them as base styles. Then, I can create a ton of presets that you can combine and swap out like tags on a post. You'd just get a little input where you select presets that determine the final style.
Allowing you to effectively create your own presets is something I'm looking into, but I'm sure it is easily possible.
This isn't to say the current system is going anywhere. I honestly love the ease of Skeleton's Design system, we'll just be augmenting it. We'd likely still use Skeleton UI for the color sets and light/dark mode options, but use Vanilla Extract as a way to apply the styles so they can be more easily adjusted in a UI, rather than a code editor.
Since I implemented the drag and drop system, I've also been highly considering making each app page more customizable by allowing you to reorder, hide, or add custom components to them. It would also likely come with some in-place styling features, like a modal that allows you to choose the tags to apply specifically or generally to that component. I already have things in-place to begin handling app pages via the database, so you really can control what pages your app has and displays.
Enough Daydreaming
With all that said, we're extremely grateful to all of those that have supported us thus far! We are excited, and quite nervous about getting this out into the wild, but just a little while longer. We're trying to make this the best version it could be before we fully release it around early to mid May!
Just a bit of reassurance: Whether or not it's 100% ready, we are still willing to open-source the project in a timely manner.