MCPcopy Index your code
hub / github.com/ChessCom/android-chessclock

github.com/ChessCom/android-chessclock @1.2.2-28

Chat with this repo
repository ↗ · DeepWiki ↗ · release 1.2.2-28 ↗ · + Follow
584 symbols 1,455 edges 42 files 172 documented · 29%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Chess.com Chess Clock

Android version of chess clock mobile app.

Get it on Google Play Get it on F-Droid

Prerequisites

Import the project in Android Studio

  • Open Android Studio.
  • Choose Import project.
  • Select project folder and press ok.

Run the app via Android Studio

  • Run it using the "play" or "debug" buttons in the UI.

Run via Gradle

  • Start an emulator or connect your device
  • Run ./gradlew installDebug
  • You should have a new app called Chess Clock in the app drawer.
  • Tap it to open the app

Questions?

File an issue!

Extension points exported contracts — how you extend this code

OnTimeControlListener (Interface)
This interface must be implemented by activities that contain this fragment to allow interaction. [2 implementers]
app/src/main/java/com/chess/clock/fragments/TimeControlFragment.java
TimeControlListener (Interface)
Interface definition for a callback to be invoked when the player clock gets updated. [2 implementers]
app/src/main/java/com/chess/clock/engine/TimeControl.java
OnSettingsListener (Interface)
This interface must be implemented by activities that contain this fragment to allow interaction. [1 implementers]
app/src/main/java/com/chess/clock/fragments/TimeSettingsFragment.java
FinishCallback (Interface)
Interface definition for a callback to be invoked when timer finishes. This is a subset of Callback intended to [1 implementers]
app/src/main/java/com/chess/clock/engine/CountDownTimer.java
OnStageFinishListener (Interface)
Interface definition for a callback to be invoked when the game stage has finished. [1 implementers]
app/src/main/java/com/chess/clock/engine/Stage.java

Core symbols most depended-on inside this repo

getId
called by 21
app/src/main/java/com/chess/clock/engine/Stage.java
showView
called by 21
app/src/main/java/com/chess/clock/views/ViewUtils.java
getIntOrZero
called by 19
app/src/main/java/com/chess/clock/util/ClockUtils.java
getStageManager
called by 17
app/src/main/java/com/chess/clock/engine/TimeControl.java
getName
called by 15
app/src/main/java/com/chess/clock/engine/TimeControl.java
getTotalStages
called by 14
app/src/main/java/com/chess/clock/engine/StageManager.java
toString
called by 13
app/src/main/java/com/chess/clock/engine/TimeIncrement.java
getTimeControlPlayerOne
called by 11
app/src/main/java/com/chess/clock/engine/TimeControlWrapper.java

Shape

Method 508
Class 47
Interface 20
Enum 9

Languages

Java100%

Modules by API surface

app/src/main/java/com/chess/clock/fragments/TimeSettingsFragment.java45 symbols
app/src/main/java/com/chess/clock/engine/Stage.java39 symbols
app/src/main/java/com/chess/clock/engine/CountDownTimer.java39 symbols
app/src/main/java/com/chess/clock/activities/ClockTimersActivity.java38 symbols
app/src/main/java/com/chess/clock/fragments/TimeControlFragment.java34 symbols
app/src/main/java/com/chess/clock/engine/StageManager.java25 symbols
app/src/main/java/com/chess/clock/adapters/TimesAdapter.java25 symbols
app/src/main/java/com/chess/clock/activities/TimerSettingsActivity.java23 symbols
app/src/main/java/com/chess/clock/engine/TimeIncrement.java20 symbols
app/src/main/java/com/chess/clock/engine/TimeControlManager.java19 symbols
app/src/main/java/com/chess/clock/engine/TimeControlWrapper.java18 symbols
app/src/main/java/com/chess/clock/engine/TimeControl.java18 symbols

For agents

$ claude mcp add android-chessclock \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact