Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
2218810
Delete existing app
DavidASix Mar 12, 2026
ed4929c
Update root gitIgnore
DavidASix Mar 12, 2026
757fa1a
Add documentation and mockups
DavidASix Mar 12, 2026
d9317c2
Initialize mono repo setup
DavidASix Mar 12, 2026
6d0e6ad
Update package names and add some build scripts
DavidASix Mar 12, 2026
90f8f7b
Add server scoped git ignore
DavidASix Mar 12, 2026
d47d476
rename command
DavidASix Mar 13, 2026
f08c4ab
Audit packages
DavidASix Apr 4, 2026
43025d3
Add agents file and link other agent helpers to it.
DavidASix Apr 4, 2026
43cfca1
Add type checks
DavidASix Apr 4, 2026
711309d
rename lint command
DavidASix Apr 4, 2026
1452a4f
Add prettier
DavidASix Apr 4, 2026
fd0cc8c
Prettier
DavidASix Apr 4, 2026
9f55b98
pin brace expansion for lint
DavidASix Apr 4, 2026
e62196b
Add minimal exports to satisfy TS
DavidASix Apr 4, 2026
51803f3
Add check command
DavidASix Apr 4, 2026
44bafcc
Disallow eslint warnings, and show inline problems
DavidASix Apr 4, 2026
1b998a9
Add lint checks for other projects
DavidASix Apr 4, 2026
794ce48
Init astro & Fastify projects
DavidASix May 18, 2026
3c5db58
Connect Astro & Fastify to tRPC
DavidASix May 18, 2026
d9bf52a
Move router intro fastify
DavidASix May 18, 2026
63113f6
Move server to fastify and web to astro
DavidASix May 18, 2026
90ab05c
Add web type checks
DavidASix May 18, 2026
00be2c7
Declare the router seperately
DavidASix May 18, 2026
13c687e
Add stack specific runners
DavidASix May 18, 2026
5fda3fa
Update MD files
DavidASix May 18, 2026
f4cbb1a
Further prettier setup
DavidASix May 18, 2026
2fe1da0
Astro linting
DavidASix May 18, 2026
891c928
Hoist libraries used in dev tooling and force vscode to use the corre…
DavidASix May 19, 2026
119c474
Add pre-commit hook to apply prettier
DavidASix May 19, 2026
02754cd
Add GH workflow
DavidASix May 19, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 0 additions & 6 deletions .buckconfig

This file was deleted.

2 changes: 0 additions & 2 deletions .bundle/config

This file was deleted.

8 changes: 0 additions & 8 deletions .eslintrc.js

This file was deleted.

66 changes: 0 additions & 66 deletions .flowconfig

This file was deleted.

1 change: 1 addition & 0 deletions .github/copilot-instructions.md
25 changes: 25 additions & 0 deletions .github/workflows/pr-check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: PR Check

on:
pull_request:
branches:
- main

jobs:
check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- uses: pnpm/action-setup@v4
with:
version: 10.26.1

- uses: actions/setup-node@v4
with:
node-version: 22
cache: pnpm

- run: pnpm install --frozen-lockfile

- run: pnpm check
81 changes: 23 additions & 58 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,63 +1,28 @@
# OSX
#
.DS_Store

# Xcode
#
# Dependencies
node_modules/

# Turborepo
.turbo/

# Build outputs
.next/
dist/
build/
*.pbxuser
!default.pbxuser
*.mode1v3
!default.mode1v3
*.mode2v3
!default.mode2v3
*.perspectivev3
!default.perspectivev3
xcuserdata
*.xccheckout
*.moved-aside
DerivedData
*.hmap
*.ipa
*.xcuserstate
ios/.xcode.env.local

# Android/IntelliJ
#
build/
.idea
.gradle
local.properties
*.iml
*.hprof

# node.js
#
node_modules/
npm-debug.log
yarn-error.log

# BUCK
buck-out/
\.buckd/
*.keystore
!debug.keystore
# Environment variables
.env
.env.local
.env.*.local

# fastlane
#
# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the
# screenshots whenever they are needed.
# For more information about the recommended setup visit:
# https://docs.fastlane.tools/best-practices/source-control/

**/fastlane/report.xml
**/fastlane/Preview.html
**/fastlane/screenshots
**/fastlane/test_output

# Bundle artifact
# Expo
.expo/
*.jsbundle

# Ruby / CocoaPods
/ios/Pods/
/vendor/bundle/
# OS
.DS_Store

