An uptime monitoring service that is easy and cheap to run at scale. Create endpoint checks for uptime, latency, and status code. Supports OpsGenie, for alerts when there are two or more consecutive failures.
# Install dependencies
nub install
# Run the CLI
nub run cli --helpThis repository requires Node.js 24.15.0 and Nub 0.4.11.
# Deploy infrastructure
nub run cli -- --fqdn uptime.example.com
# Deploy to production
nub run cli -- --fqdn uptime.example.com --stage prod
# Destroy infrastructure
nub run cli -- --fqdn uptime.example.com --phase destroyFor a holistic dev experience, it is best to run dev from the root of the repo.
First, copy the ./packages/infra/.dev.vars.example file to ./packages/infra/.dev.vars.
Then, run the following command to confirm you're using the correct CF account: and run to confirm you're using the correct CF account:
nub exec wrangler whoamiRun the migrations and (optionally) seed the database:
# this is a convenience script that runs db:touch, db:generate, db:migrate, and db:seed
nub run db:setupThis repo uses multiple workers, each split into their own workspace. To run everything together:
# Start both the API (monitor workers) and the Next.js app
nub run devIf you need to run components separately:
# Run just the API (includes both executor and trigger workers)
nub run dev:api
# Run just the Next.js app
nub run dev:app
# Run the API executor worker
nub run --filter '@solstatus/api' dev:api-exec
# Run the API trigger worker
nub run --filter '@solstatus/api' dev:api-triggerTo deploy the entire application:
nub run deploy:prodTo deploy components separately:
# Deploy just the Next.js app
nub run deploy:prod:app
# Deploy just the API workers
nub run deploy:prod:apiUpdate dependencies
Dependabot automatically creates pull requests for dependency updates weekly. For manual updates:
nub exec ncu -t minor -u
nub installSee the infra README for more details.
This repository uses Dependabot to keep dependencies up to date:
- npm dependencies are checked weekly (grouped as minor and patch updates)
- GitHub Actions are checked monthly
- PR limits are set to avoid overwhelming with dependency updates
Tegami versions and publishes the npm packages after Validate succeeds on master:
solstatus- Main CLI package@solstatus/common- Shared utilities and schemas@solstatus/api- API workers@solstatus/app- Web application@solstatus/infra- Infrastructure tools
See docs/releasing.md. To enable npm publishing:
- Create an npm access token at https://www.npmjs.com/
- Add it as a GitHub secret named
NPM_TOKEN - Enable Allow GitHub Actions to create and approve pull requests
- Create the
release:nonelabel for toolchain-only pull requests
