Skip to content
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

feat: initial app version #11

Open
wants to merge 474 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
474 commits
Select commit Hold shift + click to select a range
0e8f82c
chore: update release workflow again
castdrian Mar 7, 2024
eb9589b
chore: more workflow adjusting
castdrian Mar 7, 2024
17b343f
feat: horizontal scroll for ItemListSection
castdrian Mar 8, 2024
f272d66
chore: bounce up audio position by 2 seconds for initial switch
castdrian Mar 8, 2024
7e035e8
feat: higher poster quality
castdrian Mar 8, 2024
ad2c849
adjust colors to movie-web
JorrinKievit Mar 8, 2024
5d9839b
buttons to purple
JorrinKievit Mar 8, 2024
70f32ab
fix ci
JorrinKievit Mar 8, 2024
887949e
fix lint
JorrinKievit Mar 8, 2024
b6b8f34
fix: ignore pan gesture in slider vicinity
castdrian Mar 9, 2024
bfa0c2b
fix: play/pause gesture should affect alternate audio tracks
castdrian Mar 9, 2024
0d13518
fix: idiotism
castdrian Mar 9, 2024
284ead8
refactor: unmerge home and search tabs
castdrian Mar 9, 2024
69bcb97
fix: oops
castdrian Mar 9, 2024
0e00115
add scraper screen
JorrinKievit Mar 9, 2024
4014007
Merge branch 'feat-providers-video' of https://github.com/castdrian/m…
JorrinKievit Mar 9, 2024
50d6c5c
fix: use stylesheets here because nativewind is broken on iOS
castdrian Mar 10, 2024
9518981
chore: cleanup
castdrian Mar 10, 2024
b3e8c7b
chore: this doesn't need to be a scrollview
castdrian Mar 10, 2024
7993e56
chore: clean up workflows
castdrian Mar 10, 2024
013453f
chore: clean up
castdrian Mar 11, 2024
8697710
chore: adjust release workflow
castdrian Mar 17, 2024
1ce2872
chore: adjust release workflow
castdrian Mar 17, 2024
54bc237
chore: app icon image assets
castdrian Mar 18, 2024
069c8cb
chore: adjust app config
castdrian Mar 18, 2024
52978f6
refactor to tamagui
JorrinKievit Mar 18, 2024
6bb076f
woops
JorrinKievit Mar 18, 2024
ac0b23d
remove unused modal
JorrinKievit Mar 18, 2024
21ada81
fix lint
JorrinKievit Mar 18, 2024
202e148
chore: adjust gitignore
castdrian Mar 19, 2024
f1032f8
feat: dynamic app icon
castdrian Mar 19, 2024
6586c9a
feat: settings storage & theme persistence
castdrian Mar 19, 2024
01f3d2e
chore: bump providers
castdrian Mar 19, 2024
79fbdb4
chore: add prettierignore
castdrian Mar 19, 2024
74ab26a
chore: cleanup
castdrian Mar 19, 2024
d3368ef
fix: use different module that probably builds on windows
castdrian Mar 19, 2024
134b71e
fix: add config plugin to remove notification entitlement during preb…
castdrian Mar 19, 2024
5d9e75d
chore: change to fork with bumped android sdk
castdrian Mar 19, 2024
0854367
chore: prettier
castdrian Mar 19, 2024
22bb326
remove unused dep
JorrinKievit Mar 19, 2024
76a38dd
Merge branch 'feat-providers-video' of https://github.com/castdrian/m…
JorrinKievit Mar 19, 2024
0ddbc48
woopsie
JorrinKievit Mar 19, 2024
ecc216e
same background color as splash image
JorrinKievit Mar 19, 2024
4ad0726
chore: this one seems better
castdrian Mar 19, 2024
68a8b7e
chore: formatting
castdrian Mar 19, 2024
3b34fb9
chore: adjust build script
castdrian Mar 20, 2024
9eaf84c
fix: use OpenSans
castdrian Mar 20, 2024
f1ddcc0
fix: country code mapping
castdrian Mar 20, 2024
e3d2527
fix: ignore tamagui warning
castdrian Mar 20, 2024
9c232fd
fix: settings sheet eating into notch (but now there's some leftover …
castdrian Mar 20, 2024
262572d
chore: remove native ios modals
castdrian Mar 20, 2024
a81975c
chore: fix
castdrian Mar 20, 2024
d301978
chore: add dependencies for download functionality
castdrian Mar 20, 2024
5a8e250
feat: mp4 downloads
castdrian Mar 20, 2024
f1fc6a9
chore: newest download first
castdrian Mar 20, 2024
bc91162
chore: add uids to download items
castdrian Mar 20, 2024
fe93b9a
feat: download history
castdrian Mar 20, 2024
66344d5
feat: remove download history items on long press
castdrian Mar 20, 2024
315f1aa
feat: indicator when copying to library + fix percentage
castdrian Mar 20, 2024
460580b
feat: toasts
castdrian Mar 21, 2024
30bf4c3
feat: download button in player
castdrian Mar 21, 2024
13143a2
feat: gesture control toggle impl
castdrian Mar 21, 2024
21b574e
feat: play downloads
castdrian Mar 21, 2024
9c724ec
chore: expo deps update
castdrian Mar 21, 2024
ea4b702
feat: link context menu and downloadmanager
castdrian Mar 21, 2024
86f1210
chore: toast for bookmark
castdrian Mar 21, 2024
945a9bf
optimize volume and brightness overlays
JorrinKievit Mar 21, 2024
616e9f7
chore: improve android bundle size
castdrian Mar 22, 2024
ebad231
chore: format
castdrian Mar 22, 2024
f2fe68c
improve volume and brightness gestures
JorrinKievit Mar 22, 2024
50a46b1
Merge branch 'feat-providers-video' of https://github.com/castdrian/m…
JorrinKievit Mar 22, 2024
974eeb7
much lint very lint
JorrinKievit Mar 22, 2024
68e66a6
show loading indicator on subtitle selection, padding to progressbar
JorrinKievit Mar 22, 2024
c1b5cea
use insets to respect notch
JorrinKievit Mar 22, 2024
3ed389a
woops
JorrinKievit Mar 22, 2024
e2e1253
chore: bump mobile version to 0.0.10 [skip ci]
gh-action-bump-version Mar 22, 2024
919a3e9
chore: wrong workflow you idiot
castdrian Mar 22, 2024
2f51f79
chore: improve build scripts
castdrian Mar 22, 2024
c97eb2f
fix: remove android prod optimizations
castdrian Mar 23, 2024
7e67282
feat: update checker
castdrian Mar 23, 2024
d1c3e89
chore: use xcbeautify in actions
castdrian Mar 23, 2024
b53fb74
chore: use correct repo url for xcbeautify
castdrian Mar 23, 2024
f148f28
chore: just use homebrew instead
castdrian Mar 23, 2024
6606228
chore: adjust workflows
castdrian Mar 23, 2024
dfbeda2
feat: github actions cache
castdrian Mar 23, 2024
ddecdf7
fix: action order
castdrian Mar 23, 2024
7308eb2
chore: perhaps adjust path
castdrian Mar 23, 2024
f5f9450
chore: update pod cache paths
castdrian Mar 23, 2024
73d56d6
feat: improve actions caching
castdrian Mar 23, 2024
4ec78b1
add switch theme, remove unneeded search bar context
JorrinKievit Mar 23, 2024
c126825
Merge branch 'feat-providers-video' of https://github.com/castdrian/m…
JorrinKievit Mar 23, 2024
8fed2d5
chore: attempt to cache cocoapods
castdrian Mar 23, 2024
540085c
feat: proper pod cache keys
castdrian Mar 23, 2024
c24b2e0
chore: adjust this a-fucking-gain
castdrian Mar 23, 2024
c567954
chore: cache entire dir
castdrian Mar 24, 2024
ea435d9
feat: quality selector
castdrian Mar 24, 2024
ceffab1
fix theme selector not working, add input styling
JorrinKievit Mar 24, 2024
057e2bf
Merge branch 'feat-providers-video' of https://github.com/castdrian/m…
JorrinKievit Mar 24, 2024
5c18ff9
format
JorrinKievit Mar 24, 2024
7160d3c
fix home title fontSize
JorrinKievit Mar 24, 2024
8a9b72e
fix search bar focus color
JorrinKievit Mar 24, 2024
44df83c
fix: use native modals on iOS & respect safe area
castdrian Mar 24, 2024
a2761b1
chore: format
castdrian Mar 24, 2024
f239b4d
feat: use up-to-date dynamic icon lib that doesn't support android atm
castdrian Mar 24, 2024
f59fbd2
chore: formatting
castdrian Mar 24, 2024
0554dd1
chore: only use active cache key for pods cache restore
castdrian Mar 24, 2024
7846289
refactor: use mmkv and zustand persist middleware for main storage
castdrian Mar 25, 2024
cd0b302
refactor: default gesture controls to off on android bc android is funny
castdrian Mar 25, 2024
37e61d1
feat: autoplay toggle and setting
castdrian Mar 25, 2024
0aa9c9d
feat: autoplay
castdrian Mar 25, 2024
ad3411f
fix: adjust import
castdrian Mar 25, 2024
7dd7082
chore: uppercase theme selector text
castdrian Mar 25, 2024
c7a3ed3
feat: prettier update button
castdrian Mar 25, 2024
2b77651
fix: button color
castdrian Mar 26, 2024
800f0c3
chore: add repro button for expo issue lol
castdrian Mar 26, 2024
e15c76e
feat: bookmark store
castdrian Mar 26, 2024
f296cff
feat: add/remove bookmarks
castdrian Mar 26, 2024
d8626b9
chore: cleanup
castdrian Mar 26, 2024
3ef800f
chore: adjust this
castdrian Mar 26, 2024
d6ec5c9
chore: explicitly set bundle name
castdrian Mar 26, 2024
db0c379
feat: use in tab browser to load update url
castdrian Mar 26, 2024
5e8422b
chore: cleanup
castdrian Mar 26, 2024
1e975dd
feat: update sheet modal
castdrian Mar 26, 2024
0566b5b
fix: local asset playback
castdrian Mar 26, 2024
1e704bc
feat: hls downloads
castdrian Mar 26, 2024
37570b3
feat: cancel downloads
castdrian Mar 26, 2024
a86b1a0
feat: context menu on downloaditem
castdrian Mar 26, 2024
b9f83c3
fix: properly cancel downloads
castdrian Mar 26, 2024
ebfd35c
chore: adjust controls for local playback
castdrian Mar 26, 2024
4cfe7b6
chore: prolly fix rotation funsies on ios
castdrian Mar 26, 2024
42e6b1f
feat: add scrapemedia to downloaditem
castdrian Mar 27, 2024
772bee2
chore: cleanup
castdrian Mar 27, 2024
febc9c5
chore: init api package
castdrian Mar 27, 2024
6dc1787
chore: lockfile
castdrian Mar 27, 2024
e691425
chore: format
castdrian Mar 27, 2024
fa2425c
feat: watch history store
castdrian Mar 27, 2024
8c8ad47
feat: watch history
castdrian Mar 27, 2024
c828fe3
fix: poster path in meta conversion
castdrian Mar 27, 2024
72b2ffe
feat: jump to last watched position
castdrian Mar 27, 2024
1e653e6
chore: deps
castdrian Mar 27, 2024
dca49e8
feat: context menu for watchhistory items
castdrian Mar 27, 2024
020cb42
fix: typo
castdrian Mar 27, 2024
1c5a63f
feat: background download plugin and dep
castdrian Mar 27, 2024
57cd3e6
feat: background task for mp4 downloads
castdrian Mar 27, 2024
a709eb3
fix: download speed
castdrian Mar 27, 2024
1f7e8f4
feat: background tasks ios setup
castdrian Mar 27, 2024
d82f5a4
refactor: make hls downloads also use background task
castdrian Mar 28, 2024
3f91edc
chore: cleanup
castdrian Mar 28, 2024
1e66bc0
chore: format
castdrian Mar 28, 2024
c7f283a
fix: move perm request to download function
castdrian Mar 28, 2024
0d730f0
chore: Update README.md
castdrian Mar 28, 2024
79220ec
chore: adjust app repo and workflow
castdrian Mar 28, 2024
f7af613
chore: adjust
castdrian Mar 28, 2024
85cf307
chore: adjust workflow step
castdrian Mar 28, 2024
3b0a59c
chore: fix app repo step
castdrian Mar 28, 2024
8817171
feat: dependabot for providers
castdrian Mar 28, 2024
102dbc6
chore: readme adjustment
castdrian Mar 29, 2024
2399926
chore: add run config
castdrian Mar 29, 2024
30e52c2
chore: url parsing stuff for later when I have time
castdrian Apr 1, 2024
9ace6af
chore: bleh
castdrian Apr 1, 2024
908da0b
add header and background design
JorrinKievit Apr 1, 2024
35997d1
settings cleanup
JorrinKievit Apr 1, 2024
683cab9
fix: use safe insets for header
castdrian Apr 1, 2024
7b1dd81
feat: gate download behind development certificate on iOS
castdrian Apr 1, 2024
32ce520
chore: format
castdrian Apr 1, 2024
e45a668
feat: use svg in brandpill (might need some adjusting, but looks fine)
castdrian Apr 1, 2024
9130199
chore: cleanup
castdrian Apr 1, 2024
6a4a19a
chore: cleanup
castdrian Apr 1, 2024
07b9f7c
fix: use zstack to keep searchbar visible on search screen
castdrian Apr 1, 2024
f272187
fix: remove native ios modal and set insets on modal content instead …
castdrian Apr 1, 2024
21b2dfa
fix: perhaps fix compile error
castdrian Apr 2, 2024
1e6e3ea
chore: come on
castdrian Apr 2, 2024
21169c6
chore: that probably works
castdrian Apr 2, 2024
df4fe31
feat: play video via url
castdrian Apr 2, 2024
44647a4
chore: keep android native code in native module
castdrian Apr 2, 2024
657c2d0
chore: js function name in kt module
castdrian Apr 2, 2024
471be3b
Fix year NaN, no longer open unreleased
JorrinKievit Apr 2, 2024
9dc973d
Merge branch 'feat-providers-video' of https://github.com/castdrian/m…
JorrinKievit Apr 2, 2024
bd285e3
fix: probably make the module ios only as it's intended to be
castdrian Apr 2, 2024
e0cb7ea
fix: tsconfig
castdrian Apr 2, 2024
4cfc4fc
chore: ffs
castdrian Apr 2, 2024
925b280
improved settings design
JorrinKievit Apr 2, 2024
c1d6a4d
cleanup
JorrinKievit Apr 2, 2024
6718730
Merge branch 'feat-providers-video' of https://github.com/castdrian/m…
JorrinKievit Apr 2, 2024
71025ec
decrease font size in settings
JorrinKievit Apr 2, 2024
4eaf047
switch animation
JorrinKievit Apr 2, 2024
9273a32
chore: cleanup n stuffs
castdrian Apr 2, 2024
6c55ed9
moved playback and quality in one settings menu
JorrinKievit Apr 2, 2024
a8c90a0
Merge branch 'feat-providers-video' of https://github.com/castdrian/m…
JorrinKievit Apr 2, 2024
6b271ad
chore: downgrade providers cuz they broke
castdrian Apr 2, 2024
4a1b130
chore: bump providers cuz they unbroke
castdrian Apr 2, 2024
36b24ab
feat: clear cache button
castdrian Apr 2, 2024
899d599
fix: properly support opening video via url
castdrian Apr 4, 2024
05a09cc
feat: add settings for default quality on wifi/data
castdrian Apr 4, 2024
bf6bd7a
feat: disallow downloads on mobile data if disabled
castdrian Apr 4, 2024
c61f189
downloads refactor
JorrinKievit Apr 6, 2024
1a14254
fix show title format
JorrinKievit Apr 6, 2024
b2f1782
flash text while its in progress
JorrinKievit Apr 6, 2024
8f5d024
rework downloads
JorrinKievit Apr 6, 2024
1ab4b7c
fix: searchbar actually shows up again
castdrian Apr 7, 2024
a5ab7f4
fix: grab local uri from assetinfo
castdrian Apr 7, 2024
8b7bf5d
fix: adjust bar height over keyboard
castdrian Apr 7, 2024
ae5505d
feat: allow itemdata to hold season and episode numbers
castdrian Apr 8, 2024
96b0006
add episode download section
JorrinKievit Apr 8, 2024
45d12bb
refactor: use expo filsesystem for downloads
castdrian Apr 8, 2024
4a3d363
feat: implement default quality setting
castdrian Apr 11, 2024
5b80273
Fix for infinite rerender while scraping 🍻
JorrinKievit Apr 13, 2024
2b1aa40
fix: some nonsense
castdrian Apr 13, 2024
030dca2
header padding
JorrinKievit Apr 13, 2024
17d9073
Merge branch 'feat-providers-video' of https://github.com/castdrian/m…
JorrinKievit Apr 13, 2024
93111ec
fix: a bunch of idiotism
castdrian Apr 13, 2024
e83054c
fix missing / on cache directory
JorrinKievit Apr 13, 2024
8d1ec8f
fix DownloadItem show title row styling
JorrinKievit Apr 13, 2024
5def4e8
fix saved local path
JorrinKievit Apr 13, 2024
7b17b2c
fix: use localuri on ios
castdrian Apr 13, 2024
861a5a8
chore: move renovate config to root
castdrian Apr 14, 2024
097296f
chore: Update renovate.json
castdrian Apr 14, 2024
0622e43
feat: go back to downloads tab if all episodes removed
castdrian Apr 15, 2024
07d313b
start with movie-web page
JorrinKievit Apr 15, 2024
e8dfb5e
feat: auth functions
castdrian Apr 15, 2024
4e01f35
feat: auth store
castdrian Apr 15, 2024
338e633
feat: additional api package stuff
castdrian Apr 15, 2024
4f833be
chore: formatting
castdrian Apr 15, 2024
3fb2567
feat: finish api package
castdrian Apr 18, 2024
eea4eab
feat: api hooks n stuff
castdrian Apr 19, 2024
75f5256
remove ofetch, replace with fetch
JorrinKievit Apr 19, 2024
fcfd0d9
Update pnpm-lock.yaml
JorrinKievit Apr 19, 2024
b530284
chore: clean redundant await expressions
castdrian Apr 19, 2024
bbeb729
add register and login screens
JorrinKievit Apr 19, 2024
9eb9fb4
Merge branch 'feat-providers-video' of https://github.com/castdrian/m…
JorrinKievit Apr 19, 2024
61076b3
Update tsconfig.json
JorrinKievit Apr 19, 2024
aeeb34d
weird typescript thing
JorrinKievit Apr 19, 2024
c1e3d91
that didnt work
JorrinKievit Apr 19, 2024
59f27b0
update node in action
JorrinKievit Apr 19, 2024
1e7f3b9
update pnpm to v9
JorrinKievit Apr 19, 2024
0820e5b
Update package.json
JorrinKievit Apr 19, 2024
ac4e5cc
fix: temporarily pin openssl pod until new quick crypto release
castdrian Apr 20, 2024
932dcdd
chore: format
castdrian Apr 20, 2024
ef97313
fix: cast this value although it's fine
castdrian Apr 20, 2024
a89ef8a
add login, register, logout and devices list (including remove device)
JorrinKievit Apr 21, 2024
7cce25a
account deletion
JorrinKievit Apr 21, 2024
100435a
dumb ci
JorrinKievit Apr 21, 2024
b12562d
dumb ci v2
JorrinKievit Apr 21, 2024
e3d507d
add loading states to buttons
JorrinKievit Apr 21, 2024
d794076
edit account (profile, color, name)
JorrinKievit Apr 21, 2024
5ef90f5
change delete account title size
JorrinKievit Apr 21, 2024
118fa20
fix: aaa funi crypto lib being funi ahahahahahahahahahahahahahahahaha…
castdrian Apr 21, 2024
6c189d5
chore: make pull handle visible 🔍
castdrian Apr 21, 2024
1015b91
chore: adjust workflow stuff
castdrian Apr 27, 2024
12069cc
chore: cleanup
castdrian Apr 27, 2024
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
40 changes: 40 additions & 0 deletions .fleet/run.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
{
"configurations": [
{
"type": "command",
"name": "Run iOS",
"program": "pnpm",
"args": [
"ios"
],
"workingDir": "apps/expo/",
},
{
"type": "command",
"name": "Run Android",
"program": "pnpm",
"args": [
"android"
],
"workingDir": "apps/expo/",
},
{
"type": "command",
"name": "Build IPA",
"program": "pnpm",
"args": [
"ipa"
],
"workingDir": "apps/expo/",
},
{
"type": "command",
"name": "Build APK",
"program": "pnpm",
"args": [
"apk"
],
"workingDir": "apps/expo/",
},
]
}
5 changes: 5 additions & 0 deletions .fleet/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"editor.formatOnSave": true,
"nodejs.editor.formatOnSave.prettier.mode": "Enabled",
"nodejs.editor.formatOnSave.eslint.mode": "Enabled"
}
1 change: 0 additions & 1 deletion .github/CODEOWNERS

This file was deleted.

1 change: 0 additions & 1 deletion .github/CODE_OF_CONDUCT.md

This file was deleted.

1 change: 0 additions & 1 deletion .github/CONTRIBUTING.md

This file was deleted.

15 changes: 0 additions & 15 deletions .github/SECURITY.md

This file was deleted.

6 changes: 0 additions & 6 deletions .github/pull_request_template.md

This file was deleted.

112 changes: 112 additions & 0 deletions .github/workflows/build-mobile-comment.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@
name: "build mobile app via /build"

on:
issue_comment:
types: [created]

permissions:
contents: write
pull-requests: write

jobs:
build-android:
runs-on: ubuntu-latest
if: github.event.issue.pull_request && contains(github.event.comment.body, '/build')
steps:
- uses: xt0rted/pull-request-comment-branch@v2
id: comment-branch

- name: Checkout code
uses: actions/checkout@v4
with:
ref: ${{ steps.comment-branch.outputs.head_ref }}

- uses: pnpm/action-setup@v3
name: Install pnpm
with:
version: 9
run_install: false

- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: 21
cache: "pnpm"

- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: "17"
distribution: "temurin"

- name: Setup Android SDK
uses: android-actions/setup-android@v3

- name: Cache Node Modules
uses: actions/cache@v4
with:
path: "**/node_modules"
key: ${{ runner.os }}-pnpm-${{ hashFiles('**/pnpm-lock.yaml') }}

- name: Install dependencies
run: corepack enable && pnpm install

- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3

- name: Build Android app
run: cd apps/expo && pnpm apk

- name: Upload movie-web.apk as artifact
uses: actions/upload-artifact@v4
with:
name: apk
path: ./apps/expo/android/app/build/movie-web.apk

build-ios:
runs-on: macos-14
if: github.event.issue.pull_request && contains(github.event.comment.body, '/build')
steps:
- uses: xt0rted/pull-request-comment-branch@v2
id: comment-branch

- name: Checkout code
uses: actions/checkout@v4
with:
ref: ${{ steps.comment-branch.outputs.head_ref }}

- uses: pnpm/action-setup@v3
name: Install pnpm
with:
version: 9
run_install: false

- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: 21
cache: "pnpm"

- name: Cache Node Modules
uses: actions/cache@v4
with:
path: "**/node_modules"
key: ${{ runner.os }}-pnpm-${{ hashFiles('**/pnpm-lock.yaml') }}

- name: Install dependencies
run: pnpm install

- name: Cache Pods
uses: actions/cache@v4
with:
path: apps/expo/ios
key: ${{ runner.os }}-pods-${{ hashFiles('**/pnpm-lock.yaml') }}

- name: Build iOS app
run: cd apps/expo && pnpm ipa

- name: Upload movie-web.ipa as artifact
uses: actions/upload-artifact@v4
with:
name: ipa
path: ./apps/expo/ios/build/movie-web.ipa
74 changes: 41 additions & 33 deletions .github/workflows/build-mobile.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,49 +7,57 @@ on:

permissions:
contents: write
pull-requests: write

jobs:
jobs:
build-android:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v4

- uses: pnpm/action-setup@v3
name: Install pnpm
with:
version: 9
run_install: false

- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: 21

- uses: pnpm/action-setup@v2
name: Install pnpm
with:
version: 8
run_install: false
cache: "pnpm"

- name: Set up JDK 17
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
java-version: "17"
distribution: "temurin"

- name: Setup Android SDK
uses: android-actions/setup-android@v3

- name: Cache Node Modules
uses: actions/cache@v4
with:
path: "**/node_modules"
key: ${{ runner.os }}-pnpm-${{ hashFiles('**/pnpm-lock.yaml') }}

- name: Install dependencies
run: pnpm install
run: corepack enable && pnpm install

- name: Build Android app
run: cd apps/expo && pnpm run apk
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3

- name: Rename apk
run: cd apps/expo && mv android/app/build/outputs/apk/release/app-release.apk android/app/build/outputs/apk/release/movie-web.apk
- name: Build Android app
run: cd apps/expo && pnpm apk

- name: Upload movie-web.apk as artifact
uses: actions/upload-artifact@v4
with:
name: apk
path: ./apps/expo/android/app/build/outputs/apk/release/movie-web.apk
path: ./apps/expo/android/app/build/movie-web.apk

build-ios:
runs-on: macos-14
Expand All @@ -58,35 +66,35 @@ jobs:
- name: Checkout code
uses: actions/checkout@v4

- name: Xcode Select Version
uses: maxim-lobanov/setup-xcode@v1
- uses: pnpm/action-setup@v3
name: Install pnpm
with:
xcode-version: '15.1.0'
version: 9
run_install: false

- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: 21

- uses: pnpm/action-setup@v2
name: Install pnpm
cache: "pnpm"

- name: Cache Node Modules
uses: actions/cache@v4
with:
version: 8
run_install: false
path: "**/node_modules"
key: ${{ runner.os }}-pnpm-${{ hashFiles('**/pnpm-lock.yaml') }}

- name: Install dependencies
run: pnpm install

- name: Cache Pods
uses: actions/cache@v4
with:
path: apps/expo/ios
key: ${{ runner.os }}-pods-${{ hashFiles('**/pnpm-lock.yaml') }}

- name: Build iOS app
run: cd apps/expo && pnpm run ipa

- name: Export .ipa from .app
run: |
cd apps/expo
mkdir -p ios/build/Build/Products/Release-iphoneos/Payload
mv ios/build/Build/Products/Release-iphoneos/movieweb.app ios/build/Build/Products/Release-iphoneos/Payload/
cd ios/build/Build/Products/Release-iphoneos
zip -r ../../../movie-web.ipa Payload
run: cd apps/expo && pnpm ipa

- name: Upload movie-web.ipa as artifact
uses: actions/upload-artifact@v4
Expand Down
Loading