GithubHelp home page GithubHelp logo

ampfin's Introduction

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.
  • Explore Artists: Dive into your music collection effortlessly by browsing through artists.
  • Discover Albums: Navigate through your albums with ease, enhancing your music exploration.
  • Enjoy your Playlists: Playlists are fully supported - online & offline
  • Search Your Library: Quickly find your favorite tracks with our intuitive library search feature.
  • Queue with History: Take control of your playback experience by creating queues and accessing your listening history.
  • Remote control: Control AmpFin using another supported Jellyfin client or just take over control of one right inside the app
  • Siri / Spotlight integration: Play your music using Siri and access your library through Spotlight
  • Automatic updates: Added a track to a downloaded playlist? AmpFin will download it automatically

Roadmap

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

  • CarPlay
  • Rework audio player to use @Observable
  • Restructure

While i do have plans to support other platforms i will not continue to work on them until at least iOS 18 because i hope that until then SwiftUI is actually usable on the platforms.

Screenshots

Library Album Player Queue
Library Album Player Queue

Sideload

Pre built binaries

Grab the latest Release and install it using your favorite tool like SideStore.

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 rasmuslos#11

Stripping app extensions is highly recommended, they will not work as intended.

Build the app yourself

  1. Install Xcode
  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

ampfin's People

Contributors

rasmuslos avatar

Stargazers

Léo avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.