OctoLinker is a browser extension for GitHub, that turns language-specific statements like
import into links.
|const parse = require('url');|
|const json = require('micro');|
|const pMap = require('p-map');|
|const go = require('|
|const java = require('./java');|
|const ping = require('./ping');|
|const registries = require('./registries');|
|const log = require('./utils/log');|
|const cache = require('./utils/cache');|
|const tracking = require('./utils/tracking');|
Check out our live demo, right in your browser, no install required!
OctoLinker reads the source code you're currently viewing straight from the browser or, in some cases, using the GitHub API.
No source code will ever be sent to a server! Your source code stays in your browser.
Based on the file type, OctoLinker invokes a plugin which then executes a regular expression on the source code to find import statements.
Relative file references are resolved through the GitHub tree API in your browser. External dependencies are resolved using the OctoLinker API.
Only the name of a dependency along with the registry type is sent to this service.
Navigate through GitHub repositories faster than ever before with a single click. OctoLinker leverages the GitHub API to fetch a tree structure of the repository to link relative files.
Never leave GitHub to manually search for a dependency. OctoLinker links dependencies defined in files like
requirements.txt with their related GitHub project page.
Forgot the signature of core library method? No worries, OctoLinker links to API docs such as nodejs.org/en/docs docs.python.org docs.oracle.com or rubygems.org.
Code review made easy. OctoLinker links dependencies and files on a Pull Request so you can focus on the work that matters – code review.
If OctoLinker is able to infer a file type from code snippet in a Markdown file, Issue or Pull Request comment, it will insert links as well.
In order to support all mentioned features on a private repository, OctoLinker requires a GitHub access token. If that happens OctoLinker will prompt a notification. Your GitHub token will be never send to a server! Your token stays in your browser.
Octo Linker links up dependencies, require() & ES2015 imports across packages on GitHub https://t.co/vhoZyyINi2 👌 pic.twitter.com/LcB7uMoVPI— Addy Osmani (@addyosmani)December 30, 2015
OctoLinker is probably the most valuable tool I've added to my developer belt in the last five years. Lowering friction to read open source code gives me superpowers https://t.co/7eE7pNopRN— Josh Duff (@TehShrike) October 8, 2018
Octolinker is crucial improvement, being able to jump around files without searching for them makes analysing code and dependencies a breeze— Pete Nykänen (@pete_tnt)March 16, 2019
Navigating and understanding a new codebase becomes so easy. Thanks @OctoLinker for this! ❤— Nikhita Raghunath (@TheNikhita) February 16, 2017
Vercel enables OctoLinker on demand horizontal scaling across many regions in a serverless environment. I worked with other cloud vendors before, but none of them was nearly as easy to use as Vercel. It’s a really impressive and satisfying developer experience!
We leverage Memetria high performance as a caching layer to reduce network calls to third-party providers such as
rubygems.org and more. RedisGreen supports OctoLinker with five dedicated servers and high availability in five regions.