Skip to content

Instantly share code, notes, and snippets.

@tym-xqo
Created May 1, 2021 14:35
Show Gist options
  • Save tym-xqo/1ece4b121571ca7ef9e54fac661c051c to your computer and use it in GitHub Desktop.
Save tym-xqo/1ece4b121571ca7ef9e54fac661c051c to your computer and use it in GitHub Desktop.
Nerium SaaS ideas

Nerium SaaS MVP ideas

  • Nerium does not have a SQL query authoring interface, by design. "Write SQL in your favorite editor" is a feature, indeed one of the main selling points.
  • So, a public offering needs a way to get SQL to it. I'm thinking of something that handled this through cloud storage: user writes and saves queries to a local directory; Nerium-SaaS offers a mechanism like Netlify, to ingest that and upload it to the cloud, using some naming scheme to ID the tenant and an "upload event" or release.
  • also like Netlify, this could be handled via GitHub integration
  • user also needs to be able to provide a database url to their data source. this will necessarily include a password, so it will have to be done securely somehow — I.e. ideally the Nerium instance we launch for them in k8s as access to it, but we as the service provider do not. At a minimum, if we can't get around having to share the share the secret, it's at least protected from other tenants and outsiders. In general, I imagine this works the way users provide secret envvars to like Heroku or CI/CD vendors.
  • Finally, the deployed Nerium API service instance needs to be able to authenticate the clients that call it. Unique API token per tenant should suffice here for MVP; we can leave authenticating report users and securing access to specific reports and data up to whatever front end the tenant wants to develop against the service.
  • Oh, we'll need to generate a base URL for each tenant and automatically configure ingress and DNS for it
  • So in summary, the MVP offering is essentially: give us SQL and a database connection, and we'll launch and host a service in the cloud with a set of endpoints that return report results as JSON
  • Principle: this should all be developed in the open, and the convenience mechanisms like SQL upload and/or GitHub integration should be available to self-hosted community instances. The business offering is in managed services and support.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment