Some checks failed
Deploy / Deploy Production (push) Has been skipped
Deploy / Cleanup Preview (push) Has been skipped
Deploy / Deploy Preview (push) Failing after 0s
CI / Scraper / Test (pull_request) Successful in 11s
CI / UI / Build (pull_request) Failing after 14s
CI / Scraper / Lint (pull_request) Successful in 23s
CI / Scraper / Build (pull_request) Successful in 24s
iOS CI / Build (push) Has been cancelled
iOS CI / Test (push) Has been cancelled
iOS CI / Build (pull_request) Failing after 2s
iOS CI / Test (pull_request) Has been skipped
- iOS SwiftUI app (ios/LibNovel/) targeting iOS 17+, generated via xcodegen - Full feature set: auth, home, library, book detail, chapter reader, browse, audio player, profile - Kingfisher for image loading, swift-markdown-ui for chapter rendering - Base URL: https://v2.libnovel.kalekber.cc - SvelteKit JSON API routes (ui/src/routes/api/) for iOS consumption: auth/login, auth/register, auth/me, auth/logout, auth/change-password, home, library, book/[slug], chapter/[slug]/[n], search, ranking, progress/[slug], presign/audio (updated) - Gitea Actions CI: .gitea/workflows/ios.yaml (build + test on macos-latest) - justfile: ios-gen, ios-build, ios-test recipes
91 lines
2.0 KiB
YAML
91 lines
2.0 KiB
YAML
name: LibNovel
|
|
options:
|
|
bundleIdPrefix: cc.kalekber
|
|
deploymentTarget:
|
|
iOS: "17.0"
|
|
xcodeVersion: "16.0"
|
|
generateEmptyDirectories: true
|
|
indentWidth: 4
|
|
tabWidth: 4
|
|
usesTabs: false
|
|
|
|
settings:
|
|
base:
|
|
SWIFT_VERSION: "5.10"
|
|
ENABLE_PREVIEWS: YES
|
|
MARKETING_VERSION: "1.0.0"
|
|
CURRENT_PROJECT_VERSION: "1"
|
|
LIBNOVEL_BASE_URL: "https://v2.libnovel.kalekber.cc"
|
|
configs:
|
|
Debug:
|
|
SWIFT_ACTIVE_COMPILATION_CONDITIONS: DEBUG
|
|
Release:
|
|
SWIFT_ACTIVE_COMPILATION_CONDITIONS: ""
|
|
|
|
packages:
|
|
# Markdown rendering — renders chapter HTML from the server
|
|
MarkdownUI:
|
|
url: https://github.com/gonzalezreal/swift-markdown-ui
|
|
from: "2.4.0"
|
|
# Async image loading with caching
|
|
Kingfisher:
|
|
url: https://github.com/onevcat/Kingfisher
|
|
from: "8.0.0"
|
|
|
|
targets:
|
|
LibNovel:
|
|
type: application
|
|
platform: iOS
|
|
deploymentTarget: "17.0"
|
|
sources:
|
|
- path: LibNovel
|
|
excludes:
|
|
- "**/.DS_Store"
|
|
- "Resources/Info.plist"
|
|
resources:
|
|
- path: LibNovel/Resources/Assets.xcassets
|
|
dependencies:
|
|
- package: Kingfisher
|
|
- package: MarkdownUI
|
|
settings:
|
|
base:
|
|
PRODUCT_BUNDLE_IDENTIFIER: cc.kalekber.libnovel
|
|
ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
|
|
TARGETED_DEVICE_FAMILY: "1,2" # iPhone + iPad
|
|
GENERATE_INFOPLIST_FILE: NO
|
|
INFOPLIST_FILE: LibNovel/Resources/Info.plist
|
|
|
|
LibNovelTests:
|
|
type: bundle.unit-test
|
|
platform: iOS
|
|
deploymentTarget: "17.0"
|
|
sources:
|
|
- path: LibNovelTests
|
|
dependencies:
|
|
- target: LibNovel
|
|
settings:
|
|
base:
|
|
PRODUCT_BUNDLE_IDENTIFIER: cc.kalekber.libnovel.tests
|
|
|
|
schemes:
|
|
LibNovel:
|
|
build:
|
|
targets:
|
|
LibNovel: all
|
|
run:
|
|
config: Debug
|
|
environmentVariables:
|
|
LIBNOVEL_BASE_URL:
|
|
value: "https://v2.libnovel.kalekber.cc"
|
|
isEnabled: true
|
|
test:
|
|
config: Debug
|
|
targets:
|
|
- LibNovelTests
|
|
profile:
|
|
config: Release
|
|
analyze:
|
|
config: Debug
|
|
archive:
|
|
config: Release
|