# Technical documentation — formulys_api_nodejs

Evidence date: 2026-10-14.

Source: `git@bitbucket.org:overdrive/formulys_api_nodejs.git`, `master` at `9d191c4d2e344910abda7a10989a304d0988339c` (2023-11-17 06:20:17 +0000, Jaco Brits `<jaco@overdrive.co.za>`, "Initial commit"). Default branch `master`. No other remote branches. The commit has no parent. No tags.

The scan-host path `~/projects/sonar_scan/repos/formulys_api_nodejs` was not on this machine. Facts below come from a clone of `9d191c4`. No secrets are stored in git.

This inspection did not install packages or start a process. There is no manifest and no entry point.

## Stack

| Layer | Choice | Evidence |
|---|---|---|
| Language | None committed | No source file |
| Runtime | None declared | No `package.json`, `Dockerfile`, `runtime.txt`, or engine pin |
| Framework | None | No application file |
| Database | None | No client, migration, or connection string |
| API | None | No route, OpenAPI file, or server |
| Ignore file | 50-line `.gitignore` whose header links to an Atlassian tutorial | `.gitignore` |

**Inferred** from the repository slug: Node.js. **Not confirmed** by a dependency file. The ignore list mentions `node_modules/` and `dist/` and, in the same template, Java, Python, and Maven.

## Repository layout

```text
.gitignore    50 lines, the only tracked path
```

`git ls-tree -r HEAD --name-only` returns that single path.

Not tracked, and not present in the clone:

- `README`, `README.md`
- `package.json`, lockfiles
- `src/`, `test/`, `app/`
- `bitbucket-pipelines.yml`
- `Dockerfile`, compose file, infrastructure templates
- `.env` or other environment files
- `sonar-project.properties`
- `sonarqube_scan.bat`

## Git history

| SHA | Date | Author | Subject | Files |
|---|---|---|---|---|
| `9d191c4` | 2023-11-17 06:20:17 +0000 | Jaco Brits `<jaco@overdrive.co.za>` | Initial commit | `.gitignore` (+50) |

Author and committer are the same person and the same timestamp. No merge commits.

## `.gitignore` patterns

Header comments (documented in the file):

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

| Section 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 listing of `dist/`) |
| 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` |

**Inferred:** this is a hosting provider's default ignore file, not a list written for Formulys. The inference uses the commit message "Initial commit", the lack of any other file, and the "examples" wording. It was not confirmed against a Bitbucket audit event.

## Auth

None. No token, session, password hash, or identity configuration is in git.

## APIs and integrations

None in the committed tree.

SonarQube is not configured in git. The onboarding issue recorded `sonar-project.properties` and `sonarqube_scan.bat` as the top-level structure seen on the scan host on 2026-09-28. Those names are absent here, and `.gitignore` would not hide them. Discrepancy status: **Unknown / Requires Confirmation**.

Bitbucket Pipelines: no `bitbucket-pipelines.yml`. Whether a pipeline is configured only in the Bitbucket UI is **Unknown**. The clone shows `origin/HEAD` -> `origin/master` and no other branch.

## Data stores, workers, queues, storage

None.

## Environment configuration

None. No sample env file and no documented variable.

## Security characteristics (from the tree, not a pentest)

- No credential material is committed, because no application file is committed.
- `*.env` is not an ignore pattern. A future `.env` would show up as untracked rather than being ignored. **Implemented** as a gap in the ignore file. Whether that matters depends on someone adding an env file later.
- `*.log` and `*.exe` are ignored, so a log or a scanner executable dropped into the working copy would not be committed by a blanket add. **Implemented** as patterns. No such files are in history.

## Development and testing

No test runner, lint config, formatter, or CI definition.

No documented local setup. Clone of `master` is the whole procedure visible from git.

## Related Silicon Ark documents

These are separate repositories. None is referenced from `formulys_api_nodejs`:

| Silicon Ark directory | What that other document set describes | Link from this repo |
|---|---|---|
| `formulys-frontend` | Vite React shell, placeholder pages | None |
| `formulys_simpleflow` | SimFlow Process Hub UI against Form.io | None |
| `formulys_simpleflow_backend` | Node HTTP and Socket.io scaffold with Mongoose | None |
| `formulys-mobile-app` | Pest Elite Expo app | None |

A shared substring in the Bitbucket slug is not a dependency. Whether they are one product family is **Unknown / Requires Confirmation**.

## Monitoring and deployment

No deployment manifest, health check, or monitoring config is in git. Production status is **Unknown**.
