harper-best-practices
Installation
SKILL.md
Harper Best Practices
Guidelines for building scalable, secure, and performant applications on Harper. These practices cover everything from initial schema design to advanced deployment strategies.
When to Use
Reference these guidelines when:
- Defining or modifying database schemas
- Implementing or extending REST/WebSocket APIs
- Handling authentication and session management
- Working with custom resources and extensions
- Optimizing data storage and retrieval (Blobs, Vector Indexing)
- Deploying applications to Harper Fabric
How It Works
- Review the requirements for the task (schema design, API needs, or infrastructure setup).
- Consult the relevant category under "Rule Categories by Priority" to understand the impact of your decisions.
- Apply specific rules from the "Quick Reference" section below by reading their detailed rule files.
- If you're building a new table, prioritize the
schema-rules. - If you're extending functionality, consult the
logic-andapi-rules. - Validate your implementation against the
ops-rules before deployment.
Examples
See the concrete examples embedded in each rule subsection below (GraphQL schemas, REST query patterns, and deployment workflow snippets).
Rule Categories by Priority
| Priority | Category | Impact | Prefix |
|---|---|---|---|
| 1 | Schema & Data Design | HIGH | schema- |
| 2 | API & Communication | HIGH | api- |
| 3 | Logic & Extension | MEDIUM | logic- |
| 4 | Infrastructure & Ops | MEDIUM | ops- |
Quick Reference
1. Schema & Data Design (HIGH)
adding-tables-with-schemas- Define tables using GraphQL schemas and directivesschema-design-tooling- Core directives and GraphQL IDE/agent configurationdefining-relationships- Link tables using the@relationshipdirectivevector-indexing- Efficient similarity search with vector indexesusing-blob-datatype- Store and retrieve large data (Blobs)handling-binary-data- Manage binary data like images or MP3s
2. API & Communication (HIGH)
automatic-apis- Leverage automatically generated CRUD endpointsquerying-rest-apis- Filters, sorting, and pagination in REST requestsreal-time-apps- WebSockets and Pub/Sub for Real-Time Appschecking-authentication- Secure apps with session-based identity verification
3. Logic & Extension (MEDIUM)
custom-resources- Define custom REST endpoints using JS/TSextending-tables- Add custom logic to generated table resourcesprogrammatic-table-requests- Advanced filtering and sorting in codetypescript-type-stripping- Use TypeScript without build toolscaching- Implement and define caching for performance
4. Infrastructure & Ops (MEDIUM)
deploying-to-harper-fabric- Scale globally with Harper Fabriccreating-a-fabric-account-and-cluster- Setting up your Harper Fabric cloud infrastructurecreating-harper-apps- Quickstart withnpm create harper@latestserving-web-content- Ways to serve web content from Harper
How to Use
Read individual rule files for detailed explanations and code examples:
rules/adding-tables-with-schemas.md
rules/schema-design-tooling.md
rules/automatic-apis.md
rules/creating-harper-apps.md
Full Compiled Document
For the complete guide with all rules expanded: AGENTS.md