@monzingo89/unicornmaxxing
v0.1.1
Published
Interactive architecture wizard that builds a stack plan, Mermaid graph, and .env bootstrap files.
Downloads
182
Maintainers
Readme
unicornmaxxing
Interactive npm CLI that asks what you're building, maps your stack choices, generates a Mermaid diagram, and bootstraps .env + contact_info.json for first-run setup.
Install
- Run with npx:
npx @monzingo89/unicornmaxxing - Or install globally:
npm i -g @monzingo89/unicornmaxxing
Quick start with your Microsoft preset:
npx @monzingo89/unicornmaxxing --presets microsoft
Run locally
npm installnpm start
Preset profiles
Use a preset to prefill a common stack and optionally skip those prompt questions:
npm start -- --presets microsoftnpm start -- --preset googlenpm start -- --preset aws
Other CLI options:
npm start -- --list-presetsnpm start -- --help
When a preset is selected, the wizard asks whether to use preset values directly (ask only missing values) or keep prompts interactive with preset defaults preselected.
What it does
- Asks for:
- build target (
script,app,webpage) - app framework (
Ionic,Cordova) when target isapp - Ionic API client (
Angular,React,Vue,Blazor) when app uses Ionic - identity provider (
Firebase,Microsoft Entra External ID) - auth methods (multi-select)
- API tech, database, repo host, domain host, API docs, email capability
- build target (
- Produces Mermaid output and writes
today-build-plan.mmd. - Once approved, asks for environment secrets one-by-one.
- Writes
.env,.env.example, and optionalcontact_info.jsonfor Azure domain creation.
Included presets
microsoft: Ionic + Blazor + Microsoft Entra External ID + C# + Microsoft SQL + GitHubgoogle: Ionic + Angular + Firebase + Node + Firestore + GitHubaws: Cordova + Firebase + Go + MySQL + GitLab
Azure domain command template
If Azure domain automation is enabled, the wizard prepares values for:
az appservice domain create --resource-group <need-resource-group> --hostname example.com --contact-info @contact_info.json --accept-terms
New: One-page dynamic website (Azure-ready)
This repository now includes a standalone dynamic website under web/.
Local run
- Start the site:
npm --prefix web start - Open:
http://localhost:8080 - Health/data endpoint:
http://localhost:8080/api/site
Azure deployment assets
azure.yamlconfigures AZD to deployweb/to Azure App Service.infra/main.bicepprovisions:- Linux App Service Plan (
B1) - Web App (Node 20)
- Log Analytics workspace
- Application Insights
- Linux App Service Plan (
infra/main.parameters.jsonmaps AZD environment values.
Domain purchase + binding target
Target domain: robertjmonzingo.com
Pre-check result (from Azure CLI):
hostname_available: truehostname_purchase_price: $11.99 USD
You can purchase and bind with Azure App Service Domain flow:
- Purchase domain with
az appservice domain create ... --accept-terms - Add custom hostname to your web app
- Create managed certificate
- Bind certificate via SNI
Current live deployment
- App URL:
https://app-prod-ye26qh5p.azurewebsites.net - API URL:
https://app-prod-ye26qh5p.azurewebsites.net/api/site
Domain purchase note:
- Azure App Service Domain purchase attempt failed on this subscription with eligibility error (
59743). - Use external registrar purchase, then follow
domain/domain-setup.mdfor DNS + Azure binding.
Publish
- Update package name/version in
package.json. - Login to npm:
npm login. - Publish:
npm publish --access public.
