Android-first · AI-powered

Turn raw classroom material into study-ready assets.

NodeStudy is an AI study companion that scans notes, imports images or PDFs, records lectures, and converts it all into editable notes, flashcards, and quizzes — so you spend less time rewriting and more time learning.

12h
key cache refresh
5+
input sources
100%
on-device translation

Overview

Built to shrink the gap between class and revision.

NodeStudy reduces the time students spend rewriting notes and building revision material by hand. It generates a study set from raw classroom content, lets you refine it, and keeps the result available for later review, sync, or sharing.

From whiteboard photos to lecture audio and PDF handouts, the app routes your source through a Gemini-backed generation pipeline and returns structured, editable learning assets — with confidence signals that point out where a manual pass is worth it.

Core Features

Everything you capture, instantly learnable.

📷

Camera capture

Snap whiteboards, notebooks, slides, and handwritten notes straight from the app.

🖼️

Image import

Pull images from the gallery or file picker to feed the generation pipeline.

🎙️

Audio capture

Record lectures in-app or import audio files for transcription and study sets.

📄

PDF import

Bring in handouts, chapters, and study guides as source material.

📝

Text & file import

Paste text or import generic text-based files from supported sources.

Generated assets

Produce study notes, summaries, key points, flashcards, and quiz questions.

📊

Confidence signals

See which outputs are solid and which need a quick manual review pass.

✏️

Edit & review

In-app editing, flashcard review, and a session chat to refine each set.

🌐

Translation

Translate study sets on-device with ML Kit — no round-trip to a server.

☁️

Cloud sync

Firebase auth, Firestore sync, and storage-backed persistence keep sets safe.

👥

Study Circle

Share study sets, manage themes, and check for in-app updates.

🔔

Daily reminders

Local notifications nudge you toward regular, consistent study sessions.

Product Flow

From capture to confident review in five steps.

  1. 01

    Capture or import

    Collect study material from camera, gallery, audio, PDF, or pasted text.

  2. 02

    Generate

    Send the source through the Gemini-backed generation pipeline.

  3. 03

    Review

    Inspect the generated notes, flashcards, and quiz items with confidence cues.

  4. 04

    Refine

    Edit or translate the study set until it fits how you learn best.

  5. 05

    Save & share

    Store locally, sync to Firebase, or share via Study Circle.

Runtime Behavior

Resilient by design, even before setup is complete.

Remote key feed

Gemini keys load from the hosted api_keys.json, cache locally in SharedPreferences, and refresh on a 12-hour interval.

Key precedence

The app tries GEMINI_API_KEY, then _2, _3, and _4 in order until one works.

Graceful fallback

If the remote fetch fails, NodeStudy can still fall back to a local .env file when present.

Demo services

Without a production key, the app falls back to local demo services so the UI stays fully usable during setup.

Feedback mail

The Settings feedback form uses hardcoded EmailJS values — no .env needed for support mail.

Firebase config

Initialized from committed Android assets: google-services.json and firebase_options.dart.

Technology Stack

A focused, modern mobile toolkit.

ClientFlutterCross-platform mobile client
BackendFirebaseAuth · Firestore · Storage
AIGeminiGeneration & chat responses
StateProviderApplication state management
MLML KitOn-device translation
DevicePluginsCamera · File Picker · Record · Local Notifications

Repository Layout

Where everything lives.

  • README.md — project overview and setup guide
  • README_API_KEYS.md — remote Gemini key feed notes
  • DESIGN.md — product and UI direction
  • pubspec.yaml / pubspec.lock — Flutter config & deps
  • .github/workflows/ — release & key publishing automation
  • android/ — host project, Gradle, Firebase, launcher assets
  • firebase/ — rules and backend configuration
  • lib/main.dart — bootstrap & prod/demo selection
  • lib/app.dart — app shell and routes
  • lib/{config,models,screens,services,state,theme}
  • test/ — widget and service tests

Setup

Up and running in five steps.

  1. 1

    Install Flutter and confirm it is on your path.

  2. 2

    Run flutter pub get to install dependencies.

  3. 3

    Ensure api_keys.json holds at least one Gemini key.

  4. 4

    Run the app — production keys enable Firebase & Gemini.

  5. 5

    Feedback mail works out of the box via EmailJS.

Start turning lectures into learnable sets.

NodeStudy is open for setup on Android. Capture once, study anywhere.

Read the setup guide