Skip to content

Add typed feature flags for incomplete modules #36

Description

@Lakes41

Difficulty: Hard

Type: Feature

Summary

Add feature flags for modules that may be experimental or not yet production-ready, such as events, resources, analytics, and advanced admin tooling.

Current Behaviour

Navigation and pages may expose MVP, demo, or future-facing sections without a central feature flag model.

Expected Behaviour

Maintainers should be able to enable or disable major modules through documented environment variables.

Suggested Implementation

Create a typed feature flag module that reads public environment variables and exposes explicit booleans. Use the flags in navigation, page guards, and demo-only flows.

Files or Areas Likely Affected

  • lib/features.ts
  • components/nav.tsx
  • app/events/**/*.tsx
  • app/resources/**/*.tsx
  • app/admin/**/*.tsx
  • .env.example
  • README.md

Acceptance Criteria

  • Feature flags are parsed through a typed module
  • Disabled modules are hidden from navigation
  • Disabled routes render a clear unavailable state or redirect safely
  • Local mock mode can enable demo-only features
  • README documents recommended production defaults

Additional Notes

Do not introduce a remote feature flag service unless maintainers explicitly request it.

Metadata

Metadata

Assignees

Labels

GrantFox OSSIssue tracked in GrantFox OSSMaybe RewardedIssue may be eligible for a GrantFox rewardOfficial CampaignCampaign: Official Campaign

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions