Core is the shared reference for khonager applications. It records the product, design, UX, engineering, repository, and release decisions that should not need to be rediscovered for every new project.
Core is a baseline and decision record, not a framework or a package dependency. Applications may diverge when their users, genre, or platforms require it, but the reason should be written down in that application's repository.
The baseline was inferred from the existing khonager project portfolio rather
than invented as a generic best-practices list. docs/portfolio-audit.md
records the evidence and confidence of those inferences.
docs/product.md— product scope and decision principlesdocs/preferences.md— the short version of how khonager products should feel and be builtdocs/design-system.md— reusable visual language, tokens, layout, components, and motiondocs/design-ux.md— interaction, accessibility, and complete-flow principlesdocs/engineering.md— code and architecture baselinedocs/stack-and-tooling.md— preferred stacks and project shapesdocs/repositories-and-releases.md— branches, CI, signing, tags, and public releasesADOPTING.md— checklist for a new or existing applicationtemplates/PROJECT.md— copyable local product, design, architecture, and delivery decision recordtemplates/flutter— copyable Flutter project files
The reusable Flutter quality workflow can be called from another public repository:
jobs:
quality:
uses: khonager/core/.github/workflows/flutter-quality.yml@main
with:
flutter-version: "3.41.9"Pin callers to a Core version tag once the first stable Core baseline is tagged.
Use this order when instructions disagree:
- Safety, legal, platform, and user requirements.
- An intentional decision documented in the application repository.
- The shared defaults in Core.
- Existing local code where no decision has been recorded.
Core uses must for a requirement, should for the normal default, and may for an option. Do not copy an old project quirk merely because it exists; prefer the clearest current pattern described here.
This is an initial personal baseline. Its license has intentionally not been selected yet. Until a license is added, the repository is publicly readable but does not grant general reuse rights. Choose a license before inviting external reuse or contributions.