You might get more engagement if nominations could be made via swift.org, probably behind a GitHub auth.
- Package: swift-mustache
- Reason for nomination: I used this for the first time last week for a little side project. Iâm very impressed with how well it works and how natural it is to use, especially given Swiftâs generally skimpy reflection APIs. It made getting this side project off the ground mostly a matter of writing out the HTML I wanted, rather than learning a whole DSL or something. Very handy and easy to use.
iâm going to take off my âwork group hatâ for a moment and just speak for myself as an ordinary package maintainer (so this is just my own opinion and should not be interpreted as carrying more weight that it does!)
when i visit the page Server Packages on swift.org, 100 percent of the clickable area in the body content links to the domain swiftpackageindex.com. in fact, the More server packages paginator doesnât even take you to a second page of packages, it just funnels you to the search function on swiftpackageindex.com.
the Community Showcase page is similar, except the âtilesâ (cards?) have extra footer links, some of which link back to the Swift Forums, but most of which just send you to⌠the Swift Package Index Podcast.
there is nowhere on these pages where a visitor could click and actually be taken to, well, the packageâs GitHub repo itself, which i as a package author would want to be the most prominent link on these tiles.
to be completely honest, i personally feel that - with the way the page is currently structured - being featured on the Community Showcase Page benefits SPI and the SPI podcast a lot more than it benefits the package itself.
iâm totally fine with there being lots of links to swiftpackageindex.com on these pages! but the promo right now is very lopsided and i would expect at least 25 percent of the clickable area on that page to link to the actual GitHub repository for this to feel like a âgood dealâ to me as a package author.
i know that the pages are a work in progress, and i do see a lot of potential in a centralized list of âfeatured packagesâ. if the incentives were a little more âbalancedâ (e.g., by allocating more of the clickable area to destinations chosen by the package maintainers themselves) i personally would be a lot more interested in participating.
I think it might be better to have this discussion in its own thread and leave this one for nominations. This topic came up before and there are pros and cons to each approach.
Two for Nomination:
Package: GitHub - Zollerboy1/SwiftCommand: A wrapper around Foundation.Process, inspired by Rust's std::process::Command.
Reason for nomination: While stumbling over my own two feet with a stupid bug, I started searching for libraries that supported subprocess shell execution and capturing the output. This was highlighted/announced on the forums by the Author a while ago, and I was impressed with how light it was in terms of dependencies, and thoughtful in its public API.
I'd like to respond, too, but as @kaishin said this thread isn't the place. Please tag me in the new thread if you post one so I can see where it is.
Happy New Year, everyone. I hope you had a nice holiday break and are raring to go for 2025.
With that in mind, it's time for me to ask for any package recommendations. Did you come across someone's new project over the last month or add a new dependency to your project? I'm sure other people in the community would be interested to find out about it.
Here's a template, as always:
> - **Package:** [Awesome Package](https://swiftpackageindex.com/owner/repo)
> - **Reason for nomination:** This package is amazing and I use it all the time.
I'd like to nominate
- Package: Orb
- Reason for nomination: Discussed on Episode 52 of Swift Package Indexing
- Package: Queue
- Reason for nomination: Discussed on Episode 52 of Swift Package Indexing
I'd like to make a nomination!
- Package: ColorToolbox
- Reason for nomination: There are a number of cross-platform color libraries out there. I have used this one for a while, I believe after originally discovering it on the Swift Package Indexing podcast. It solves the stated problem well, has great test coverage, and the author is happy to receive changes.
Just one from me this month:
- Package: SoulverCore
- Reason for nomination: Discussed on Episode 52 of Swift Package Indexing.
Figured I'd try my hand at some (only slightly shameful) self promotion
- Package: CodableWrappers
- Reason for nomination: Allows declarative Codable encode/decode customization with property wrappers and CodingKeys with Swift Macros. Now fully Swift6 ready.
Also someone else wrote an article about it! Simplify JSON Parsing with CodableWrappers | by Nicholaus A Purnomo | nicholausadi