# Technical documentation — datafy_ios

Evidence date: 2026-10-18. Source: `git@bitbucket.org:overdrive/datafy_ios.git`, `main` at `5e0218f5ec43df7bb59a8d55f8b845682471d438`.

Provenance labels: **Documented**, **Implemented**, **Inferred**, **Planned**, **Unknown**.

No technical document existed in the repository or in `silicon_ark/datafy_ios/` before this file.

## What this repository is

A Bitbucket Git repository in the `overdrive` workspace with slug `datafy_ios`. On 2026-10-18 `main` contained one commit and one file.

Provenance: **Implemented** (clone, `git log`, `git ls-tree`).

## Inspection method

1. The tree was cloned with `git clone --depth 1 git@bitbucket.org:overdrive/datafy_ios.git`, then the remote refs were listed. The remote has a single commit, so the shallow clone is the full history. `git rev-list --all --count` printed `1`. `git status -sb` reported `## main...origin/main`.
2. `git branch -a` listed only `main` and `remotes/origin/HEAD -> origin/main`.
3. `git log --all` showed one commit. `git tag -l` printed nothing. `git ls-remote --heads --tags origin` printed only `refs/heads/main` at `5e0218f5ec43df7bb59a8d55f8b845682471d438`.
4. `git ls-tree -r HEAD` listed `.gitignore` only (blob `b24d71e22373e5147f3c05c68a8742714a89b5d6`). `git hash-object .gitignore` printed the same hash.
5. The scan-host path `~/projects/sonar_scan/repos/datafy_ios` does not exist on this machine. The two filenames in OVER-80 were therefore not opened.
6. Bitbucket repository metadata through the Bitbucket API client returned HTTP 401, so project settings, default-branch configuration beyond `origin/HEAD`, and permissions were not read. Git's `origin/HEAD` still points at `origin/main`.
7. A search of Silicon Ark Markdown found no earlier `datafy_ios` document. Sibling Datafy sets were read only to record that they do not name this slug. See Related repositories.

## Application structure

```text
datafy_ios/
└── .gitignore
```

No `src/`, `app/`, `ios/`, `android/`, `lib/`, tests, or infra directory exists in the remote. Local `.git/` after the clone is client metadata and is not a project source file.

## The only file

`.gitignore` is 50 lines. The first lines are comments:

- "These are some examples of commonly ignored file patterns."
- "You should customize this list as applicable to your project."
- A link to `https://www.atlassian.com/git/tutorials/saving-changes/gitignore`.

Patterns that follow, grouped as the file comments group them:

| Comment in the file | Patterns |
|---|---|
| Node artifact files | `node_modules/`, `dist/` |
| Compiled Java class files | `*.class` |
| Compiled Python bytecode | `*.py[cod]` |
| Log files | `*.log` |
| Package files | `*.jar` |
| Maven | `target/`, `dist/` (second time) |
| JetBrains IDE | `.idea/` |
| Unit test reports | `TEST*.xml` |
| Generated by MacOS | `.DS_Store` |
| Generated by Windows | `Thumbs.db` |
| Applications | `*.app`, `*.exe`, `*.war` |
| Large media files | `*.mp4`, `*.tiff`, `*.avi`, `*.flv`, `*.mov`, `*.wmv` |

Provenance: **Implemented** (file contents at `5e0218f`).

**Inferred:** this is a host-generated starter ignore file. The commit message is `Initial commit`, the commit contains nothing else, and the header tells the reader to customize the examples. That file does not select a language. Node, Java, Python, and Maven patterns appear together because the template lists them together.

`*.app` is in the Applications group of that template. It is not evidence of an Apple application bundle in this repository. There is no `*.ipa`, `Pods/`, `DerivedData/`, `*.xcodeproj`, or `xcuserdata` pattern.

`sonar-project.properties` and `sonarqube_scan.bat` are not among the patterns. If those files were present and untracked, this ignore list would not hide them.

The blob `b24d71e22373e5147f3c05c68a8742714a89b5d6` is the same blob recorded for `smart_overdrive` at `1b27efb`. Provenance: **Implemented** (`git ls-tree` here, and the hash written in `silicon_ark/smart_overdrive/technical-documentation.md`). Same bytes do not mean the two repositories share a product.

## Frameworks and languages

