Like... maybe $35 USD per month? But if it doesn't have unlimited bandwidth, then that's not happening; I won't be paying for bandwidth (it would be way too anxiety inducing).
Like... maybe $35 USD per month? But if it doesn't have unlimited bandwidth, then that's not happening; I won't be paying for bandwidth (it would be way too anxiety inducing).
I think we've all crossed that line at some point in our lives. π
@alex.bsky.team If possible, please also add this Swift package to the list, since itβs also being maintained frequently.
When I have time, Iβll create a PR with the changes unless you end up doing it faster than me.
Oh, right: it doesnβt help that there are some things that should be deleted or renamed, as my indecisiveness has caused things to be a little bit messyβ¦
Iβm ashamed to say my WPM is extremely slow, even with the many thousands of lines of code Iβve written. Poor motor skills donβt help. π
(Unless 35 WPM isnβt actually slowβ¦)
Overtime, I will migrate them all to make them structs handle validation fully. Itβs just not going to be at launch; I need it to be out in the wild for a few days to clear my head and have a better idea of how to replace the validation enums into making the validations built in and understandable.
This is because Iβm still not entirely understanding of whatβs being validated. All I know is that my code does work for the most part (save for a few bugs and small inconsistencies).
The declaration organization will probably be a little bit unconventional for the Swift community; you would be expecting Codable structs, which they exist, but the major difference is that the custom Codable methods donβt have the validation plumbing; those are in separate enums.
I know I know: Iβm not very good at writing software. Iβm trying my best, however; Iβll learn more as I get more feedback.
The scaffolding stuff is done.
Itβsβ¦ it took me two hours to write.
More professional programmers would complete it in under 15 minutes.
Please note I havenβt used any LLMs while writing this project.
Iβm glad to see more people are connecting the dots here. This is why itβs so exciting to see this happen.
Right now, I feel like permissions data and branding are the major two things that we need to jump over in order to get the general public to want this.
I will do so soon. Thanks!
Finally, there's a well-developed ATProto Swift package named "swift-atproto" and I'm unsure why it's not in the list. It fits a number of use cases that my family of Swift packages aren't equipped to deal with.
I hope they add it there as well (or maybe I'll send a PR for it soon).
The only thing I'll say (though it's not their fault; the issue is how I've currently organized it) is that "crypto" being in red isn't exactly accurate: yes, the main repo doesn't have it, but ATCryptography is part of the ATProtoKit family, and it's pretty much complete. So I'd argue that's green.
I can see the my SDK is listed there as well. I do see a lot of yellow in there, however, so I'll have to get to work on making all of the reds and yellows into greens.
But this is exciting. It's yet another star we SDK devs can point to in our progress.
Oh! π The AT Protocol website updated their website to showcase the SDKs more fully now!
That said, it'd probably be better to have the icon akin to that "classical building emoji (ποΈ). I'll have to somehow create a 3D model of that so I can either insert it into the the main icon, or make it a reference to later draw over it vector-wise (probably the better way; I want it vectored).
I suppose that, for ATCommonTools' icon, it would be translucent, and a box would be revealed under it (since, from what I can see, "shared libraries" appears to be consistent here.
Anything can be repeatable if you can lock down a pattern (or at least gain enough pieces and leverage where most inconsistencies are minimal).
With that said, I can see where youβre coming from and I donβt think I can really disagree with you here.
To clarify, the reason I feel this is important is so that the application validates data at the client level, thereby potentially saving bandwidth (especially if the user has cellular data and has a small data cap; I do want to look out for that).
What I do want to say, however, is that some of the things Iβm exploring are pretty exciting (at least to me; I know itβs not exactly important for most developers, but for me, itβs vastly important for all of these parts to work to ensure efficiency and a good developer experience.
And then thereβs the fact that Iβm adding inline documentation to the mix as well, among other things that I donβt want to say right now in order to not overpromise anything.
Thereβs a lot of little things that Iβve added that tries to make my code as strictly compliant as possible compared to others. And of course, Iβm trying my best to find ways to optimize my code for speed, readability, and efficiency.
They are, yes. But there are quite a few things in my code that doesnβt entirely make it trivial. For example, lexicons will define a minimum and maximum value for things; my code tries to enforce this rule strictly. Thereβs also converting from their date format to what Swift uses.
Anyways, Iβm rambling. The point is, everything is slow because AT Protocol is moving too fast and my greedy side of me wishes they slow down for, like, three months so I can catch up. π€£
I could potentially go the route of using JavaScriptKit entirely as a stopgap for the remaining packages, then slowly converting the TypeScript until itβs fully converted, but Iβm unsure if that would break my promise of making Swift equivalents and I should just go full Swift.
Maybe JavaScriptKit could help somehow, but Iβm not sure how yet. But even then, last time I checked, JavaScriptKit and JSBridge (I think thatβs what it was called) doesnβt have full TypeScript support yet; it just only has full support for JavaScript.
I will also need to go back to some earlier ATProtoKit packages and look at any updates from the atproto repo packages. A few of them have received updates since then. Iβm looking to seeing how I can somewhat automate that, too.
(I was trying to add that as version 0.1 of ATLexiconTools, but it became too much, so Iβve since removed it.)
That said, Iβm excited to get that up and running eventually.
Also, for version 0.1, I wonβt be adding the feature where it uses the recommend validation option supplied in the link below.
I still need to convert the relevant package first. That will also be part of ATLexiconTools as a separate library in the package.