This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
This is a documentation repository, not a code project. It provides a comprehensive guide for iOS developers choosing backend solutions for their apps. The repository contains:
- README.md: The primary content file containing a decision tree, backend comparisons, and technical guidance
- LICENSE: Creative Commons Attribution-ShareAlike 4.0 International License
The README.md is organized into these key sections:
- Decision Tree: A Mermaid diagram that visualizes the backend selection process based on project requirements
- Backend Options Overview: Detailed comparisons of different backend solutions (CloudKit, Firebase, AWS Lambda, PaaS, VMs)
- Swift on the Server Options: Frameworks and deployment options for server-side Swift
- Technical Considerations: Data complexity, database options, and load patterns
- Deployment & Cost Considerations: Infrastructure and cost planning guidance
- About BrightDigit: Company information and services
- Further Reading: Links to related articles, podcasts, and resources
The Mermaid diagram at the top of README.md is a critical visual element. When updating:
- Ensure the diagram logic matches the content in the Backend Options sections
- Test the Mermaid syntax renders correctly (use GitHub's preview or a Mermaid live editor)
- Keep decision points clear and mutually exclusive
- Update the Note subgraph if Swift deployment options change
When editing the README.md:
- Maintain consistency between the decision tree and the detailed backend descriptions
- Keep links up to date: Verify external links to services, documentation, and BrightDigit content still work
- Update technical accuracy: Backend services and pricing models change frequently
- Preserve the structure: The table of contents and section hierarchy help users navigate
- Respect the license: This is CC BY-SA 4.0, requiring attribution and share-alike terms
- main: Production version of the guide
- Feature branches follow the pattern:
<issue-number>-<topic>for topic-specific updates
When adding or updating backend information:
- Check if the decision tree logic needs updating
- Update the relevant Backend Options Overview section
- Verify links and technical details are current
- Consider if Deployment or Cost Considerations sections need updates
- Update the Further Reading section if referencing new BrightDigit articles or podcasts
This repository has no build, test, or lint commands. Changes are made directly to markdown files and committed via git.