Hi friends,
This is the third issue of »With Amore«, which I use to keep you in the loop about significant project milestones and product updates.
At the beginning of February, I focused on making the amore CLI more powerful and easier to use for humans and their agents. I also made significant progress towards a powerful licensing and payments system.
CLI
In short, the amore CLI reached feature parity with the Mac app, which means that everything you can do using the Amore app can now be done in the command line. This is especially useful for automation using scripts or coding agents.
One highlight is additions to the amore release command, which now allows you to release a new version of your app right from the project folder without the need for manually archiving and notarizing. The currently fastest way to publish new releases with Amore.
It's now also possible to let an agent complete the initial Sparkle and Amore setup for your app. The amore setup command registers new apps, and with amore config you or your agent can change the release settings of your app.
Tell your agent about the amore help command to get them started.
Licensing & Payments
Another big focus in February was the Amore licensing and payments system, which will be publicly available in March. If you are interested, please reply to this email. Early developers get lasting, better conditions before the public release.
The licensing system consists of a secure Swift SDK called AmoreLicensing, a licensing server, a self-serve customer portal for your users, and a powerful API for 3rd-party payment providers.
Amore currently supports issuing new licenses via CLI, API, and Stripe webhooks. Other payment providers will be added in the future.
The user journey for your customers currently looks like this:
- Optional: The user opens the Amore checkout link for your product, which will redirect to a pre-configured Stripe Checkout session.
- The user purchases a Stripe product. Both one-time payments and subscriptions are supported.
- The user gets redirected to an Amore-hosted success page with information about their purchase and freshly issued license key.
- The user enters their license key in your app.
- The license gets validated and your app activated.
- Optional: The user can manage and revoke their license activations in the Amore customer portal by using their email address as an identifier.
You can modify the user journey by pre-issuing license keys or using the licensing API to build your own licensing solution.
Stripe as Merchant of Record
I decided to use Stripe as the first 3rd-party payment provider because they now offer to use Link as a Merchant of Record via Stripe Managed Payments. It's easy to set up and fully compatible with Amore. If you prefer to sell licenses directly via Stripe, you can do that too.
Amore itself is already using Stripe Managed Payments since November without any issues or complaints.
Built with Amore
Like last month, I want to thank early supporters and adopters of this project that helped shape Amore into the tool it is today. Here are some of the highlights of the 20 new apps that started relying on Amore since last month.
What's Next?
As the work on the licensing system is almost complete, I will focus on documentation and help articles to make it easier for new developers to get started.
I would like to personally onboard the first developers to AmoreLicensing. If you consider Amore as your licensing system, reply to this email to get in touch. I would love to talk to you.
xoxo
Lucas