MCPcopy Index your code
hub / github.com/Aslemammad/venode

github.com/Aslemammad/venode @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
12 symbols 55 edges 13 files 0 documented · 0%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Venode

The missing child of Node.js and Deno.

Venode is a node runner that supports deno features like vendoring and http imports!

Features

  • Javascript/Typescript http imports
  • Vendor dependencies
  • Out-of-box TypeScript / JSX support
  • Built on top of Vite
  • Node >= 14

Http imports

You can easily import javascript/typescript code from the web!

// index.ts
import { assert } from "https://raw.githubusercontent.com/denoland/deno_std/main/_util/assert.ts";

console.log("here is deno assert function in node:", assert);

In your terminal:

> venode index.ts
ℹ Download https://raw.githubusercontent.com/denoland/deno_std/main/_util/assert.ts
here is deno assert function in node: [Function: assert]

Vendor

Vendoring packages is possible, so your app would be able to rely on the same code all the time!

> venode vendor index.ts
ℹ Download https://raw.githubusercontent.com/denoland/deno_std/main/_util/assert.ts
✔ To use vendored modules, specify the --import-map flag: venode --import-map=vendor/import_map.json

The vendor directory should be checked into the version control, so you (your team) use the same dependencies all the time!

Now you can specify the vendor/import_map.json as the import map in venode:

> venode index.ts --import-map=vendor/import_map.json
✔ Reading modules from vendor/import_map.json
here is deno assert function in node: [Function: assert]

Read more about vendoring in deno's release notes.

Contributing

Feel free to create issues for the bugs or features you want.

Credits

vite-node

deno

mlly

consola

undici

Core symbols most depended-on inside this repo

urlToFilename
called by 4
venode/src/file.ts
urlToFilenameWithoutHash
called by 4
venode/src/file.ts
moduleToVendorPath
called by 2
venode/src/module.ts
filenameWithExtension
called by 2
venode/src/file.ts
copyVendor
called by 2
venode/src/cli.ts
baseUrlToFilename
called by 1
venode/src/file.ts
isValidExtension
called by 1
venode/src/file.ts
resolveExtension
called by 1
venode/src/file.ts

Shape

Function 12

Languages

TypeScript100%

Modules by API surface

venode/src/file.ts6 symbols
venode/src/cli.ts4 symbols
venode/src/module.ts1 symbols
venode/src/args.ts1 symbols

For agents

$ claude mcp add venode \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact