1. Deepen my knowledge of #Swift and #SwiftUI
I’ve touched a lot of things over the past few months. #CraftingSwift, #SwiftMeasurements, and #SwiftyNetworking are the best examples. 👨💻
Now it needs to be sorted out. I also want to dive deeper into SwiftUI. 🚀
Maybe some #blog?
Today, let's switch up the environment a bit. 🌟
I've drafted the necessary endpoint to determine what data I need from the backend. #SwiftyNetworking is incredibly helpful in it. Now, let's write some #PHP! 🔗
Meanwhile, check out my networking package!
github.com/piotrekjere...
For the first time, I dared to present my project at #Swift Forums. 🚀
#SwiftyNetworking has become a mature package that I personally use. I wonder if others would also appreciate this way of writing requests. 🤔
Curious? Check out the thread! 🔗
forums.swift.org/t/swiftynet...
#Development
After a busy period with the #SwiftyNetworking refactor, Im now back in @Commit.Photos with performance tweaks. 🔧👨💻
I thought the project was ready for #Swift6, not now. The plan is simple - to start a solid promo and have an update ready at the end of the month. 📸
#Projects
First things first, my package, #SwiftyNetworking, has been completely rewritten from scratch. This is my preparation for the next stage, which accelerated more than I anticipated. 🔁
The next step is to draft the plan, which will be ready within the next 2 months. 📝
Damn… 😞
After successfully refactoring the #SwiftyNetworking package, I decided to focus on @commitphotos' performance.
Unfortunately, my other project blew up… 💥
Uh… A never-ending story… 🔄
#SwiftyNetworking #Package is my vision for the networking layer in the #SwiftUI era. 🌐
I'm thrilled with the final result and have plenty of ideas still brewing. For now, it's time to explore other projects. 🚀
Enjoy! 🌟
github.com/piotrekjere...
#BuildInPublic #Swift #network
The time has come! ⏰
Three weeks of intensive refactoring. Countless lines removed, with almost everything rewritten from scratch! ✍️
#SwiftyNetworking #Package is my answer to how the networking layer should look in the era of #SwiftUI.
Simple, illustrative, and magical! ✨
This is the final version of the AuthorizationProvider, a crucial component of the #SwiftyNetworking package. 🎉
The protocol requires only the auth schema and the storage location for credentials. 🔐
Save your accessToken and explain how to use it. The rest is magic! ✨
#Swift
I needed these two modifiers, `beforeRequest` and `afterResponse`, to create a complete Auth Flow!
#SwiftyNetworking is designed to be simple. Want to authorize a request? Use the `authorize` modifier! 🔐
Just prepare your credentials first, and you're done! ✅
#BuildInPublic
I've always wanted #SwiftyNetworking to be easy to debug from the #Xcode console. 🛠️
As a result, I am using the HTTP messaging description. 💬
It's still a WIP, but it looks fantastic and uses #OSLog, allowing developers to configure it based on the service. 🚀
#BuildInPublic
This is the initial result of adding support for strict concurrency in #SwiftyNetworking.
It used to be simple, but now... additional inheritance, keywords, and more.
Now, I'll sit down and rephrase it again. I want to challenge the current implementation...
Two weeks of #SwiftyNetworking refactoring are behind me, and the results are increasingly satisfactory. 😊
Admittedly, I encountered a few dead ends, but they offered useful lessons. Completing the implementation of the session will be the final key feature. 🔑
#BuildInPublic
The most obvious ideas often come to mind at the end!
I've removed the Request macro from #SwiftyNetworking, which simplifies the code even further. Now, modifiers can change the types of entire request structures.
This refactor has been technically rewarding! 🎉
#BuildInPublic
I discovered an incredible opportunity, but I also hit a roadblock. 🛑
At present, #SwiftyNetworking relies on a cumbersome #macro to identify request types. However, during today's refactoring, I encountered an intriguing moment.✨
I need to experiment with inherited types. 🧪
Man does not live by refactoring alone. 🙌
Creating an advanced package like #SwiftyNetworking requires perfect tools!
Probably most of you have seen some #unboxing, so I'll just share 2️⃣ photos. This time, though, the new #iPhone will motivate me to start a digital cleanup. 📱
I end the day sketching the #Session class in #SwiftyNetworking, which handles requests. 🎨
Choose #async/#await with one of two functions, or opt for #closures or #Combine, as you prefer! 💻
Now, the hardest part: transforming the request into a response. 🔄
#BuildInPublic
#Development
The #SwiftyNetworking package is now under heavy refactor. This straightforward web library is designed to help you effortlessly build queries, much like constructing #SwiftUI views. I'm currently halfway through the development, and you can follow my progress regularly. 🎉
Over the weekend, I implemented a simple structure builder that is Encodable and compatible with the #SwiftyNetworking package. 🛠️
You can use it to build headers, query items, and body data. 💡
My goal is to create a fully cross-platform library for all #Swift environments! 🚀
I managed to sit down for a moment at #SwiftyNetworking over the weekend. 😌
I implemented a feature for easy key-value parameter writing, with predefined headlines for effortless structure creation. 📝
Tomorrow, I'll start by creating a Service to identify the data source. 🚀
I nailed it! 💪
Now, #SwiftyNetworking has a proper #Request builder pattern. I can freely build any objects that conform to Request and place them into a larger structure. 🧱
It's time to start the weekend. Next step: prepare a generic #URLRequest builder. 🚀
#BuildInPublic
Alright, here we go again... It's not so easy. 😅
My #SwiftyNetworking #Package should ideally offer a solution that perfectly suits my needs. Building #SwiftUI Views is more advanced compared to my simplified Request Builder. 💡
Now, it's a deep-digging process... 🔍
#Swift #BuildInPublic
It was a long day, but the results are promising! 😊
I am not sure if this is the final solution, but it is good enough to move further with the #SwiftyNetworking refactor.💡
The Configuration will serve as a source to build URLRequest. Now, I want to resolve the final request.
I created an Environment in #SwiftyNetworking, calling it Configuration.
The Configuration serves as the foundation for building #URLRequests. Like Environment, Configuration is based on ConfigurationValues.
#BuildInPublic
Everything has its beginning! 🌱
My #SwiftyNetworking Request will start with an EmptyRequest featuring an empty configuration. 🚀
Each modifier will inject new values into the ConfigurationValues store, modeled after the Environment from #SwiftUI. 🔄
#Networking #BuildInPublic
Having Request Modifier marks the second step in my #SwiftyNetworking package refactor. 🔄
Unlike before, I now rely on modifiers. Previously, #SwiftPackage copied the Request, modified the configuration, and returned a new object.
Now, it's more aligned with #SwiftUI. 🚀
#iOS
Great first day of the #SwiftyNetworking refactor! 🚀
I have two abstractions: #Request and RequestModifier. Both are modeled after SwiftUI's View and #ViewModifier.
Additionally, I plan to dive into the current implementation to find a better solution for modifiers. 🔍
#Swift
This is #SwiftyNetworking, a simple package that provides a SwiftUI-style request builder.
#HTTP Request methods can be included in the body, and modifiers help build the request structure. 📦
The biggest challenge was supporting dynamic response types. 💡
#Swift #BuildInPublic
This is the best refactor I've ever made! 🤣
Jokes aside, I plan to rewrite #SwiftyNetworking from scratch. The aim is to keep the current API intact while building better fundamentals under the hood.
The primary goal is to support #Swift 6 concurrency features.
#BuildInPublic
The latest release of #Swift 6.2 gave me an opportunity to refresh my #SwiftyNetworking package. 🚀
I made the initial commit in late 2021. Since then I've learned a lot and still use my #package for #networking. 📦
It's time to reach version 1.0! 💪
github.com/piotrekjere...