summaryrefslogtreecommitdiff
path: root/app/src/main/java/sh/lajo/buddy/ui
diff options
context:
space:
mode:
authorJustZvan <justzvan@justzvan.xyz>2026-02-06 13:38:36 +0100
committerJustZvan <justzvan@justzvan.xyz>2026-02-06 13:38:36 +0100
commitadb6a4fd9ec3a23c04d5e4c2ce799448237915c4 (patch)
tree786edcf5888788e0667a90fae96d7ebec68c507a /app/src/main/java/sh/lajo/buddy/ui
feat: initial commit
Diffstat (limited to 'app/src/main/java/sh/lajo/buddy/ui')
-rw-r--r--app/src/main/java/sh/lajo/buddy/ui/theme/Theme.kt66
-rw-r--r--app/src/main/java/sh/lajo/buddy/ui/theme/Type.kt34
2 files changed, 100 insertions, 0 deletions
diff --git a/app/src/main/java/sh/lajo/buddy/ui/theme/Theme.kt b/app/src/main/java/sh/lajo/buddy/ui/theme/Theme.kt
new file mode 100644
index 0000000..71f61b6
--- /dev/null
+++ b/app/src/main/java/sh/lajo/buddy/ui/theme/Theme.kt
@@ -0,0 +1,66 @@
+package sh.lajo.buddy.ui.theme
+
+import androidx.compose.foundation.isSystemInDarkTheme
+import androidx.compose.material3.MaterialTheme
+import androidx.compose.material3.darkColorScheme
+import androidx.compose.material3.lightColorScheme
+import androidx.compose.runtime.Composable
+import androidx.compose.ui.platform.LocalContext
+import androidx.compose.ui.graphics.Color
+
+private val DarkColorScheme = darkColorScheme(
+ primary = Color(0xFFF42E2E),
+ onPrimary = Color(0xFFF3F3F3),
+
+ primaryContainer = Color(0xFFF42E2E),
+ onPrimaryContainer = Color(0xFFF3F3F3),
+
+ secondary = Color(0xFFF42E2E),
+ onSecondary = Color(0xFFF3F3F3),
+
+ secondaryContainer = Color(0xFFF42E2E),
+ onSecondaryContainer = Color(0xFFF3F3F3),
+
+ background = Color(0xFF020202),
+ onBackground = Color(0xFFF3F3F3),
+
+ surface = Color(0xFF111112),
+ onSurface = Color(0xFFF3F3F3),
+
+ surfaceVariant = Color(0xFF1A1A1B),
+ onSurfaceVariant = Color(0xFFF3F3F3),
+
+ surfaceContainer = Color(0xFF111112),
+ surfaceContainerLow = Color(0xFF0A0A0A),
+
+ outline = Color(0xFF3A3A3A),
+)
+
+
+
+private val LightColorScheme = lightColorScheme(
+ primary = Color(0xFFF42E2E), // Red foreground (same as dark for brand consistency)
+ onPrimary = Color(0xFFFFFFFF), // Text/icons on primary
+ background = Color(0xFFF3F3F3), // Light background
+ onBackground = Color(0xFF020202), // Text/icons on background
+ surface = Color(0xFFFFFFFF), // Cards, sheets, etc.
+ onSurface = Color(0xFF020202), // Text/icons on surface
+ tertiary = Color(0xFF1A1A1B), // Accent elements
+)
+
+@Composable
+fun BuddyTheme(
+ darkTheme: Boolean = isSystemInDarkTheme(),
+ dynamicColor: Boolean = false,
+ content: @Composable () -> Unit,
+) {
+ val context = LocalContext.current
+
+ val colorScheme = if (darkTheme) DarkColorScheme else LightColorScheme
+
+ MaterialTheme(
+ colorScheme = colorScheme,
+ typography = Typography,
+ content = content
+ )
+}
diff --git a/app/src/main/java/sh/lajo/buddy/ui/theme/Type.kt b/app/src/main/java/sh/lajo/buddy/ui/theme/Type.kt
new file mode 100644
index 0000000..743e63c
--- /dev/null
+++ b/app/src/main/java/sh/lajo/buddy/ui/theme/Type.kt
@@ -0,0 +1,34 @@
+package sh.lajo.buddy.ui.theme
+
+import androidx.compose.material3.Typography
+import androidx.compose.ui.text.TextStyle
+import androidx.compose.ui.text.font.FontFamily
+import androidx.compose.ui.text.font.FontWeight
+import androidx.compose.ui.unit.sp
+
+// Set of Material typography styles to start with
+val Typography = Typography(
+ bodyLarge = TextStyle(
+ fontFamily = FontFamily.Default,
+ fontWeight = FontWeight.Normal,
+ fontSize = 16.sp,
+ lineHeight = 24.sp,
+ letterSpacing = 0.5.sp
+ )
+ /* Other default text styles to override
+ titleLarge = TextStyle(
+ fontFamily = FontFamily.Default,
+ fontWeight = FontWeight.Normal,
+ fontSize = 22.sp,
+ lineHeight = 28.sp,
+ letterSpacing = 0.sp
+ ),
+ labelSmall = TextStyle(
+ fontFamily = FontFamily.Default,
+ fontWeight = FontWeight.Medium,
+ fontSize = 11.sp,
+ lineHeight = 16.sp,
+ letterSpacing = 0.5.sp
+ )
+ */
+) \ No newline at end of file