Skip to content

A port of the cache module of Deno to be used with nodejs

License

Notifications You must be signed in to change notification settings

dalcib/deno-cache

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

deno-cache

This npm package is a port of the cache module of Deno to be used with nodejs.

Cache library, compatible with deno module caching.

import {readFile} from 'fs/promises'
import  {cache} from "deno-cache";

let file = await cache("https://example.com/file.json");

const text = await fs.readFile(file.path, 'utf8');
console.log(text);

or

import {readFile} from 'fs/promises'
import  * as Cache from "deno-cache";

const url = 'https://example.com/file.js'

Cache.configure({
  directory: 'cache',
})
const deps = Cache.namespace('deps')

console.log(await deps.exists(url)) //false

const file = await deps.cache(url)

console.log(await deps.exists(url)) //true

console.log(file)
/* {
  url: URL {...}
  policy: undefined,
  ns: 'deps',
  hash: 'cdb5afb638e1edad8d0b947130a614930b0ec51ada5294dcedf120ad1518692f',
  path: './cache/deps/https/example.com/cdb5afb638e1edad8d0b947130a614930b0ec51ada5294dcedf120ad1518692f',       
  metapath: './cache/deps/https/example.com/cdb5afb638e1edad8d0b947130a614930b0ec51ada5294dcedf120ad1518692f.metadata.json',
  origin: 'fetch'
  lstat: Stats {...}
}*/

await deps.remove(abs)
console.log(await deps.exists(url)) //false

About

A port of the cache module of Deno to be used with nodejs

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published