Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/vivizzz007/vivi-music/llms.txt

Use this file to discover all available pages before exploring further.

VIVI Music is an open-source community project and welcomes contributions of all kinds — bug fixes, new features, translations, documentation improvements, and design feedback. Before you open a pull request or file an issue, take a few minutes to read these guidelines so your contribution lands smoothly.

How to Contribute Code

Contributing code follows the standard GitHub fork-and-pull-request workflow:
1

Fork the repository

Visit https://github.com/vivizzz007/vivi-music and click Fork. This creates your own copy of the repository under your GitHub account.
2

Create a feature branch

Work on a dedicated branch named after the feature or fix you are implementing. Never commit directly to main.
git checkout -b feature/AmazingFeature
3

Commit your changes

Write clear, descriptive commit messages. Each commit should represent a single logical change.
git commit -m 'Add some AmazingFeature'
4

Push your branch

Push the branch to your fork on GitHub.
git push origin feature/AmazingFeature
5

Open a Pull Request

Go to your fork on GitHub and click Compare & pull request. Describe what your change does, why it is needed, and include screenshots or recordings for any UI changes. Link to the relevant issue if one exists.

Bug Reports & Feature Requests

GitHub Issues

File bug reports with steps to reproduce, your Android version, VIVI Music version, and build flavour (FOSS or GMS).

GitHub Discussions

Propose new features, ask questions, or share feedback in an open forum before filing a formal issue.

Telegram Community

Join the Telegram group for real-time community discussion, announcements, and support from other VIVI Music users.

GitHub Releases

Download the latest release APKs and read release notes before filing a bug to confirm you are on the current version.

Attribution Rules for Forks and Derivative Works

VIVI Music contains two integrations — the Musixmatch lyrics scraper and the JioSaavn audio streaming module — that were developed specifically for this project. If your own application copies, adapts, or reuses the logic from either integration, you must follow the attribution rules below in addition to the GPL-3.0 licence requirements.
If you reuse the Musixmatch lyrics scraping or signature logic from VIVI Music:Documentation & source headers You must state in your repository’s documentation (for example, README.md or an ATTRIBUTIONS file) and in relevant source file headers that the Musixmatch scraping logic was obtained from Vivi Music.UI attribution You must clearly display attribution inside your application’s UI — for example, on the lyrics viewer or the lyrics settings screen. The provider label must read vivimusic lyrics provider, or otherwise specify that the lyrics are powered or provided by Vivi Music.
If you reuse the JioSaavn audio streaming, search, or audio decryption logic from VIVI Music:Documentation & source headers You must state in your repository’s documentation and in relevant source file headers that the JioSaavn streaming logic was obtained from Vivi Music.UI attribution You must clearly display attribution inside your application’s UI — for example, on the stream quality selection or audio source settings screen. The source label must read JioSaavn (via vivimusic), or otherwise specify that the streaming service is powered by Vivi Music.
VIVI Music is licensed under the GNU General Public License v3.0. Any project that copies, modifies, or incorporates this code must comply fully with the GPL-3.0 terms, which include:
  • Releasing source code — your project must be fully open-sourced under the GPL-3.0 licence.
  • No proprietary forks — you cannot incorporate VIVI Music code into a closed-source or proprietary application.
  • Preserving licence notices — you must retain all existing copyright and licence notices in any files you copy or modify.
See the full licence text in the repository’s LICENSE file.
Closed-source forks are not permitted. The GPL-3.0 licence requires that any derivative work — including applications that copy even a small portion of the VIVI Music codebase — must be released under GPL-3.0 with full source access. Using VIVI Music code in a proprietary or closed-source application is a licence violation.

Code Style & Quality Guidelines

  • Follow standard Kotlin coding conventions and use the project’s existing formatting style.
  • Do not add telemetry, analytics, or trackers of any kind. VIVI Music is a privacy-first application.
  • If you add a new settings preference, define its key in constants/PreferenceKeys.kt following the existing naming convention.
  • UI changes must follow Material 3 guidelines and use the existing Material3SettingsGroup / Material3SettingsItem components where applicable.
  • Test your changes on both the foss and gms build variants when the change touches code that differs between them (for example, anything gated on BuildConfig.CAST_AVAILABLE).

Licence

VIVI Music is released under the GPL-3.0 licence. See LICENSE for the full licence text.

Build docs developers (and LLMs) love