Simple application infrastructure that just works.
Configuration management, feature flags, dynamic log levels, auditing, and scheduled jobs — production-ready services with SDKs in six languages, so you can ship quicker.
Smpl Audit
Append-only audit logs. Who did what and when.
An append-only record of every event and every change. Each entry captures the actor, the timestamp, and any JSON detail you attach — enough to reconstruct prior state, attribute responsibility, or replay history.
- 01 Read and write events via API POST events from any code path. Pull change history into your app to show users what happened and when.
- 02 Full JSON snapshots in every entry Actor, timestamp, and any JSON detail you attach — including full snapshots when you need to reconstruct prior state.
- 03 Stream to any HTTP destination Pre-configured for Datadog, Splunk HEC, Sumo Logic, and others. Generic HTTP for everything else.
Smpl Config
Configuration management with real inheritance.
Define a common configuration once. Service-specific configs inherit from it and override only what's different. Per-environment overrides on any value, with inheritance visible at every level.
- 01 Inheritance you can see Every cell tells you whether the value is local or inherited.
- 02 Per-environment overrides Override
database.hostin production. Staging keeps inheriting. - 03 Live updates, no redeploys SDKs receive changes via WebSocket and re-resolve in real time.
Smpl Flags
Turn features on when you're ready.
Feature flags with per-environment rules. Roll out gradually, target by tier or region, kill a release the moment a bug shows up. Unlimited servers, API requests, and read-only users on every plan.
- 01 Four flag types Boolean, string, numeric, JSON. Closed value sets or freeform.
- 02 Local evaluation SDKs evaluate flags locally with no network call per check.
- 03 Flat per-tier pricing Unlimited servers and API requests on every plan. Tiers differ by flag count, not traffic.
Smpl Jobs
Scheduled HTTP jobs that run like clockwork.
Schedule an HTTP request once at a future time, or on a recurring cron schedule. Smpl Jobs runs it, retries on failure, enforces a per-run timeout, and captures every request, response, and outcome — so you always know what happened.
- 01 Cron or one-off, your choice Schedule a request on a recurring cron expression or once at a future moment. Change or cancel it anytime from the console or the API.
- 02 Retries and timeouts built in Failed runs retry on a policy you configure, and a per-run timeout keeps a slow endpoint from hanging your schedule.
- 03 Every run captured Each run records its request, response, timing, and outcome — so you can debug a failure or re-run it on demand.
Smpl Logging
Change log levels in real-time.
You're one line of code away from real-time control over every logger. Every service. Every environment. Temporarily turn on debug in production to diagnose an issue. Instantly silence noisy loggers.
- 01 Auto-discovery Drop in the SDK and every logger gets reported up automatically.
- 02 One-line install
SmplClient().logging.install()— that's it. - 03 Live updates Change a level in the console, applied across every running process.