Skip to content
Go to file

⚠️ is now OUTDATED, it's recommended to use Eclipse Wild Web Developer instead

Build Status Eclipse install

Goal of is to provide the capability to consume TypeScript language Service with tsserver in a Java context. Any Java IDE like Eclipse, Netbeans, WebStorm could consume

TypeScript IDE

On top of core module provides an Eclipse IDE integration with TypeScript.

JSDT TypeScript Completion

TypeScript IDE provides the following features:

To install TypeScript IDE, please start to read Getting Started section.

This integration looks like; JSDT was extended (completion, hyperlink, hover, etc) to consumme the official TypeScript server tsserver.

Core Features

Once that TypeScript Service client which consumes tsserver is created with Java using core module, you can use it in any Java context (Eclipse, Netbeans, etc). provides the capability to use TypeScript language Service with tsserver with SWT :

  • contentassist which uses If you start the SWT TypeScriptEditor demo, you will see contentassist available for JavaScript :

SWT TypeScript Editor

Similar Project


See which provides the capability to consume tsserver with Java. So why developping an another tsclient?

  • java-tsserver requires Java8. Eclipse IDE uses Java7.
  • Uses tsclient API instead of using TypeScript Language Service API.


Those plugins provide a lot of advanced features for TypeScript (debug, refactoring, etc) compare to So why developping an another Eclipse Plugins?

Here my idea:

  • use JSDT JavaScript Editor instead of developping custom editor (DONE for completion, hyperlink, hover).
  • use WTP Validator instead of Builder for validation (DONE).
  • consume "official" tsserver instead of consumming custom bridge language service like Eclipse TypeScript/TypeEcs have done:
  • user will able to update the tsserver just with "npm install typescript".
  • other editors consumes "tsserver", so there are a big community which uses "tsserver":
  • use async "event" of tsserver to improve performance for validation for instance.
  • use async completion, etc
You can’t perform that action at this time.