RepoPilot

appflowy-io / appflowy

Search appflowy-io/appflowy

GitHub

Code

Understand appflowy-io/appflowy's source layout and find a starting point for your task using the saved repository evidence.

Detailed import-graph metrics were not captured for this report.

Where to start reading

  1. Repository root
  2. Suggested starting pointAI
  3. Suggested starting pointAI
  4. Suggested starting pointAI
  5. Suggested starting pointAI
  6. Suggested starting pointAI
  7. Suggested starting pointAI

Find files for a task

AI

Add a new AI feature or prompt template

  • Register new prompt in the asset data file
  • Update analysis_options.yaml if new linter rules are needed

Add support for a new platform or device configuration

  • Add platform-specific manifest or metadata
  • Configure native bindings if platform APIs are needed
  • Update Gradle build configuration for new dependencies
  • Add CI/CD targets for the new platform

Update UI assets or theming

  • Register new resources in icon or image manifest
  • Update Dart linting rules if visual code style changed

Add or update tests

  • File-name match for this task.
  • File-name match for this task.
  • File-name match for this task.

Change build or automation

  • File-name match for this task.
  • File-name match for this task.
  • File-name match for this task.

File paths come from a snapshot of up to 500 captured paths; an omitted file may still exist.

  • No public or runtime entry point can be identified from the captured paths.

Code quality and hotspots

Code sample: the 15 largest source files

Branch points
2 per file on average
Code issues
0 errors, 13 warnings
Tests
present · 0.49 test files per source file
Largest file
954 lines
Hotspot load
0 high-risk files

Configuration status

CI/CD Pipeline — configured

Provider: GitHub Actions

11 GitHub Actions workflows

Test Suite — detected

330 test files detected

Where: frontend/appflowy_flutter/test/bloc_test/board_test · frontend/appflowy_flutter/assets/test/images · frontend/appflowy_flutter/assets/test/workspaces

Test files: 0.49 test files per source fileheuristic

330 test files / 675 source files. This is a file-count ratio, not real line coverage — set up Codecov for authoritative numbers.

Dependency Scanning — no config detected

No Dependabot / Renovate / Snyk / Trivy / CodeQL config found. Enable Dependabot or Renovate.

Top hotspots

Files edited often AND hard to reason about. Churn = recent commit frequency, Complexity = branches and nesting, Risk = both combined. These are the highest-leverage targets for refactoring or testing.

sql_test/chat_message_test.rs
Churn: 0 (0 commits/180d)Complexity: 12Risk: 0
local_test/event_test.rs
Churn: 0 (0 commits/180d)Complexity: 3Risk: 0

All hotspots

Files that change often and are complex tend to accumulate more bugs

AI-suggested anti-patterns

AI · unverified

Pattern-matches from the file structure and dependencies — useful as hypotheses, but not grounded in actual source. For real findings see Code Scanning above.

Hardcoded AI prompts in assets

Medium

Embedding prompts as static JSON requires app updates to modify; inflexible for experimentation and A/B testing.

frontend/appflowy_flutter/assets/built_in_prompts.json

Monorepo without clear dependency boundaries

Medium

Lack of clear module separation increases coupling risk; frontend and backend changes can conflict during builds.

frontend/appflowy_flutter and (inferred) backend root

Native binding via raw JNI

Low

Direct JNI usage is error-prone and difficult to maintain; no abstraction layer for platform-specific logic.

frontend/appflowy_flutter/android/app/src/main/Classes/binding.h

AI-suggested bottlenecks

AI · unverified

Speculation from file structure, not profiling data. Validate against real metrics before acting on these.

Build Infrastructure Bottleneck

Single CI/CD orchestration point; failure here blocks all platform releases (Android, iOS, Web).

codemagic.yaml (CI/CD pipeline)

Service Architecture Bottleneck

All collaborative edits and AI requests funnel through backend; high contention point under load.

Rust Backend (inferred from Makefile.toml)

Startup Performance Bottleneck

Prompts loaded at app startup; large prompt library could delay initial UI render.

built_in_prompts.json asset loading

IPC Overhead Bottleneck

Serialization/deserialization overhead on every backend request; potential latency bottleneck for real-time collaboration.

Flutter Frontend (platform channel communication)

Code metrics

Static analysis on sampled source files (up to 15 files).

Avg Cyclomatic Complexity2

Counts if/for/while/switch/catch/ternary branches

Errors / Warnings0 / 13

Secrets, empty catches, console.log, var usage, long lines