Skip to content

charleypeng/opencoder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Opencoder

AI-powered code generation and development tool — mobile client for OpenCode server.

Built with Flutter, targeting all platforms (android, ios, web, macos, linux, windows).

Features

  • Connect to any OpenCode server via URL, with password auth support
  • Cloudflare Access OAuth — automatic Managed OAuth flow (RFC 9728) for servers behind Cloudflare Access, with system browser authentication and credential caching
  • Project selection on first connect — pick your workspace
  • Conversation UI — SSE-powered real-time messaging with rich message parts (text, code, diffs, tool calls, reasoning, agent details)
  • Session management — create, select, and delete conversations
  • Settings hub — browse server config, agents, commands, and providers
  • Multi-language (English / Chinese)
  • Material 3 design with light/dark system theme support
  • Multiplatform — runs on mobile, desktop, and web

Getting Started

# Install dependencies
flutter pub get

# Run on your device/emulator
flutter run

# Build for release
flutter build

# Run tests
flutter test

# Lint and format
dart analyze
dart format

Architecture

lib/
  main.dart                       # App entry point
  l10n/                           # Localization ARB files
  models/
    oauth_credential.dart         # OAuth credential model
  opencode_server/
    models.dart                   # Typed API models (null-safe)
    opencode_server_client.dart   # HTTP client for OpenCode server API
  providers/
    chat_provider.dart            # Chat state management (ChangeNotifier)
  services/
    opencode_service.dart         # OpenCode server API service layer
    cloudflare_access_service.dart # Cloudflare Access OAuth (RFC 9728)
    secure_token_storage.dart     # Token persistence (~/.opencoder/)
  pages/
    connect_page.dart             # Server URL / password entry
    project_select_page.dart      # Workspace selection after connect
    home_page.dart                # Main scaffold with drawer + chat
    chat_page.dart                # Live conversation view
    settings_page.dart            # Config, agents, commands, providers
  widgets/
    chat_message/                 # Modular message part widgets
    chat_config_bar.dart          # Chat configuration bar
    composer_status.dart          # Live composer status indicator
    diff_viewer.dart              # Session diff viewer
    message_input.dart            # Chat input bar
    model_selector.dart           # Model selector widget

Configuration

The app connects to a running opencode serve instance. See the OpenCode Server docs for server setup.

Parameter Default Description
Server URL http://127.0.0.1:4096 OpenCode server address
Password (optional) OPENCODE_SERVER_PASSWORD if set

Related

  • OpenCode — AI coding agent
  • OpenCode Server API — API reference
  • this is a project derived from CodeWalk as it is publically archived, Helio Oliveira has the copyrights, and Charley Peng has the modified codes copyright.

About

vide coding in a single hand, mobile app client for opencode

Topics

Resources

License

Unknown, Unknown licenses found

Licenses found

Unknown
LICENSE
Unknown
LICENSE-COMMERCIAL.md

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors