404b1e990485edbfe32050a305e85928e07bc354
Aspire assigned random ports and an auto-generated Postgres password on each run, so the fixed targets baked into local.runsettings and docker-compose (localhost:5000/5173/5432, miccheck/password) didn't work when developing via Aspire instead of docker compose. Pins Postgres user/password/port and the api/admin HTTP endpoints so either workflow hits the same local addresses.
MicCheck
Open source feature flag management platform. Manage projects, environments, feature flags, segments, and identities across your apps.
Built with .NET (API) and Vue.js + Vuetify (admin UI).
Structure
src/
api/MicCheck.Api/ .NET API — REST endpoints, organized by feature (Features, Projects, Environments,
Segments, Identities, Organizations, Webhooks, Audit, Users)
admin/ Vue.js + Vuetify admin SPA
MicCheck.AppHost/ .NET Aspire orchestration host for local dev
MicCheck.ServiceDefaults/ Shared .NET Aspire service defaults (telemetry, health checks)
tests/
api/MicCheck.Api.Tests.Unit/ Unit tests
api/MicCheck.Api.Tests.Integration/ Integration tests
docs/
admin/ Admin implementation plans/output docs
api/ API implementation plans/output docs
Code in the API is organized by feature area (e.g. Features, Segments, Identities) rather than by technical layer.
Running locally
docker-compose.yml provides supporting services. MicCheck.AppHost (.NET Aspire) orchestrates the API and admin app for local development.
./dev-build.sh
Testing
dotnet test
License
MIT — see LICENSE.
Languages
C#
36.2%
Vue
30.3%
TypeScript
15.6%
SCSS
15.2%
JavaScript
1.4%
Other
1.3%