Dogfooding Plures Tools - Quick Start
February 1, 2026 ยท View on GitHub
This guide helps you start dogfooding Plures tools immediately.
What is Dogfooding?
Dogfooding = Using our own tools in daily development and filing issues when we find friction.
Goal: Find and fix problems before users encounter them.
๐ Quick Start (5 minutes)
1. Review Available Tools
See what tools you can use: docs/PLURES_TOOLS_INVENTORY.md
High Priority for Adoption:
- โ Praxis CLI - Already using it
- โ ๏ธ State-Docs - Should use for documentation
- โ ๏ธ CodeCanvas - Should use for visualization
2. Follow the Daily Checklist
When developing, follow the quick checklist in docs/DOGFOODING_CHECKLIST.md:
Before Starting:
git pull origin main
npm run build
npm run validate:contracts
When Adding/Modifying Rules:
- Define contract with
defineContract() - Attach to rule via
meta.contract - Write tests for all examples
- Run
npm run scan:rulesandnpm run validate:contracts
When You Find Friction:
- File issue immediately using the Dogfooding Friction Report template
- One friction point per issue
- Tag with
dogfoodlabel
3. Try a Tool Today
Pick one tool to try this week:
Option A: Visualize a Schema with CodeCanvas
import { schemaToCanvas } from '@plures/praxis';
const canvas = schemaToCanvas(mySchema);
// Friction? File an issue!
Option B: Generate Docs with State-Docs
import { createStateDocsGenerator } from '@plures/praxis';
const docsGen = createStateDocsGenerator({
projectTitle: 'My Module',
target: './docs'
});
// Friction? File an issue!
Option C: Use Praxis CLI for Generation
npx praxis generate --schema src/schemas/my-schema.ts
# Friction? File an issue!
๐ Filing Friction Reports
When to File
File immediately when you encounter:
- Confusing error messages
- Missing documentation
- Manual steps that should be automated
- Unexpected behavior
- Performance issues
How to File
- Go to Issues โ New Issue
- Select Dogfooding Friction Report
- Fill out the template (focus on ONE friction point)
- Submit with
dogfoodlabel
Example Good Issues
โ
"Praxis CLI validate command doesn't show file path for missing contracts"
โ
"State-Docs requires manual config - should auto-detect schema files"
โ
"CodeCanvas export example missing for nested object schemas"
โ "Validation is confusing" (too vague)
โ "Documentation needs work" (too broad)
๐ Weekly Review
Every Friday (or end of sprint):
- Check your tool usage: What tools did you use this week?
- Identify gaps: What could you have used but didn't?
- Review filed issues: Are they tagged and actionable?
See full checklist: docs/DOGFOODING_CHECKLIST.md#weekly-review-friday-or-end-of-sprint
๐ Resources
| Resource | Purpose |
|---|---|
PLURES_TOOLS_INVENTORY.md | List of all tools and adoption status |
DOGFOODING_CHECKLIST.md | Daily/weekly/monthly checklists |
decision-ledger/DOGFOODING.md | Decision Ledger specific workflow |
.github/ISSUE_TEMPLATE/dogfooding.yml | Issue template for friction reports |
CONTRIBUTING.md | Full contributing guidelines |
๐ฏ This Week's Focus
High-Priority Tools to Adopt:
- CodeCanvas - Visualize at least one complex schema
- State-Docs - Generate docs for at least one module
- Praxis CLI - Use for generation instead of manual coding
Success Metric: File at least 1-2 dogfooding issues this week.
Need Help?
- Check the Plures Tools Inventory for tool documentation
- Review examples in the
examples/directory - Ask in discussions or file a question issue
Remember: Finding friction is success! Every friction report makes the tools better.
Last Updated: 2026-02-01
Maintainer: Praxis Core Team