Contents
- Introduction
- Information We Collect
- How We Use Information
- Data Storage & Security
- Device & Usage Analytics
- Permissions
- Third-Party Services
- Data Sharing & Disclosure
- Data Retention & Deletion
- Your Rights
- Children’s Privacy
- International Users
- Changes to This Policy
- Contact Us
1. Introduction
NeoSura (“we,” “us,” or “our”) operates PackFrame (“the App”), a local-first photography preparation tool for iOS. This Privacy Policy describes how we handle data when you use PackFrame.
PackFrame is designed with a privacy-first philosophy: your gear library, shoot sessions, checklists, and templates are stored exclusively on your device. We do not require an account, and the core functionality works entirely offline.
2. Information We Collect
2.1 User Content (Stored Locally Only)
When you use PackFrame, you may create and store the following types of content:
| Data Type | Examples | Stored On |
|---|---|---|
| Gear items | Camera bodies, lenses, lighting, accessories | Device only |
| Sessions | Shoot title, date, location, notes | Device only |
| Checklists | Pack tasks, prep checks, completion state | Device only |
| Templates | Custom template configurations | Device only |
| Preferences | Reminder lead times, notification settings | Device only |
This content is never transmitted to our servers or any third party. It remains within the app’s sandbox on your iOS device.
2.2 Anonymous Usage Analytics
PackFrame collects limited, anonymous analytics data to help us understand general usage patterns and improve the app. This data is transmitted to our server over HTTPS.
| Data Point | Purpose | Personally Identifiable? |
|---|---|---|
| App launch events | Measure active usage | No |
| Gear category added | Understand feature adoption | No |
| Shoot type selected | Understand feature adoption | No |
| Template type created | Understand feature adoption | No |
| App version | Track update adoption | No |
| iOS version | Ensure compatibility | No |
| Randomly generated device ID | Deduplicate events from the same device | No |
What we do NOT collect: We do not collect any personal information such as names, email addresses, phone numbers, precise location, photos, contacts, or any user-entered content (gear names, session titles, notes, etc.). The analytics data cannot be used to identify any individual user.
3. How We Use Information
We use the anonymous analytics data solely for:
- Product improvement: Understanding which features are used most frequently to guide development priorities.
- Stability monitoring: Tracking app version adoption to ensure compatibility across iOS versions.
- Aggregate reporting: Data is analyzed only in aggregate form. We do not create individual user profiles.
We do not use any data for advertising, marketing, or sale to third parties.
4. Data Storage & Security
User content is stored as a JSON file in the app’s Application Support directory (~/Library/Application Support/PackFrame/packframe-store.json), protected by iOS app sandboxing. This data is included in device backups via iTunes or iCloud backup.
Analytics data is transmitted over HTTPS and stored on our server. The randomly generated device ID is stored locally in UserDefaults.
We implement reasonable technical measures to protect data integrity. However, no method of electronic transmission or storage is 100% secure. We encourage you to use device-level security features (passcode, Face ID, etc.) to protect your data.
5. Device & Usage Analytics
Analytics events are sent to our server at api.tcodestudio.com. The randomly generated device identifier is created on first launch using a standard UUID and stored in UserDefaults. It is not derived from any hardware identifier (such as IDFA or identifierForVendor) and cannot be linked to you personally.
Analytics can be disabled in a future app update. In the current version, analytics are sent automatically for non-test builds.
6. Permissions
PackFrame requests the following system permissions:
| Permission | When Requested | Required? |
|---|---|---|
| Notifications | Only when you explicitly enable a session reminder | No — optional feature |
PackFrame does not request access to: Camera, Photo Library, Location Services, Contacts, Calendar, Microphone, Bluetooth, Health, HomeKit, or any other sensitive system resource.
7. Third-Party Services
PackFrame does not integrate any third-party services, including but not limited to:
- Advertising networks or ad SDKs
- Third-party analytics platforms (Google Analytics, Firebase, Mixpanel, etc.)
- Social media SDKs (Facebook, Twitter, etc.)
- Crash reporting services (Crashlytics, Sentry, etc.)
- Payment or subscription frameworks
All functionality is self-contained within the app.
8. Data Sharing & Disclosure
We do not sell, rent, trade, or otherwise share your data with third parties, except:
- As described in this policy (anonymous analytics to our server).
- If required by law, such as in response to a valid legal process from a court or government authority.
- To protect our rights, property, or safety, or that of our users or the public.
9. Data Retention & Deletion
Local data: All user content stored on your device remains until you delete it within the app, or until you delete the app entirely. Deleting PackFrame from your device permanently removes all locally stored data. We do not maintain any backup or copy.
Analytics data: Anonymous analytics data retained on our server is kept for product analysis purposes and may be periodically purged.
10. Your Rights
Because PackFrame stores user content exclusively on your device, you have full control at all times:
- Access: View all your data directly within the app.
- Export: Export any session checklist as plain text or CSV using the built-in export feature.
- Edit: Modify or delete any gear item, session, template, or checklist entry at any time.
- Deletion: Permanently erase all data by deleting the app from your device.
- Analytics: If you wish to opt out of anonymous analytics, please contact us at the address below.
11. Children’s Privacy
PackFrame is a professional tool intended for general audiences. It is not specifically directed at children under the age of 13. We do not knowingly collect personal information from children. If you believe a child has provided us with personal information, please contact us and we will take steps to delete such information.
12. International Users
PackFrame is available worldwide. All data is stored locally on your device. Analytics data is transmitted to servers that may be located outside your country of residence. By using PackFrame, you consent to this transfer. We take steps to ensure your data is treated securely in accordance with this policy.
13. Changes to This Policy
We may update this Privacy Policy from time to time. When we do, we will:
- Update the “Last updated” date at the top of this page.
- If material changes are made, notify you through the app or by other reasonable means.
Your continued use of PackFrame after any changes constitutes your acceptance of the updated policy.
14. Contact Us
If you have any questions, concerns, or requests regarding this Privacy Policy or your data, please contact us:
NeoSura
Email: support@neosur.com
We will respond to your inquiry within a reasonable timeframe and in accordance with applicable law.