-
Notifications
You must be signed in to change notification settings - Fork 109
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
114 changed files
with
5,049 additions
and
978 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
# Contributing to Finamp | ||
|
||
Thanks for your interest in contributing to Finamp! This document goes over how to get started on Finamp development, and other ways to contribute. | ||
|
||
## Setting up a Development Environment | ||
|
||
Finamp is a fairly standard Flutter app, so all you have to do is [install Flutter](https://docs.flutter.dev/get-started/install). Once Flutter is installed, you should be able to run Finamp on emulators/real devices. | ||
|
||
### Android Keys | ||
|
||
To build release APKs, you need to set up a signing key for Android. To get that set up, follow [this guide](https://docs.flutter.dev/deployment/android#signing-the-app) from the Flutter documentation. Note that if you have Finamp installed already, your phone may panic because the key is different. | ||
|
||
### The Arcane Arts (Code Generation) | ||
|
||
![A conversation between me and Chaphasilor. I say "did you try running (the Dart build command)?" They reply "I wasn't aware I need to use the arcane arts for this"](assets/arcane-arts.png) | ||
|
||
Because Dart doesn't support macros and stuff, a few dependencies rely on code generation which must be run manually. These dependencies are: | ||
|
||
* Hive - the database that Finamp uses for storing all data | ||
* `json_serializable` - For deserialising JSON into classes | ||
* Chopper - For talking to Jellyfin over HTTP | ||
* This layer (`lib/services/jellyfin_api.dart`) is not used by the app directly. The user-facing API is located at `lib/services/jellyfin_api_helper.dart`. | ||
|
||
To rebuild these files, run `dart run build_runner build --delete-conflicting-outputs`. This must be done when: | ||
|
||
* Modifying a class that is returned by Jellyfin (such as the classes in `lib/models/jellyfin_models.dart`) | ||
* Adding fields to a database class (annotated with `@HiveType`) | ||
|
||
If you don't rebuild generated files, you will encounter: | ||
|
||
* Settings not persisting | ||
* Hive errors on startup | ||
* Missing data when converting JSON to classes | ||
|
||
### Hive | ||
|
||
As said earlier, Finamp uses Hive for all data storage needs. If you're doing work that involves data storage, I recommend you read [the Hive docs](https://docs.hivedb.dev/#/). Please ensure that your changes work when upgrading Finamp from the current release to your changes, as not handling upgrades will cause the app to crash. When downgrading, you will have to wipe your app data if any changes were made to Hive. | ||
|
||
When creating new types, note that you'll also have to register an adapter in `main.dart`. After code generation, there should be a class called `[YourType]Adapter`, which you can initialise in `setupHive`. | ||
|
||
## The Redesign | ||
|
||
The biggest main piece of work being done on Finamp at the moment is the redesign. The relevant issue can be found [here](https://github.com/jmshrv/finamp/issues/220). The `redesign` branch has diverged a lot from `main`, but I try to keep it updated. If you're struggling to decide what to work on, the redesign is a good place to look :) | ||
|
||
## Translating | ||
|
||
Finamp uses Weblate to manage translations: **https://hosted.weblate.org/engage/finamp/** | ||
|
||
Feel free to add new languages if yours isn't there yet. If you have any questions, such as the context of a string, you can ask in the [Translation Discussions](https://github.com/jmshrv/finamp/discussions/categories/translations). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
New features and bug fixes. Full changelog at https://github.com/jmshrv/finamp/releases/tag/0.6.15 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
Fixed a bug created in 0.6.15. Full changelog at https://github.com/jmshrv/finamp/releases/tag/0.6.16 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
Fix F-Droid build. Changes from 0.6.16 (which was missed) can be seen at https://github.com/jmshrv/finamp/releases/tag/0.6.16 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
Quality of life and bug fixes. Full changelog at https://github.com/jmshrv/finamp/releases/tag/0.6.18 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,84 @@ | ||
import 'package:flutter/material.dart'; | ||
|
||
const jellyfinBlueColor = Color(0xFF00A4DC); | ||
const jellyfinPurpleColor = Color(0xFFAA5CC3); | ||
|
||
const lightColorScheme = ColorScheme( | ||
brightness: Brightness.light, | ||
// Primary | ||
primary: Color(0xFF00668A), | ||
onPrimary: Color(0xFFFFFFFF), | ||
primaryContainer: Color(0xFFC4E8FF), | ||
onPrimaryContainer: Color(0xFF001E2C), | ||
// Secondary | ||
secondary: Color(0xFF406374), | ||
onSecondary: Color(0xFFFFFFFF), | ||
secondaryContainer: Color(0xFFCCE8F8), | ||
onSecondaryContainer: Color(0xFF1B333F), | ||
// Tertiary | ||
tertiary: Color(0xFF893DA2), | ||
onTertiary: Color(0xFFFFFFFF), | ||
tertiaryContainer: Color(0xFFFAD7FF), | ||
onTertiaryContainer: Color(0xFF330044), | ||
// Error | ||
error: Color(0xFFBA1A1A), | ||
errorContainer: Color(0xFFFFDAD6), | ||
onError: Color(0xFFFFFFFF), | ||
onErrorContainer: Color(0xFF410002), | ||
// Background & Surface | ||
background: Color(0xFFFCFDFE), | ||
onBackground: Color(0xFF191C1E), | ||
surface: Color(0xFFFCFDFE), | ||
onSurface: Color(0xFF191C1E), | ||
surfaceVariant: Color(0xFFDDE4E8), | ||
onSurfaceVariant: Color(0xFF41484D), | ||
// Other colors | ||
outline: Color(0xFF727A7F), | ||
onInverseSurface: Color(0xFFF0F1F3), | ||
inverseSurface: Color(0xFF2E3133), | ||
inversePrimary: Color(0xFF7BD0FF), | ||
shadow: Color(0xFF000000), | ||
surfaceTint: Color(0xFF00668A), | ||
outlineVariant: Color(0xFFC0C7CD), | ||
scrim: Color(0xFF000000), | ||
); | ||
|
||
const darkColorScheme = ColorScheme( | ||
brightness: Brightness.dark, | ||
// Primary | ||
primary: jellyfinBlueColor, | ||
onPrimary: Color(0xFF001E2C), | ||
primaryContainer: Color(0xFF004C68), | ||
onPrimaryContainer: Color(0xFFC3E7FF), | ||
// Secondary | ||
secondary: Color(0xFF60B4DD), | ||
onSecondary: Color(0xFF112732), | ||
secondaryContainer: Color(0xFF206B8C), | ||
onSecondaryContainer: Color(0xFFCEEEFF), | ||
// Tertiary | ||
tertiary: Color(0xFFC979E2), | ||
onTertiary: Color(0xFF3D0050), | ||
tertiaryContainer: Color(0xFF762A90), | ||
onTertiaryContainer: Color(0xFFFAD7FF), | ||
// Error | ||
error: Color(0xFFFFB4AB), | ||
errorContainer: Color(0xFF93000A), | ||
onError: Color(0xFF690005), | ||
onErrorContainer: Color(0xFFFFDAD6), | ||
// Background & Surface | ||
background: Color(0xFF101315), | ||
onBackground: Color(0xFFE1E2E5), | ||
surface: Color(0xFF101315), | ||
onSurface: Color(0xFFE1E2E5), | ||
surfaceVariant: Color(0xFF333A3E), | ||
onSurfaceVariant: Color(0xFFC0C7CD), | ||
// Other colors | ||
outline: Color(0xFF80878C), | ||
onInverseSurface: Color(0xFF191C1E), | ||
inverseSurface: Color(0xFFE1E2E5), | ||
inversePrimary: Color(0xFF00668A), | ||
shadow: Color(0xFF000000), | ||
surfaceTint: Color(0xFF7BD0FF), | ||
outlineVariant: Color(0xFF41484D), | ||
scrim: Color(0xFF000000), | ||
); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
1 change: 1 addition & 0 deletions
1
lib/components/AlbumScreen/album_screen_content_flexible_space_bar.dart
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,4 @@ | ||
import 'dart:io'; | ||
import 'dart:math'; | ||
|
||
import 'package:finamp/models/finamp_models.dart'; | ||
|
Oops, something went wrong.