Tern is a stand-alone code-analysis engine for JavaScript. It is intended to be used with a code editor plugin to enhance the editor's support for intelligent JavaScript editing. Features provided are:
Tern is open-source (MIT license), written in JavaScript, and capable of running both on node.js and in the browser.
There is currently Tern support for the following editors:
Follow the links to find instructions on how to install the plugins.
There are two mailing lists for the project, a low-volume one for announcements at tern-announce, and an open one where everyone can post at tern-dev. For reporting bugs, I prefer that you use the github issue tracker.
Code contributions are welcome, preferably through pull requests.
The maintainer of the project (Marijn Haverbeke) is, in principle, available for consulting work around Tern. Commercial support contracts are also possible. Contact me for details.
The reference manual should be your first stop for figuring out how to use Tern.
If you are interested in the way the system works internally, take a look at this blog post.
14-08-2014: Version 0.7
isKeyword
and isProperty
fields to completion query JSON repsonses06-06-2014: Version 0.6.2
Small update release that fixes a crash affecting asynchronous loading of files.
06-06-2014: Version 0.6
~/.tern-config
default config filetimeout
field in requests, to limit their running timenpm
10-10-2013: Version 0.5
condense
tool, tests added.this
in non-method calls.Array.<content>
and Object.<key,value>
-style types in
the doc_comment
plugin.12-08-2013: Version 0.4
buffer
and timers
modules to node plugin.bin/condense
tool.
10-07-2013: Version 0.3
this
handling.node_exports
query type added.loadEagerly
/dontLoad
settings.11-06-2013: Version 0.2
doc_comment
).03-05-2013: Version 0.1
First numbered release. Should be considered beta status, but useable enough to test.