|
| 1 | +# Privy Unity SDK |
| 2 | + |
| 3 | +Unity SDK for Privy authentication and embedded wallet functionality. Distributed as a UPM package (`com.privy.unity-sdk`), targeting Unity 2022.3+. |
| 4 | + |
| 5 | +## Repository Structure |
| 6 | + |
| 7 | +``` |
| 8 | +SDK/ # UPM package — runtime code, editor tools, native plugins |
| 9 | +SampleApp/ # Unity project demonstrating SDK usage |
| 10 | +docs/ # Developer documentation (releasing.md, native-code.md) |
| 11 | +agent_docs/ # AI assistant reference docs (code conventions, PR review rules) |
| 12 | +Format.csproj # Used for dotnet format (covers SDK/, excludes ExternalDependencies/) |
| 13 | +version.txt # Canonical version (managed by release-please — do not edit manually) |
| 14 | +``` |
| 15 | + |
| 16 | +For detailed SDK architecture, conventions, and patterns, see **[SDK/CLAUDE.md](SDK/CLAUDE.md)**. |
| 17 | + |
| 18 | +## Essential Commands |
| 19 | + |
| 20 | +```bash |
| 21 | +# Format all SDK source (run before committing) |
| 22 | +dotnet format Format.csproj |
| 23 | +``` |
| 24 | + |
| 25 | +## Commit Conventions |
| 26 | + |
| 27 | +Use [Conventional Commits](https://www.conventionalcommits.org/) — `feat:`, `fix:`, `chore:`, `docs:`, etc. Release-please uses these to generate the changelog and determine the next version bump automatically. |
| 28 | + |
| 29 | +## Release Process |
| 30 | + |
| 31 | +1. Merge conventional-commit PRs into `main` |
| 32 | +2. Release-please opens a release PR bumping `version.txt`, `SDK/package.json`, and `SDK/Runtime/Utils/SdkVersion.cs` |
| 33 | +3. Review and merge the release PR — release-please then creates the GitHub Release and git tag |
| 34 | + |
| 35 | +See `docs/releasing.md` for the full release guide. |
| 36 | + |
| 37 | +## GitHub Actions |
| 38 | + |
| 39 | +| Workflow | Trigger | What it does | |
| 40 | +| -------------------- | ------------ | ----------------------------------- | |
| 41 | +| `claude.yml` | PR | Automated code review | |
| 42 | +| `format-check.yml` | PR | Verifies `dotnet format` was run | |
| 43 | +| `pr-title.yml` | PR | Enforces conventional commit format | |
| 44 | +| `release-please.yml` | Push to main | Manages release PRs and tags | |
0 commit comments