I’m a passionate Software Engineer with deep knowledge mobile ecosystem.
I started programming on macOS in 2000 and iOS on 2007. I'm also passionate working in backend environments with Node and JS.
Since 2018 I'm leading the Mobile Team at Immobiliare.it, the #1 Real Estate company in Italy.
I'm in love with simple and good design, in my life I'm a strongly follower of wabi-sabi.
❤️ Support OSs
Hi fellow developer!
You know, maintaing and developing tools consumes resources and time. While I enjoy making them your support is foundamental to allow me continue its development.
If you are using one of my work please consider the following options:
🚀 Open Source
I strongly believe in knowledge sharing; since several years I'm an active contributor in Open Source panorama by creating and maintaining widely used libraries, especially for iOS. This is the list of actively maintained libraries (full list is here):
SwiftDate
With over 3 milion of downloads on CocoaPods, since 2015 SwiftDate is the #1 toolkit to parse, validate, manipulate, compare and display dates, time & timezones in Swift. Fully documented with 90% of code coverage this is the preferred solution to work with datetime on iOS, but it also compatible with macOS and Linux operating systems (partially).
SwiftLocation
Location Manager can be painful and uselessly complex with iOS and Swift. This lightweight solution allows you to use all system's location based services (plus external services like Google Maps, MapBox, OpenStreet and Nokia Here) directly from an easy to use and elegant APIs set.
It supports efficient & easy location tracker (single, continous, significant and visits), location by IP, gecoding/reverse geocoding, geofencing, autocomplete, beacon ranging & broadcasting.
Hydra
Asynchronous programming is not an easy task in Swift (as like in ObjC). Hydra is full-featured library which allows you to write better async code. It's partially based on JavaScript A+ specs and also implements modern construct like await which allows you to write async code in sync manner. Hydra supports all sexiest operators like always, validate, timeout, retry, all, any, pass, recover, map, zip, defer and retry.
SwiftRichString
SwiftRichString is a library which allows to create and manipulate attributed strings easily both in iOS, macOS, tvOS and even watchOS. It provides convenient way to store styles you can reuse in your app's UI elements, allows complex tag-based strings rendering and also includes integration with Interface Builder.
ScrollStackController
Create complex scrollable layout using UIViewControllers or plain UIViews and simplify your code!
ScrollStackController is a class you can use to create complex layouts using scrollable UIStackView but where each row is handled by a separate UIViewController; this allows you to keep a great separation of concerns.
More:
- SwiftMsgPack MsgPack Serializer & Deserializer
- SwiftSimplify High-performance polyline simplification library - port of simoplify.js
- UAParserSwift User-Agent String Parser - port of ua-parser.js
- UIWindowTransitions Animated transitions for UIWindow's rootViewController property
- (Archived) SwiftScanner Unicode compliant string scanner
- (Archived) Owl A declarative type-safe framework for building fast and flexible lists with UITableViews & UICollectionView
- (Archived) SwiftUnistroke $1 Unistroke Gesture Recognizer