Skip to content

Commit

Permalink
Add GitHub and support link
Browse files Browse the repository at this point in the history
  • Loading branch information
rasmuslos committed Feb 24, 2024
1 parent 3b9a330 commit 0af6569
Show file tree
Hide file tree
Showing 5 changed files with 73 additions and 16 deletions.
Binary file not shown.
43 changes: 27 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# AmpFin

Introducing AmpFin, a sleek and intuitive native music client for the Jellyfin media server meticulously crafted for iOS 17, utilizing the power of SwiftUI. AmpFin offers a seamless and intuitive user experience, ensuring optimal performance and functionality.

- **Online & Offline Playback**: Enjoy your favorite tunes anytime, whether you're connected or offline.
Expand All @@ -15,6 +16,7 @@ Introducing AmpFin, a sleek and intuitive native music client for the Jellyfin m

Short term: https://nextcloud.rfk.io/s/iaaAKsad8SxQLfa

- CarPlay
- Rework audio player to use `@Observable`
- Restructure

Expand All @@ -26,25 +28,34 @@ While i do have plans to support other platforms i will not continue to work on
| ------------- | ------------- | ------------- | ------------- |
| <img src="/Screenshots/Library.png?raw=true" alt="Library" width="200"/> | <img src="/Screenshots/Album.png?raw=true" alt="Album" width="200"/> | <img src="/Screenshots/Player.png?raw=true" alt="Player" width="200"/> | <img src="/Screenshots/Queue.png?raw=true" alt="Queue" width="200"/>

## Building the app yourself
## Sideload

**Pre built binaries**

Grab the [latest Release](https://github.com/rasmuslos/AmpFin/releases/latest) and install it using your favorite tool like SideStore.

**Install using your favorite Side loading tool**
Please not that the pre build binaries lack Siri support because these features either require a paid developer account or cannot be reliably implemented in a way that works with tools like SideStore. For further information see https://github.com/rasmuslos/AmpFin/issues/11

Download and install the latest release \
*Please strip app extensions (widgets, siri support, ...), they will not work as intented see https://github.com/rasmuslos/AmpFin/issues/11*
Stripping app extensions is highly recommended, they will not work as intended.

**Build the app yourself**

1. Install Xcode
2. Change the bundle identifier
3. Connect your iPhone to your Mac
4. Enable developer mode
5. Select your iPhone as the target
6. Run the application

## Thanks to

Oskar Groth & João Gabriel: Great (https://cindori.com/developer/animated-gradient-2)[article] on fluid gradients in SwiftUI
Nuke: Much better LazyImage that SwiftUI
Starscream: Great WebSocket library for swift
UIImageColor (Felix Herrman Fork): Working Version for iOS 17
2. In the `Configuration` directory copy the `Debug.xcconfig.template` file and rename it to `Debug.xcconfig`
3. Change the `DEVELOPMENT_TEAM` to your apple developer team id and `BUNDLE_ID_PREFIX` to a prefix of your liking
4. If you do not have a paid developer account remove the `ENABLE_ALL_FEATURES` compilation condition. Otherwise the app will crash. If you do not intent on developing the app also remove the `DEBUG flag`
5. Connect your iPhone to your Mac & enable developer mode
6. Select your iPhone as the run destination
7. Run the application

Please not that the `DEBUG` configuration is used by default for all builds except archiving and profiling. You have to edit `Release.xcconfig` to update their parameters.

## Licensing & Contributing

AmpFin is licensed under the Mozilla Public License Version 2. Additionally the "Common Clause" applies. This means that you can modify AmpFin, as well as contribute to it, but you are not allowed to distribute the application in binary form. Compiling for your own personal use is not covered by the commons clause and therefore fine. Additionally, prebuilt binaries are available on GitHub for side loading using popular tools like SideStore, etc.

Contributions are welcome, just fork the repository, and open a pull request with your changes. If you want to contribute translations you have to edit `Localizable.xcstrings` in the `iOS` directory, as well as `Localizable.xcstrings` located at `ShelfPlayerKit/Sources/SPBase/Resources` using Xcode. If you want to add a new language add it in the project settings

## Miscellaneous

ShelfPlayer is not endorsed by nor associated with Jellyfin
Binary file modified iOS/Assets.xcassets/.DS_Store
Binary file not shown.
32 changes: 32 additions & 0 deletions iOS/Localizable.xcstrings
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,22 @@
}
}
},
"account.github" : {
"localizations" : {
"de" : {
"stringUnit" : {
"state" : "translated",
"value" : "Github"
}
},
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "GitHub"
}
}
}
},
"account.logout" : {
"localizations" : {
"de" : {
Expand Down Expand Up @@ -161,6 +177,22 @@
}
}
},
"account.support" : {
"localizations" : {
"de" : {
"stringUnit" : {
"state" : "translated",
"value" : "Hilfe"
}
},
"en" : {
"stringUnit" : {
"state" : "translated",
"value" : "Support"
}
}
}
},
"album.similar" : {
"localizations" : {
"de" : {
Expand Down
14 changes: 14 additions & 0 deletions iOS/Presentation/Views/Account/AccountSheet.swift
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,20 @@ struct AccountSheet: View {
}
}

Section {
Button {
UIApplication.shared.open(URL(string: "https://github.com/rasmuslos/AmpFin")!)
} label: {
Text("account.github")
}

Button {
UIApplication.shared.open(URL(string: "https://rfk.io/support.htm")!)
} label: {
Text("account.support")
}
}

Section("account.server") {
Group {
Text(JellyfinClient.shared.serverUrl.absoluteString)
Expand Down

0 comments on commit 0af6569

Please sign in to comment.