# Editors
.idea/
*.iml
xcuserdata/
*.xcuserstate
1 change: 1 addition & 0 deletions .husky/pre-commit
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
pnpm lint-staged
4 changes: 4 additions & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
public-hoist-pattern[]=@astrojs/check
public-hoist-pattern[]=eslint-plugin-astro
public-hoist-pattern[]=astro-eslint-parser
public-hoist-pattern[]=@typescript-eslint/*
18 changes: 18 additions & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
node_modules
.next
dist
build
.expo
*.md
pnpm-*.yaml
**/package-lock.json
**/next-env.d.ts
tsconfig.json
# Ignore all settings files from hidden folders
.*/settings*.json

# Astro generated
**/.astro/

# Drizzle generated
**/drizzle/
9 changes: 0 additions & 9 deletions .prettierrc.js

This file was deleted.

1 change: 0 additions & 1 deletion .ruby-version

This file was deleted.

11 changes: 11 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"cSpell.words": [
"midwifes"
],
"eslint.useFlatConfig": true,
"eslint.workingDirectories": [
{ "directory": "apps/web", "changeProcessCWD": true },
{ "directory": "apps/mobile", "changeProcessCWD": true },
{ "directory": "apps/server", "changeProcessCWD": true }
]
}
1 change: 0 additions & 1 deletion .watchmanconfig

This file was deleted.

63 changes: 63 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
# AGENTS.md

This file is a directory reference for AI agents working in this repository. When you make changes that affect the areas described below, read the files first for reference and keep them updated with relevant documentation in `documentation/`.

---

## Documentation Index

### [`documentation/TECHSPEC.md`](documentation/TECHSPEC.md)
The technical specification for the full monorepo. Covers:
- Monorepo structure (`apps/mobile`, `apps/web`, `apps/server`, `packages/ui`)
- Mobile app stack: Expo, EAS, NativeWind v4, Expo Router, `@gorhom/bottom-sheet`, `expo-sqlite`, Drizzle ORM, `expo-local-authentication`
- Server stack: Fastify + tRPC (router defined in `apps/server/routers/`, `AppRouter` exported from `@midwifes-notebook/server/router`)
- Web stack: Astro + tRPC client (client configured in `src/lib/trpc.ts`, `AppRouter` imported from `@midwifes-notebook/server/router`)
- Shared conventions: TypeScript, pnpm, Turborepo, Jest

**Update when:** adding or changing a dependency, altering the monorepo structure, changing the build/deploy process, or revising testing strategy.

---

### [`documentation/MOBILE_APP.md`](documentation/MOBILE_APP.md)
The product specification for the mobile app. Covers:
- First launch / onboarding flow
- App lock behavior
- Bottom tab bar navigation and screen inventory
- Screen-by-screen specs: Clients list, Client Detail (tabs: Client / Children / Notes), Client Edit/Add, Tools (LMP/GA/EDD calculator), Calendar, Statistics, Settings

**Update when:** adding, removing, or changing any screen, navigation pattern, feature behavior, or UI interaction in the mobile app.

---

### [`documentation/SCHEMA.md`](documentation/SCHEMA.md)
The local SQLite database schema. Covers:
- `clients` table — all columns, constraints, and derived `status` logic
- `babies` table — birth details, clinical fields, foreign key to `clients`
- `notes` table — title/content/date entries per client
- `settings` table — EAV table for app-wide settings
- General notes: ISO 8601 dates, soft deletes via `deleted_at`, `updated_at` maintenance, unit storage conventions

**Update when:** adding, removing, or renaming a column or table; changing a constraint or default; altering soft-delete or migration behavior.

---

### [`documentation/STYLES.md`](documentation/STYLES.md)
The visual design language for the mobile app. Covers:
- Color palette (background, primary accent, secondary accent, text, muted, badge fills)
- Typography: Newsreader serif for names/display text; Inter/system sans-serif for UI chrome
- Layout conventions: list rows, detail view grids, avatar column, chevron affordance
- Component patterns: status badges, bottom tab bar, detail view tabs, skeleton loaders
- Overall tone

**Update when:** changing colors, fonts, layout rules, component visual patterns, or introducing new design tokens.

---

## Mockups

Visual mockups live in `documentation/mockups/` and are for reference only — do not modify them unless producing new design artifacts.

| File | Description |
|---|---|
| `documentation/mockups/client-list.png` | Client list screen layout |
| `documentation/mockups/client-view-page.png` | Client detail view layout |
36 changes: 0 additions & 36 deletions App.js

This file was deleted.

1 change: 1 addition & 0 deletions CLAUDE.md
6 changes: 0 additions & 6 deletions Gemfile

This file was deleted.

14 changes: 0 additions & 14 deletions __tests__/App-test.js

This file was deleted.

Loading
Loading