Inside Upsource, JetBrains new web-based code browser
Company behind IntelliJ tell JAXenter about their experimental new platform thats cleverer than it looks.
Last week, the company behind Java IDE IntelliJ
(and a suite of other developer tools, including JVM language
revealed their latest project: Upsource, a web app
for browsing code repositories, and maybe more in the
The service’s format will be familiar to any
users of web-based code repositories such as GitHub and BitBucket,
allowing both current and past commits to be viewed and compared
with full syntax highlighting.
However, JetBrains are attempting to distinguish
their new project from other services with navigation via symbols
and static code analysis, achieved by incorporating a headless
version of their desktop IDE.
Evgeny Pasynkov, Upsource project lead and Oleg
Stepanov, CEO at JetBrains, told JAXenter in a joint email that
work on this “headless” version of IntelliJ began several years ago
with continuous integration server TeamCity. Further
modularisation, into a “so-called IntelliJ Platform”, furthered
this work, providing a core codebase shared between more recent
JetBrains IDEs like RubyMine and PhpStorm.
“For Upsource we went further with refactorings
to enable more features to run in headless mode – project model,
code highlighting, inspections,” they told JAXenter.
The current preview of
Upsource contains just a dozen repositories, with
no way to create a user account, but already impresses with its
polish and attention to detail. Diffs can be
viewed side-by-side, directories can be
drilled through rapidly with an OS X-style nested UI, and it’s
possible to link not only to a specific line, but a
specific section of a
In fact, it’s not difficult to imagine Upsource,
even in its first incarnation, being expanded into a full-blown
web-based IDE like CodeEnvy. Indeed, it’s described in an
blog post as a “platform”, and the pair said they
“plan to eventually add the ability to do small code changes, like
the ones required for code review and real-time
However, a full IDE implementation may be quite
some way further off: the JetBrains pair said they were not
“totally convinced” that the web experience can yet match up to
native desktop apps.
In terms of future additions, support for more
languages is in active development, while DVCS graph visualization
“is an obvious next step”, they said. “We also plan to support more
project types (currently only IntelliJ IDEA projects are supported)
– adding Gradle support is on the roadmap, for example.”
If you were hoping to get your hands on
JetBrains’ latest, though, you may be waiting a while: there are
“no particular timeframes yet” for accepting users, they say.
However, with web apps gaining in importance year on year, it’s
clear the company is playing the long game with