📣 v1.2 is available now!

The sleek
module registry
for Deno.

Immutable.

JavaScript modules are cached forever*.

All-in-One.

Import JavaScript modules from GitHub, NPM & more.

Self-hostable.

Deploy your own proxy in under a minute to Railway.

Open.

den.ooo's source code is available under the MIT license on GitHub.

Powerful.

den.ooo can resolve import maps, minify JavaScript files and append type headers.

*.den.ooo

Subdomains

Need a fancy domain, but don't want to spend your hard-earned money year after year? Don't worry, we've got you covered!

Terms of Use apply. A service powered by Cloudflare's generous DNS offering.

Import Module


FAQ


How long does den.ooo cache files?

den.ooo does ONLY serve JavaScript, TypeScript and WebAssembly files, all other types of files CANNOT be accessed through our service.

JavaScript, TypeScript and WebAssembly files under 100 kB are cached PERMANENTLY (as long as they don't break the law).

Files larger than 100 kB are NOT stored on our servers and instead CACHED by Cloudflare for up to 7 days.

How does den.ooo resolve import maps?

If you import a module from GitHub or GitLab and the repository has a deno.json file in the root directory, it'll go through the imports object (if specified).

How can I import a module from NPM?

Modules from NPM are served under the prefix /npm. den.ooo uses esm.sh under the hood to provide accurate type definitions for the packages.

Packages that depend on Node.js-specific features (e.g. node:fs) are NOT SUPPORTED and should be imported directly through esm.sh or the npm specifier instead.

import { func } from 'https://den.ooo/npm/package'

e.g. TypeBox...

import { Type } from 'https://den.ooo/npm/@sinclair/typebox'

...or a submodule:

import { func } from 'https://den.ooo/npm/package/submodule'

How can I import a module from GitHub?

Modules from GitHub are served under the prefix /gh.

import { func } from 'https://den.ooo/gh/user/repository/file.ts'

How can I import a module from GitLab?

Modules from GitLab are served under the prefix /gl.

import { func } from 'https://den.ooo/gl/user/repository/file.ts'

How can I import the latest version of a module?

den.ooo automatically defaults to the latest version if you specify none.

How can I import a specific version of a module?

It's as simple as adding an @ and the version tag you want after the name of the repository or package.

import { func } from 'https://den.ooo/npm/[email protected]'
import { func } from 'https://den.ooo/gh/user/[email protected]/file.ts'