Skip to content

Flutter app that reads an Outline wiki, extracts knowledge graphs via Claude API, and teaches via SM-2 spaced repetition with visual mind maps

Notifications You must be signed in to change notification settings

enspyrco/engram

Repository files navigation

Engram

A Flutter app that reads an Outline wiki, uses the Claude API to extract a knowledge graph (concepts, relationships, and quiz items), and teaches it back via SM-2 spaced repetition. A visual mind map "lights up" as you learn.

Features

  • Knowledge extraction — Point at an Outline wiki collection, Claude extracts concepts, relationships, and quiz questions automatically
  • Spaced repetition — SM-2 algorithm schedules reviews at optimal intervals
  • Mind map visualization — Force-directed graph with mastery coloring (grey > red > amber > green), glow effects on mastered nodes
  • Cooperative game — Guardian system for concept clusters, team goals, glory board leaderboard, repair missions with bonus scoring
  • Social — Wiki-URL-based friend discovery, challenges (test a friend on your mastered cards), nudges (remind about overdue reviews)
  • Network health — Composite health scoring with catastrophe tiers (healthy > brownout > cascade > fracture > collapse)

Architecture

  • Flutter + Riverpod (manual, no codegen) for state management
  • Firebase Auth (Google + Apple Sign-In) for authentication
  • Cloud Firestore for storage and sync (migrating to local-first — see docs/LOCAL_FIRST.md)
  • Claude API (anthropic_sdk_dart) for concept extraction
  • Custom ForceDirectedGraphWidget with CustomPainter + Fruchterman-Reingold layout

See CLAUDE.md for detailed architecture documentation.

Development

flutter pub get
flutter analyze
flutter test
flutter run -d macos

Design Documents

  • docs/SYNAPTIC_WEB_GAME_DESIGN.md — Creative vision for the cooperative network game
  • docs/GRAPH_STATE_MANAGEMENT.md — Analysis of graph-based state management options
  • docs/LOCAL_FIRST.md — Local-first architecture plan
  • docs/CRDT_SYNC_ARCHITECTURE.md — CRDT sync design for multi-device consistency

About

Flutter app that reads an Outline wiki, extracts knowledge graphs via Claude API, and teaches via SM-2 spaced repetition with visual mind maps

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •