{"library":"src-to-module","title":"src-to-module","type":"library","description":"Converts source code to a reusable Node.js module at runtime. Version 2.0.28 (stable) is actively maintained. Supports synchronous and asynchronous loading from files or plain text, with built-in transpiler registration for JavaScript and JSON. Unlike vm.runInNewContext, it provides module caching, last-modified checks, and a familiar Node.js module environment. Key differentiator: full control over transpilation pipeline and context per loaded module, enabling custom transpilers (e.g., Babel, TypeScript) and virtual file paths with cache expiry.","language":"javascript","status":"active","last_verified":"Fri May 01","install":{"commands":["npm install src-to-module"],"cli":null},"imports":["import { requireSync } from 'src-to-module'","import { runAsync } from 'src-to-module'","import type { Transpiler } from 'src-to-module'","import { enableLastModifiedCheck } from 'src-to-module'; enableLastModifiedCheck(false)"],"auth":{"required":false,"env_vars":[]},"links":{"homepage":null,"github":"https://github.com/kennysng/src-to-module","docs":null,"changelog":null,"pypi":null,"npm":"https://www.npmjs.com/package/src-to-module","openapi_spec":null,"status_page":null,"smithery":null},"quickstart":{"code":"import { requireSync, runSync } from 'src-to-module';\n\n// Load a module from file with context\nconst result = requireSync('/path/to/module.js', { apiKey: process.env.API_KEY ?? '' });\n\n// Run code from string (virtual filepath)\nconst code = `module.exports = { sum: (a, b) => a + b }`;\nconst mod = runSync(code, '/virtual/module.js');\nconsole.log(mod.sum(2, 3)); // 5","lang":"typescript","description":"Shows synchronous loading from file and from plain text string using src-to-module.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}