None are implemented. There is no source file and no dependency manifest.

| Signal | What it is | Provenance |
|---|---|---|
| Node, Java, Python, Maven, media, and binary patterns in `.gitignore` | Example ignore groups in one starter file | **Documented** as comments and patterns. **Not** a selected stack |
| Slug `datafy_ios` | Repository name only | **Not** a selected iOS stack |
| Application language, framework, or runtime | Absent | **Unknown** |

## Runtime configuration

None. There is no `.env`, config file, Info.plist, or settings class. `.env` is not an ignore pattern in this file.

## Authentication

None in the tree. No login route, token, session, or secret store.

Git commit identity is `Jaco Brits <jaco@overdrive.co.za>`. That is author metadata on `5e0218f`, not an authentication mechanism.

## Data

No database, schema, migration, or seed. No product records are stored in git.

## APIs

None. No route table, client, or OpenAPI file.

## Background work

None. No worker, queue, cron, or scheduler.

## Storage

None beyond the Git object for `.gitignore`.

## Build, environments, and scripts

None in git. No Dockerfile, pipeline file, Fastfile, Makefile, Xcode scheme, or package script.

`sonarqube_scan.bat` was named by OVER-80 and is not in the commit, so any command it might contain is **Unknown**.

## Testing

No test directory, test runner config, or test source. `TEST*.xml` is an ignore pattern for unit-test reports. No such report is in the tree.

## Security notes (observed, not a pentest)

- No secret, credential, or `.env` file is committed. The tree is one ignore file.
- The ignore file does not exclude `.env`. If a later commit adds environment files, this starter list will not keep them out. That is an observation about the current patterns, not a finding that a secret exists.
- Bitbucket project permissions were not read (API HTTP 401).

## Deployment and operations

No deployment manifest, host name, port, or runbook is in the repository. How, or whether, anything from this slug is deployed is **Unknown / Requires Confirmation**.

## Git metadata

| Item | Value |
|---|---|
| Remote | `git@bitbucket.org:overdrive/datafy_ios.git` |
| Default branch | `main` (`origin/HEAD`) |
| Tip | `5e0218f5ec43df7bb59a8d55f8b845682471d438` |
| Tip date | 2025-10-11 05:42:01 +0000 |
| Tip author | Jaco Brits `<jaco@overdrive.co.za>` |
| Tip message | Initial commit |
| Commit count | 1 |
| Tags | none |
| Tracked paths | `.gitignore` |

## Related repositories

No file in this remote names another repository. Silicon Ark had no prior page for this slug.

Other Datafy knowledge sets exist and describe different remotes. They do not name `datafy_ios`:

| Silicon Ark directory | Remote named by that set | What it contains that a reader might confuse with this slug |
|---|---|---|
| `flutter_app` | `flutter_app.git`, `develop` at `7d30344` | Flutter client Datafy Ai. iOS display name Datafy, bundle id `coza.datafy.web`, TestFlight pipeline |
| `datafy_web` | `datafy_web.git`, `main` at `df8299e` | Flutter web client with an `ios/` project folder. Shipping of that iOS target is recorded there as **Unknown** |
| `datafy-supabase-functions` | `datafy-supabase-functions.git` | SQL kit. Names clients `datafy_ai` and `datafy_web` |
| `datafy_lambda` | `datafy_lambda.git` | Lambdas and local import scripts |
| `datafy-lambda-new` | `datafy-lambda-new.git` | Later Lambda repository |
| `datafy_rekognition` | `datafy_rekognition.git` | Rekognition SAM app and a labelled image set |
| `datafy_powersync` | `datafy_powersync.git` | PowerSync kit. Its plan says the Datafy mobile and web apps are not in that repo |

Whether any of those products was supposed to be published from `datafy_ios` is **Unknown / Requires Confirmation**.

`silicon_ark/smart_overdrive/technical-documentation.md` records the same `.gitignore` blob. That is a template comparison only. The two slugs are separate remotes.

## Human confirmation

- Whether a language or framework was intended.
- Whether this repository was meant to hold the iOS client that `flutter_app` already contains.
- Whether `sonar-project.properties` and `sonarqube_scan.bat` on the scan host belong to this repository, and what they contain.
- Bitbucket project settings and who may push, which the API client could not read.
- Whether this repository is deployed anywhere.
