UNPKG

@pulzar/core

Version:

Next-generation Node.js framework for ultra-fast web applications with zero-reflection DI, GraphQL, WebSockets, events, and edge runtime support

75 lines 3.07 kB
/** * Pulzar Edge Runtime * * High-performance edge computing solution for modern web applications. * Supports Cloudflare Workers, Vercel Edge Functions, Deno Deploy, and Netlify Edge Functions. * * Features: * - Zero-cold-start with optimized bundling * - WebSocket support where available * - Automatic compression and optimization * - Type-safe edge adapters * - Platform-specific polyfills * - Real-time bundle analysis * - Hot module replacement in development */ // Import functions and types for the edge object import { PLATFORM_CAPABILITIES, getPlatformCapabilities, createEdgeError, } from "./types"; import { createEdgeAdapter, createEdgeHandler } from "./adapter"; import { createEdgeBundler, bundleForEdge } from "./bundler"; import { edgePlugin, createEdgeConfig } from "./vite-adapter"; // Constants and utilities export { PLATFORM_CAPABILITIES, DEFAULT_ADAPTER_OPTIONS, COMMON_MIME_TYPES, EDGE_RUNTIME_VERSION, getPlatformCapabilities, createEdgeError, isWebSocketUpgrade, extractRequestMetadata, normalizeHeaders, } from "./types"; // Edge adapters export { BaseEdgeAdapter, CloudflareAdapter, VercelAdapter, DenoAdapter, NetlifyAdapter, createEdgeAdapter, createEdgeHandler, } from "./adapter"; // Fastify edge adapter (legacy compatibility) export { FastifyEdgeAdapter, createFastifyEdgeAdapter, } from "./fastify-adapter"; export { edgePlugin, createEdgeConfig, DEFAULT_NODE_EXTERNALS, PLATFORM_CONFIGS, getPlatformPolyfills, getPlatformWrapper, } from "./vite-adapter"; export { EdgeBundler, createEdgeBundler, bundleForEdge } from "./bundler"; // Polyfills and utilities export { applyPlatformPolyfills, isEdgeEnvironment, getPlatformFeatures, validateEdgeEnvironment, } from "./polyfills"; // Re-export default as namespace for convenience import * as EdgeRuntime from "./types"; export { EdgeRuntime }; /** * Quick setup for common use cases */ export const edge = { // Adapter factory createAdapter: createEdgeAdapter, createHandler: createEdgeHandler, // Bundler factory createBundler: createEdgeBundler, bundle: bundleForEdge, // Vite plugin vitePlugin: edgePlugin, viteConfig: createEdgeConfig, // Platform validation validatePlatform: (platform) => { return Object.keys(PLATFORM_CAPABILITIES).includes(platform); }, // Environment detection detectPlatform: () => { if (typeof navigator !== "undefined" && navigator.userAgent?.includes("Cloudflare-Workers")) { return "cloudflare"; } if (typeof process?.env?.VERCEL !== "undefined") { return "vercel"; } if (typeof globalThis.Deno !== "undefined") { return "deno"; } if (typeof process?.env?.NETLIFY !== "undefined") { return "netlify"; } return null; }, // Platform capabilities getCapabilities: getPlatformCapabilities, // Error handling createError: createEdgeError, }; // Default export for convenience export default edge; //# sourceMappingURL=index.js.map