Welcome to
Starting Something

All the boring technical stuff™ before launching a product

It should be easy to make my software service available to others. It's really easy if I can make my service public, and all data is shared between all users.

But if I want to distinguish one user from one another, and perhaps I even need to know who they are. I could use an authentication mechanism.

I will probably want to allow for administrative access, perhaps on multiple levels. The System Administrator should control system wide settings and have access to system wide report, while a Tenant Admininistrator should have tenant wide control. There could be a need for even more roles.

Authentication will take me half way there. I will also need to handle authorization or access control. Ie. who can do what and who has access to what resources.

It should be easy let people pay me for using my software. Of course, making people want to pay isn't always easy, but at least it shouldn't be a technical problem. How can I utilize a payment provider?

There are more things to take care of. How do we handle logging and monitoring? Displaying dashboards and reports about our infrastructure, etc.

It turns out it is not so easy after all...

What do I need to start a business on the web?

  • Authentication
  • Authorization, ACLs
  • Payments
  • Handling different tiers configurations or SKUs
  • Content management
  • Email notifications
  • Administration control panels for system admin and tenant admin
  • System metrics and dashboards
  • Domains and DNS
  • Certificates

Which of these should Starting Something™ do?

What would I like to have?

  • A turnkey solution for "all the boring technical stuff before launching a product"
  • An opinionated starter kit that sets up everything I need from well tried components.
    Some suggested components are Kubernetes, Lets Encrypt, OpenID Connect, Keycloak, KrakenD, Seq, Prometheus, Graphana etc.

... and it should let me start creating using the languages and frameworks that I know.
(For me that would be at least React, C#, Python.)

Infrastructure

For a SAAS solutions that suports either multi tenant or single tenant.

  • Infrastructure that is either self hosted or hosted by a provider, like AWS, Azure etc.
    (Kubernetes seems like a good choice)
  • API Gateway

It should not be opinionated about development tools, languages, framworks and runtimes that I can use

However, if you're ok with that, you should look into some of the Turnkey Solutions out there.