This repository has been archived on 2026-06-02. You can view files and clone it. You cannot open issues or pull requests or push a commit.
bvandeusen 3c3055d536 Improve project-task integration and sub-task support
- TasksApi: add getSubTasks(parentId) + parentId param to create()
- TasksRepository: expose new API methods
- app.dart: invalidate projectsProvider + projectMilestonesProvider
  after quick capture creates a task; taskNew route reads ?projectId=
  query param and passes as initialProjectId to TaskEditScreen
- project_list_screen.dart: _AddTaskRow passes projectId query param
  so the task editor pre-fills the project on navigation
- task_edit_screen.dart: fully rewritten with initialProjectId support,
  sub-task fetching/creation, and _SubTasksSection widget

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-02 21:59:58 -05:00
2026-02-28 21:28:53 -05:00
2026-02-28 21:28:53 -05:00
2026-02-28 21:28:53 -05:00
2026-02-28 21:28:53 -05:00

Fabled — Android App

Native Android client for FabledAssistant, a self-hosted AI productivity assistant.

Features

  • Notes — create, edit, and browse markdown notes
  • Tasks — manage tasks with status (To Do / In Progress / Done) and priority
  • Chat — streaming AI conversations with real-time SSE response display
  • Quick Capture — FAB shortcut to create a note or task from anywhere
  • OAuth / SSO — authenticates via your server's configured OIDC provider; local username/password login also supported if enabled on the server
  • Session persistence — stays logged in across app restarts via a persistent cookie jar
  • Home screen widget — tap to open the chat screen directly from the Android launcher

Requirements

Getting Started

Prerequisites

  • Flutter 3.x SDK
  • Android Studio (for Android SDK and emulator)
  • JDK 17

Setup

flutter pub get
flutter run

On first launch, enter your FabledAssistant server URL (e.g. https://fabled.example.com) and sign in.

Architecture

lib/
├── main.dart                  # Entry point; resolves async deps before runApp
├── app.dart                   # GoRouter + auth redirect guards + shell nav
├── core/
│   ├── constants.dart         # Route name constants
│   └── exceptions.dart        # AppException hierarchy
├── data/
│   ├── api/                   # Dio HTTP layer (one class per resource)
│   ├── models/                # Plain Dart models with fromJson/toJson
│   └── repositories/          # Thin wrappers over API classes
└── providers/                 # Riverpod providers (state + dependency wiring)
    screens/                   # Flutter UI screens

Key packages: flutter_riverpod, go_router, dio + cookie_jar, flutter_inappwebview, flutter_markdown

Building a Release APK

flutter build apk --release

The signed APK will be at build/app/outputs/flutter-apk/app-release.apk.

S
Description
mobile app to connect to the fabled assistant
Readme 2.6 MiB
Languages
Dart 87.9%
C++ 5.7%
CMake 4.2%
Swift 0.7%
Shell 0.5%
Other 1%