Features of Ceylon IDE

Ceylon IDE is a full-featured development environment based on the Eclipse platform. It's of central importance to the Ceylon project, and we're continuously improving it.
With the Ceylon language and IDE, you'll be much more productive. Here's a quick list of just some of what you get.

Intelligent proposals

The compiler and IDE work together to find bugs in your code and propose solutions: the editor features quick fixes for errors, and oodles of contextual quick assists.


The IDE features Rename, Inline, Extract Function, Extract Value, Extract Parameter, Change Parameter List, Collect Parameters, Move Out, Make Receiver, Enter Import Alias, Invert Boolean, Move To Unit, and Move To New Unit refactorings. Even better, it fully integrates with Eclipse's tooling for moving and copying files, for renaming and copying packages, and for renaming Java program elements.

You can rename a declaration using the editor's inline "linked mode".

The refactoring wizards provide previews of changes before applying them.


We haven't forgotten everyone's favorite feature of an IDE: contextual autocompletion. Autocompletion will even find modules for you, in Herd, or elsewhere!

Autocompletion even supports "linked mode" argument proposals.

There's even IntelliJ-style "chain completion".

Finding and searching

With Find References, Find Assignments, Find Refinements, Find Subtypes, and the Ceylon Search page, you shouldn't be short of ways to find stuff.

There's even the Quick Find References popup control.

To understand and maintain a large codebase, there's nothing more important than easy navigation between code, and easy access to its API documentation. Ceylon IDE provides hyperlink-style "go to" navigation to any referenced declaration, package, or module, including Java declarations.

The Open Ceylon Declaration dialog is the quickest way to get to a toplevel declaration from wherever you are.

Hover puts the documentation for any program element right at your pointer. Hover over a declaration and see its API documentation, dynamically compiled. Hover over a value or function keyword, and see the inferred type.

The popup outline and type hierarchy controls provide two extra useful ways to navigate your code.

Syntax highlighting, outlining, and structural compare

The editor features configurable syntax highlighting, occurrence marking, search result highlighting, a helpful outline view, and code folding. The editor integrates with Eclipse's merge viewer for team-based development.

There's also an awesome Type Hierarchy view.

Incremental compilation and interactive error reporting

Ceylon IDE typechecks your code as you type, immediately highlighting any errors, and incrementally compiles your changes when you save a file. A Ceylon project may be configured to build for the JVM, for JavaScript, or both. The IDE even supports cross-project builds and inter-compilation with native Java code.

The compiler may be configured within the IDE via the project properties page, or new project wizard.

The Module Repositories page lets us specify the module repositories where Ceylon will look for dependencies. The settings are persisted in a configuration file also understood by the command line toolset.


The IDE provides wizards for creating new Ceylon projects, modules, packages, and source files. There's even a wizard for exporting a project module to a module repository.

Project and repository explorers

The Ceylon perspective offers the Ceylon Project Explorer and Ceylon Repository Explorer. The Repository Explorer lets you quickly view all the modules available in Ceylon Herd, or in whatever other module repositories you select, together with their documentation and version information.

Run, test, and debug

You can run and debug your Ceylon projects on Ceylon's modular runtime for the JVM, or on Node.js, directly from the IDE.

You can even run tests written with the Ceylon SDK's testing module.

Editor and code formatter

Ceylon IDE integrates Ceylon Formatter, a high-quality code formatter, alongside the lightweight Correct Indentation and Format Block commands.

Of course, the editor has so much more offer: paste-with-imports, autoindentation, autoclosing, Clean Imports, Reveal Inferred Types, the awesome Terminate Statement command, configurable keyboard accelerators, and much more!


Of course, with so much functionality on offer, we had to provide some switches and toggles to let you get it working just the way you prefer.

Get Ceylon IDE from the update site.