-
Notifications
You must be signed in to change notification settings - Fork 30
feat(mobile): hackathon mobile app #2237
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
111 commits
Select commit
Hold shift + click to select a range
0b59b55
Added new nav bar
Gilbert09 68ed364
Nav changes
Gilbert09 72b5c15
New styles
Gilbert09 2b7d485
Added icons to the task list
Gilbert09 33083e0
task list icons
Gilbert09 c0285fb
Added smooth nav
Gilbert09 0cdf6ad
Added filtering
Gilbert09 d0d37c5
Added better nav presses
Gilbert09 caef810
new task UI
Gilbert09 b9f8cbf
Add mobile task automations UI
annikaschmid 32cd2ba
i think we have notifications now but i haven't read the code
dmarticus ede8764
binch
dmarticus 13bf4d1
Merge hackathon-mobile-app into mobile automations
annikaschmid 1a0821e
poosh
dmarticus af59c3d
based
dmarticus 9eb94ab
sickos yes
oliverb123 a2a6ea4
fix icon
dmarticus 543eede
Merge branch 'hackathon-mobile-app' of github.com:PostHog/code into h…
dmarticus d677d33
Store last used repo
Gilbert09 96b551d
Added a text input for the chat view
Gilbert09 a0869b2
Remove local settings from source control
Gilbert09 a9aead1
Updated settings file
Gilbert09 6ea5aad
Updated claude.md with mobile stuff
Gilbert09 8a1bda5
Updated the task view to be a lot better
Gilbert09 19ea4c2
fix(mobile): improve automation run status updates
annikaschmid 4dc29a1
cater to degens
oliverb123 c820e4b
pretty reports
oliverb123 aa26857
Floating UI
Gilbert09 08d3168
Added inbox header
Gilbert09 b051e11
Updated filter overlay
Gilbert09 0bbb8ae
fix task title bar
oliverb123 c04f1f3
style(mobile): replace monospace UI fonts
annikaschmid f2a4f05
Added attachments
Gilbert09 97a8074
git ignore
Gilbert09 f7f4cd1
fix this
dmarticus df9823b
Added voice recording
Gilbert09 282f6a7
Added git status to a task
Gilbert09 80b2066
Fixed task header fade
Gilbert09 ce8220a
swipe right on me baby
oliverb123 2d50115
Added file diff viewer
Gilbert09 28aaa87
chat feed updates
Gilbert09 c846cfd
Improve mobile tool call details and session activity
annikaschmid 9e8770c
Render images in chat
Gilbert09 2e1105c
Merge remote-tracking branch 'origin/hackathon-mobile-app' into hacka…
annikaschmid 06b6ee2
Persist images
Gilbert09 028d526
tinder tweaks
oliverb123 2c11f86
Upgraded settings a bunch
Gilbert09 49c1692
Adjust mobile task icon precedence
annikaschmid 2e536c5
Merge remote-tracking branch 'origin/hackathon-mobile-app' into hacka…
annikaschmid 0385074
Guard mobile attachment pickers
annikaschmid 6fbe8b9
Removed Hedgehog mode
Gilbert09 574c2e2
enhance the reports inbox
dmarticus 1fea6c7
resolve conflicts
dmarticus 480e172
tinder for all
oliverb123 64aad3f
Match mobile app icon to desktop app
annikaschmid 970eefc
Merge remote-tracking branch 'origin/hackathon-mobile-app' into hacka…
annikaschmid 331806f
mobile: stream cloud runs over SSE (#2147)
oliverb123 2444535
fixing the tool call ui
dmarticus e14bddf
Merge branch 'hackathon-mobile-app' of github.com:PostHog/code into h…
dmarticus b0e0689
feat(mobile): add automation templates
annikaschmid 2a1cc20
i think this fixes tool calls
dmarticus 377f559
Merge remote-tracking branch 'origin/hackathon-mobile-app' into hacka…
annikaschmid 6510d92
Added mcp servers
Gilbert09 6e50256
Automations list UX
Gilbert09 974e9cd
fix(code): preserve repo selection in task input
annikaschmid 333c5d3
fix(mobile): hide running automation badge
annikaschmid 69ff33c
Added universal links
Gilbert09 421c769
Remove AI chat
Gilbert09 3ca028d
feat(mobile): add watch app (#2148)
ioannisj 4469052
fix push notif auth
dmarticus 6854225
feat(mobile): build skill-based automation creation
annikaschmid bf662f1
Merge remote-tracking branch 'origin/hackathon-mobile-app' into hacka…
annikaschmid c3646f6
fix: le
ioannisj fa36ee8
fix:
ioannisj 9f794ef
tinder tweaks
oliverb123 c05fd3c
fix icons
oliverb123 4bd771f
feat(mobile): add plan approvals and PostHog chips
annikaschmid 72f26d1
Merge branch 'hackathon-mobile-app' of github.com:PostHog/code into h…
dmarticus 8e3afa6
Expo build setup
Gilbert09 6347303
Png
Gilbert09 09c24fc
ugh stop breaking shit
dmarticus 69d804b
Merge branch 'hackathon-mobile-app' of github.com:PostHog/code into h…
dmarticus 4d230ed
prod eas
Gilbert09 b8c3173
Merge branch 'hackathon-mobile-app' of github.com:PostHog/code into h…
dmarticus 6c49f7b
updated the readme
dmarticus f2a79a6
few more fixes
dmarticus 1a1ad48
Task loading state, loading old tasks fix, app.icon > posthog.icon
oliverb123 67a5bef
repo selector caching, automation ui touch up
oliverb123 ef6fa5c
remove watch stuff
dmarticus ddc4027
fix plan crashes
dmarticus abe535c
Merge remote-tracking branch 'origin/main' into hackathon-mobile-app
dmarticus 20ac39c
fix(mobile): resolve biome ci errors
dmarticus c1e7e41
fix(mobile): resolve test failures
dmarticus 4f48227
nice, this UX feels crispy
dmarticus 573d582
feedback on many things
dmarticus e386042
we done?
dmarticus d0eafcb
Merge remote-tracking branch 'origin/main' into hackathon-mobile-app
dmarticus eba1990
Fixed github auth
Gilbert09 43fed8e
Added a debug info section to settings
Gilbert09 6cf5ffd
Updated github connection
Gilbert09 df2c657
Added a project picker in-app
Gilbert09 3560c69
Added workflows for building the app
Gilbert09 5eb4591
Merge branch 'main' into hackathon-mobile-app
dmarticus 1a51404
Potential fix for pull request finding 'CodeQL / Workflow does not co…
Gilbert09 6bb1abe
fix(ci): avoid shell injection in mobile workflows
Gilbert09 f18c092
revert: drop stray desktop repo-selection fix from mobile branch
Gilbert09 f2815a1
Merge branch 'main' into hackathon-mobile-app
Gilbert09 45e302b
feat(mobile): add Auto execution mode to match desktop
Gilbert09 ab97fa5
fix(mobile): stop vitest hanging on native module mocks
Gilbert09 9feb8f3
chore: remove mobile planning docs from branch
Gilbert09 de350bc
chore(ci): use EAS-stored Google Play credentials for mobile promote
Gilbert09 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,91 @@ | ||
| name: Mobile Build | ||
|
|
||
| # Builds the Expo mobile app (apps/mobile) for iOS and Android on EAS. | ||
| # The two platforms run as parallel matrix jobs, so both builds are queued | ||
| # simultaneously. | ||
| # | ||
| # Required repository secret: | ||
| # EXPO_TOKEN - an Expo access token with build permissions for the | ||
| # "posthog" account (https://expo.dev/settings/access-tokens). | ||
|
|
||
| on: | ||
| workflow_dispatch: | ||
| inputs: | ||
| profile: | ||
| description: "EAS build profile" | ||
| type: choice | ||
| default: production | ||
| options: | ||
| - development | ||
| - preview | ||
| - production | ||
| wait: | ||
| description: "Wait for the EAS build to finish (uncheck to just queue and exit)" | ||
| type: boolean | ||
| default: true | ||
|
|
||
| concurrency: | ||
| group: mobile-build-${{ github.ref }}-${{ inputs.profile }} | ||
| cancel-in-progress: false | ||
|
|
||
| jobs: | ||
| build: | ||
| name: Build (${{ matrix.platform }}) | ||
| runs-on: ubuntu-latest | ||
| strategy: | ||
| fail-fast: false | ||
| matrix: | ||
| platform: [ios, android] | ||
| permissions: | ||
| contents: read | ||
| defaults: | ||
| run: | ||
| working-directory: apps/mobile | ||
| steps: | ||
| - name: Checkout | ||
| uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 | ||
| with: | ||
| persist-credentials: false | ||
|
|
||
| - name: Setup pnpm | ||
| uses: pnpm/action-setup@b906affcce14559ad1aafd4ab0e942779e9f58b1 # v4 | ||
|
|
||
| - name: Setup Node.js | ||
| uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4 | ||
| with: | ||
| node-version: 22 | ||
| cache: "pnpm" | ||
|
|
||
| - name: Setup EAS | ||
| uses: expo/expo-github-action@4479f9c12e08b76bb8a6ae00a31544a13d3b3d68 # v8 | ||
| with: | ||
| eas-version: latest | ||
| token: ${{ secrets.EXPO_TOKEN }} | ||
|
|
||
| - name: Install dependencies | ||
| run: pnpm install --frozen-lockfile | ||
| working-directory: . | ||
|
|
||
| - name: EAS build | ||
| env: | ||
| PLATFORM: ${{ matrix.platform }} | ||
| PROFILE: ${{ inputs.profile }} | ||
| WAIT_FLAG: ${{ inputs.wait && '--wait' || '--no-wait' }} | ||
| run: | | ||
| eas build \ | ||
| --non-interactive \ | ||
| --platform "$PLATFORM" \ | ||
| --profile "$PROFILE" \ | ||
| "$WAIT_FLAG" | ||
|
|
||
| # Auto-promote the freshly built production binaries. Only runs when the build | ||
| # job waited for completion (otherwise there is no finished build to submit). | ||
| promote: | ||
| permissions: {} | ||
| needs: build | ||
| if: ${{ inputs.profile == 'production' && inputs.wait }} | ||
| uses: ./.github/workflows/mobile-promote.yml | ||
| with: | ||
| platform: all | ||
| profile: production | ||
| secrets: inherit | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,98 @@ | ||
| name: Mobile Promote | ||
|
|
||
| # Promotes the most recent finished EAS build to the stores: | ||
| # iOS -> App Store Connect (build becomes available in TestFlight) | ||
| # Android -> Google Play "internal" testing track | ||
| # | ||
| # Uses `eas submit --latest`, which submits the latest successful build for the | ||
| # selected platform/profile. Run "Mobile Build" with the matching profile first. | ||
| # | ||
| # Required repository secret: | ||
| # EXPO_TOKEN - Expo access token (submit permissions). | ||
| # | ||
| # Store credentials live on EAS, not in this repo: the iOS App Store Connect API | ||
| # key and the Android Google Play service account key are configured once via | ||
| # `eas credentials` so that `--non-interactive` submits can authenticate. | ||
|
|
||
| on: | ||
| workflow_dispatch: | ||
| inputs: | ||
| platform: | ||
| description: "Platform to promote" | ||
| type: choice | ||
| default: all | ||
| options: | ||
| - all | ||
| - ios | ||
| - android | ||
| profile: | ||
| description: "EAS submit profile" | ||
| type: choice | ||
| default: production | ||
| options: | ||
| - production | ||
| # Allows "Mobile Build" to chain into this workflow after a successful build. | ||
| workflow_call: | ||
| inputs: | ||
| platform: | ||
| type: string | ||
| default: all | ||
| profile: | ||
| type: string | ||
| default: production | ||
| secrets: | ||
| EXPO_TOKEN: | ||
| required: true | ||
|
|
||
| concurrency: | ||
| group: mobile-promote-${{ github.ref }} | ||
| cancel-in-progress: false | ||
|
|
||
| jobs: | ||
| submit: | ||
| name: Submit (${{ matrix.platform }}) | ||
| runs-on: ubuntu-latest | ||
| strategy: | ||
| fail-fast: false | ||
| matrix: | ||
| platform: ${{ inputs.platform == 'all' && fromJSON('["ios","android"]') || fromJSON(format('["{0}"]', inputs.platform)) }} | ||
| permissions: | ||
| contents: read | ||
| defaults: | ||
| run: | ||
| working-directory: apps/mobile | ||
| steps: | ||
| - name: Checkout | ||
| uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 | ||
| with: | ||
| persist-credentials: false | ||
|
|
||
| - name: Setup pnpm | ||
| uses: pnpm/action-setup@b906affcce14559ad1aafd4ab0e942779e9f58b1 # v4 | ||
|
|
||
| - name: Setup Node.js | ||
| uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4 | ||
| with: | ||
| node-version: 22 | ||
| cache: "pnpm" | ||
|
|
||
| - name: Setup EAS | ||
| uses: expo/expo-github-action@4479f9c12e08b76bb8a6ae00a31544a13d3b3d68 # v8 | ||
| with: | ||
| eas-version: latest | ||
| token: ${{ secrets.EXPO_TOKEN }} | ||
|
|
||
| - name: Install dependencies | ||
| run: pnpm install --frozen-lockfile | ||
| working-directory: . | ||
|
|
||
| - name: EAS submit | ||
| env: | ||
| PLATFORM: ${{ matrix.platform }} | ||
| PROFILE: ${{ inputs.profile }} | ||
| run: | | ||
| eas submit \ | ||
| --non-interactive \ | ||
| --platform "$PLATFORM" \ | ||
| --profile "$PROFILE" \ | ||
| --latest |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -37,5 +37,5 @@ yarn-error.* | |
| *.tsbuildinfo | ||
|
|
||
| # generated native folders | ||
| /ios | ||
| /ios/* | ||
| /android | ||
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.