Skip to content

Introduction

NextFTC is a command-based library for programming FTC robots, written in Kotlin with full support for Java. It’s designed to let you write robot code that’s expressive, reusable, and easy to reason about, without fighting the FTC SDK.

Most FTC teams write robot code as a pile of if statements inside a while (opModeIsActive()) loop. NextFTC replaces that with mechanisms (your subsystems, like an arm or intake) and commands (actions those subsystems can perform), and lets you bind them directly to gamepad input:

class Claw : Mechanism {
val servo = NextServo("clawServo")
fun open() = instant { servo.position = 0.2 }
fun close() = instant { servo.position = 0.8 }
}

NextFTC uses the Ivy library as its underlying commands framework. If you already use Ivy, using NextFTC will be easy! If you don’t, don’t worry. Many of the concepts translate cleanly from other command frameworks, including NextFTC v1.

NextFTC is written in Kotlin, but Java is treated as a first-class citizen, not an afterthought. Every public API is designed to read naturally from Java, and every code sample in these docs is shown in both languages.

Continue to Installation to add NextFTC to your robot project.