Skip to content

A multiplatform music player app with the vibe of good old vinyl players, targeting Android and iOS

License

Notifications You must be signed in to change notification settings

andremion/RetroBeat

Repository files navigation

RetroBeat icon

CI

RetroBeat

A music player app with the vibe of good old vinyl players.


Music Player: From UI proposal to code

In 2016, I published an article about how to code a design proposal.

I noticed that a lot of people had difficulty building motion designs.

RetroBeat is an updated version of that proposal that uses modern tools and frameworks and now also targets iOS. 🚀


retrobeat_preview.mp4

Music source

Currently fetching playlists from Deezer API where those songs are previews of 30 seconds.

The solution is flexible enough to support another source.

Dependencies

  • Compose Multiplatform: A declarative framework based on Jetpack Compose and developed by JetBrains and open-source contributors for sharing UIs across multiple platforms with Kotlin.
  • Exoplayer: An extensible media player for Android.
  • PreCompose: Supports navigation and view models providing similar APIs to Jetpack ones.
  • Compottie: A port of Lottie Compose.
  • Koin: A pragmatic lightweight dependency injection framework.
  • Ktor Client: A library for fetching data from the internet and written in Kotlin from the ground up.

TODO

  • Cache the selected playlist and navigate directly to the selected playlist from the launcher
  • Add integration tests

Articles

References

License

Copyright 2024 André Luiz Oliveira Rêgo

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

About

A multiplatform music player app with the vibe of good old vinyl players, targeting Android and iOS

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published