This section provides a working draft of all the steps that are required to create and launch a company that leverages the Baseplate framework. We’re including all the steps – not just those related to development – so that you have full insight into all the different things that go into launching a business focused SaaS company. As we go if we have ideas on ways we can accelerate, automate or increase the efficacy of steps in this process, by all means, lets talk about it!
The goal of the process is to ensure that the final business built using the Baseplate framework is set up and deployed in a standardized and efficient manner. This is intentionally a larger aperture than simply the stock applications code as the success of the business is ultimately the goal.
Basic Corporate Stuff
- Domain Name (GoDaddy)
- E-mail, Documents, Files (Google Workspaces)
- Legal Incorporation / LLC Formation – Clerky
- EIN Registration – Clerky
- Finance
- Quickbooks Online
- Checking Account – Quickbooks (Requires EIN)
- Credit Card – Wells Fargo (Requires EIN)
- Upwork
Stripe
We use Stripe for payments because, well, everyone uses Stripe.
- Setup the customer on stripe using the standard onboarding process
- Setup the Branding for the customer portal
- Enable tax ID collection
- Setup the subscription products for the company including
- Monthly and annual pricing
- Features for each product
- Create a pricing table page
- Create a custom customer billing domain
- Note that the application will have to implement the application specific pricing table and setup the customer billing portal custom domain
- Create the relevant DNS records in the hosted domain DNS customer to map to the stripe records
Setup Development and Production Environments\
- Supabase – Create project and app in Supabase
- Federated Authentication Apps
- LinkedIn
- Create LinkedIn page for the company
- Create LinkedIn app to support LinkedIn Auth
- Microsoft Entra
- Create a Microsoft Azure customer
- You have to register this separately as a new account with Azure
- If you just sign up with your e-mail it won’t wor
- Go to Entra customer
- Setup the domain name
- Setup any admin users
- Entra > Manager > Users > Add
- Once added go to Roles and add “Global Administrator”
- Create the app authorization end point for the app
- Create a Microsoft Azure customer
- Google – You’ll get Google for free with Firebase and it’s easy to create from the Firebase UI – so I’ll ignore that one
- You’ll need to create an app in LinkedIn and invite your developers to the app.
- LinkedIn
- LLM customers / Data Sources
- Diffbot – Most apps will need a Diffbot customer even if they use Creso as the backend for Company and People Data
- Gemini – Setup via Google Workspace and accessed through Genkit and Vertex frameworks
- Perplexity – For deep research and writing tasks
- Source Code Control – GitHub – Specific apps setup as branches from the main stock application code base.
- Cursor – Setup of the AI enabled IDE for development
- CRM – Integrations between the various apps and the shared 1 to 100 Salesforce instance
- Figma – All designs are setup and controlled via a central 1 to 100 design customer
Create Code Branch
- Create a child branch of the Baseplate app for your specific app. This branch will serve as the app’s dedicated codebase, separate from the main Baseplate main codebase.
Remote Configuration
Use the application configuration tool to create a new list of key / value pairs that can readily be loaded into the specific app.
Application Build and Deploy Process
- Create development, staging, and production environments for the app.
- Setup and validate standardized CI/CD pipeline (e.g., GitHub Actions) works for this app
- Ensure that app is pulling and applying the appropriate settings from Firebase Remote Configuration.
Developers will work within this branch to develop the app’s features.
Handoff to Developers
- At this point environment should be fully configured and usable to developers
- Developers will be provided the Developer Guide: Building Applications on the Stock SaaS Platform and relevant customers to access the development, staging and production environments
- Validate that developers have access to the app’s codebase and all necessary customers and tools.
- From that point forward developers should be able to build and deploy code for the application
Ongoing Support
- The central DevOps team will provide ongoing support to the app’s development team.
- This includes monitoring the app’s production environment, troubleshooting issues, and assisting with deployments.
- A central team is responsible for updating and extending the Stock App framework over time. They are available for consultation and feature requests as specific applications are implemented on the framework.
- A central design team will design all the screens to be implemented in each app and provide the relevant development teams access to Figma prototypes for all screen the need to be (i) implemented in the app or (ii) updated or extended in the Stock app to support application specific functionality