feat: v0.0.1 - Groq provider, timezone, journal context, test connection, task logging
Added: - Groq AI provider (free, fast with llama-3.3-70b-versatile) - Timezone setting (22 timezones) - Journal context: include previous journals (3/7/14/30 days) - Test connection button for AI providers - Per-provider settings (API key, model, base URL remembered) - Detailed task logging (full prompts and responses) - Tasks page with expandable details - Progress modal with steps and AI output details Fixed: - Groq API endpoint (https://api.groq.com/openai/v1/chat/completions) - Ollama baseUrl leaking to other providers - Database schema references - Proper Prisma migrations (data-safe) Changed: - Default AI: OpenAI → Groq - Project renamed: TotalRecall → DearDiary - Strict anti-hallucination prompt - Docker uses prisma migrate deploy (non-destructive)
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# Android App
|
||||
|
||||
Native Android app using Kotlin and Jetpack Compose that connects to the same TotalRecall API.
|
||||
Native Android app using Kotlin and Jetpack Compose that connects to the same DearDiary API.
|
||||
|
||||
## Requirements
|
||||
|
||||
@@ -49,7 +49,7 @@ buildConfigField("String", "API_BASE_URL", "\"http://your-server:3000/api/v1/\""
|
||||
|
||||
```
|
||||
android/
|
||||
├── app/src/main/java/com/totalrecall/
|
||||
├── app/src/main/java/com/deardiary/
|
||||
│ ├── api/ # API client
|
||||
│ ├── model/ # Data models
|
||||
│ ├── repository/ # Repository pattern
|
||||
|
||||
@@ -9,14 +9,14 @@ import androidx.compose.material3.MaterialTheme
|
||||
import androidx.compose.material3.Surface
|
||||
import androidx.compose.ui.Modifier
|
||||
import com.deardiary.ui.AppNavigation
|
||||
import com.deardiary.ui.TotalRecallTheme
|
||||
import com.deardiary.ui.DearDiaryTheme
|
||||
|
||||
class MainActivity : ComponentActivity() {
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
enableEdgeToEdge()
|
||||
setContent {
|
||||
TotalRecallTheme {
|
||||
DearDiaryTheme {
|
||||
Surface(
|
||||
modifier = Modifier.fillMaxSize(),
|
||||
color = MaterialTheme.colorScheme.background
|
||||
|
||||
@@ -8,7 +8,7 @@ import androidx.datastore.preferences.core.stringPreferencesKey
|
||||
import androidx.datastore.preferences.preferencesDataStore
|
||||
import com.deardiary.api.*
|
||||
|
||||
private val Context.dataStore: DataStore<Preferences> by preferencesDataStore(name = "totalrecall")
|
||||
private val Context.dataStore: DataStore<Preferences> by preferencesDataStore(name = "deardiary")
|
||||
|
||||
class Repository(context: Context, private val baseUrl: String) {
|
||||
private val api = ApiClient(baseUrl)
|
||||
|
||||
@@ -18,7 +18,7 @@ private val DarkColorScheme = darkColorScheme(
|
||||
)
|
||||
|
||||
@Composable
|
||||
fun TotalRecallTheme(
|
||||
fun DearDiaryTheme(
|
||||
content: @Composable () -> Unit
|
||||
) {
|
||||
MaterialTheme(
|
||||
|
||||
@@ -36,7 +36,7 @@ fun AuthScreen(
|
||||
verticalArrangement = Arrangement.Center
|
||||
) {
|
||||
Text(
|
||||
text = "TotalRecall",
|
||||
text = "DearDiary",
|
||||
style = MaterialTheme.typography.headlineLarge,
|
||||
color = MaterialTheme.colorScheme.primary
|
||||
)
|
||||
|
||||
@@ -14,5 +14,5 @@ dependencyResolutionManagement {
|
||||
}
|
||||
}
|
||||
|
||||
rootProject.name = "TotalRecall"
|
||||
rootProject.name = "DearDiary"
|
||||
include(":app")
|
||||
|
||||
Reference in New Issue
Block a user