-
Notifications
You must be signed in to change notification settings - Fork 3
feat: serverless architecture support with performance improvements #382
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- Add Support section with links for issues, email support, commercial licensing, and dev.me website - Move LICENSE section to end of README for better document flow - Retain comprehensive license usage table for clarity - Format consistent with other devmehq repositories
* feat: Add serverless architecture support without Node.js dependencies - Added lightweight serverless version (244KB minified) with resource loader pattern - Created full serverless version (40MB) with all resources bundled inline - Implemented support for multiple platforms: - AWS Lambda - Cloudflare Workers - Vercel Edge Functions - Deno Deploy - Added resource loader implementations for various storage backends (KV, S3, CDN, Redis) - Created deployment scripts for resource distribution - Added comprehensive documentation and examples for each platform - Integrated Biome.js for linting and formatting - Added tests for serverless functionality - Maintained backward compatibility with existing Node.js version BREAKING CHANGE: None - existing functionality remains unchanged * refactor: Simplify serverless architecture and use @rollup/plugin-typescript - Replaced rollup-plugin-typescript2 with @rollup/plugin-typescript - Removed redundant serverless build configurations - Kept only the lightweight serverless version (244KB minified) - Simplified file naming: removed '.lite' suffix from serverless builds - Updated documentation to reflect simplified architecture - Fixed TypeScript plugin configuration for proper declaration file generation * fix: Update serverless tests to pass correctly - Fixed BSON serialization in mock resource loader to use actual BSON library - Updated test expectations to match mock data values - Handled parsePhoneNumber errors properly for invalid input - Added console.error suppression during tests - Fixed UK number type test to handle FIXED_LINE_OR_MOBILE response All tests now pass successfully (52 passed). * fix: update test imports and biome configuration - Fixed serverless test to use parsePhoneNumberWithError instead of parsePhoneNumber - Updated biome.json with proper linting rules and globals - Cleaned up rollup configuration formatting - Fixed Node.js import protocol in src/index.ts * docs: add serverless documentation to README - Added serverless feature to features list - Created comprehensive serverless section with examples - Included examples for AWS Lambda, Cloudflare Workers, and Vercel Edge - Added resource deployment instructions - Added performance optimization tips - Referenced detailed SERVERLESS.md for more information * feat: replace @rollup/plugin-typescript with rollup-plugin-esbuild - Replaced @rollup/plugin-typescript with rollup-plugin-esbuild for faster builds - Converted rollup configs to CommonJS format to avoid bundleConfigAsCjs issues - Added esbuild dependency with proper configuration - Updated build scripts to use .cjs config files - All tests passing and builds working correctly - Removed old ESM config files * feat: improve build system with structured scripts and exports - Added separate build:main and build:serverless commands - Main build command now runs build:all (both main and serverless) - Added build:types command for TypeScript declaration generation - Added watch:serverless command for development - Added proper package.json exports field for better ESM/CJS support - Added serverless entry point at ./serverless for easier imports - Added TypeScript as dev dependency for declaration generation - All scripts now use yarn consistently - All tests passing with 52 test cases * chore: update pkgs * feat: enhance CI workflows with comprehensive GitHub job summaries - Added detailed job summaries with release numbers, tags, and build info - CI workflow now displays current version, latest tag, commit count, and branch - Release workflow shows production release information with installation instructions - Added build step to ensure artifacts are generated during CI - Enhanced release detection to show version changes and release types - Added recent tags display for better version tracking - Improved formatting with emojis and markdown for better readability Features: - 📦 Build information (version, tags, commits, branch, SHA) - 🧪 Test results status - 📁 Generated files listing - 🚀 Release information (version changes, installation commands) - 🏷️ Recent tags display (last 10 versions) * feat: improve CI/CD workflows with enhanced release tracking - Added semantic release output capture and parsing - Extract version and tag information from release process - Improved job summaries with conditional release information - Added PR information display for pull request events - Enhanced release detection with grep patterns - Added NPM and GitHub release links in summaries - Better formatting and organization of job summaries - Added workflow metadata (run ID, number, actor, event) CI Workflow: - Conditionally shows pre-release info for develop branch - Displays CI test pass status for other branches - Shows PR details when triggered by pull requests Release Workflow: - Captures semantic-release output for analysis - Extracts version and tag from successful releases - Provides direct links to NPM package and GitHub release - Clear messaging for both successful and skipped releases
github-actions bot
pushed a commit
that referenced
this pull request
Aug 28, 2025
# [1.5.0](v1.4.2...v1.5.0) (2025-08-28) ### Features * serverless architecture support with performance improvements ([#382](#382)) ([733f267](733f267)), closes [#381](#381) ### BREAKING CHANGES * None - existing functionality remains unchanged * refactor: Simplify serverless architecture and use @rollup/plugin-typescript - Replaced rollup-plugin-typescript2 with @rollup/plugin-typescript - Removed redundant serverless build configurations - Kept only the lightweight serverless version (244KB minified) - Simplified file naming: removed '.lite' suffix from serverless builds - Updated documentation to reflect simplified architecture - Fixed TypeScript plugin configuration for proper declaration file generation * fix: Update serverless tests to pass correctly - Fixed BSON serialization in mock resource loader to use actual BSON library - Updated test expectations to match mock data values - Handled parsePhoneNumber errors properly for invalid input - Added console.error suppression during tests - Fixed UK number type test to handle FIXED_LINE_OR_MOBILE response All tests now pass successfully (52 passed). * fix: update test imports and biome configuration - Fixed serverless test to use parsePhoneNumberWithError instead of parsePhoneNumber - Updated biome.json with proper linting rules and globals - Cleaned up rollup configuration formatting - Fixed Node.js import protocol in src/index.ts * docs: add serverless documentation to README - Added serverless feature to features list - Created comprehensive serverless section with examples - Included examples for AWS Lambda, Cloudflare Workers, and Vercel Edge - Added resource deployment instructions - Added performance optimization tips - Referenced detailed SERVERLESS.md for more information * feat: replace @rollup/plugin-typescript with rollup-plugin-esbuild - Replaced @rollup/plugin-typescript with rollup-plugin-esbuild for faster builds - Converted rollup configs to CommonJS format to avoid bundleConfigAsCjs issues - Added esbuild dependency with proper configuration - Updated build scripts to use .cjs config files - All tests passing and builds working correctly - Removed old ESM config files * feat: improve build system with structured scripts and exports - Added separate build:main and build:serverless commands - Main build command now runs build:all (both main and serverless) - Added build:types command for TypeScript declaration generation - Added watch:serverless command for development - Added proper package.json exports field for better ESM/CJS support - Added serverless entry point at ./serverless for easier imports - Added TypeScript as dev dependency for declaration generation - All scripts now use yarn consistently - All tests passing with 52 test cases * chore: update pkgs * feat: enhance CI workflows with comprehensive GitHub job summaries - Added detailed job summaries with release numbers, tags, and build info - CI workflow now displays current version, latest tag, commit count, and branch - Release workflow shows production release information with installation instructions - Added build step to ensure artifacts are generated during CI - Enhanced release detection to show version changes and release types - Added recent tags display for better version tracking - Improved formatting with emojis and markdown for better readability Features: - 📦 Build information (version, tags, commits, branch, SHA) - 🧪 Test results status - 📁 Generated files listing - 🚀 Release information (version changes, installation commands) - 🏷️ Recent tags display (last 10 versions) * feat: improve CI/CD workflows with enhanced release tracking - Added semantic release output capture and parsing - Extract version and tag information from release process - Improved job summaries with conditional release information - Added PR information display for pull request events - Enhanced release detection with grep patterns - Added NPM and GitHub release links in summaries - Better formatting and organization of job summaries - Added workflow metadata (run ID, number, actor, event) CI Workflow: - Conditionally shows pre-release info for develop branch - Displays CI test pass status for other branches - Shows PR details when triggered by pull requests Release Workflow: - Captures semantic-release output for analysis - Extracts version and tag from successful releases - Provides direct links to NPM package and GitHub release - Clear messaging for both successful and skipped releases * fix: correct npm package link in README badges to use scoped package name
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
🎯 Overview
This PR merges the latest developments from the
developbranch intomaster, introducing serverless architecture support, significant performance improvements, and comprehensive dependency updates.✨ Major Features
🌐 Serverless Architecture Support (#381)
src/index.serverless.ts) with optimized bundle sizeSERVERLESS.mdwith deployment guides⚡ Performance Enhancements
📝 Changes Summary
Features
Infrastructure
Dependencies
📊 Impact Analysis
🧪 Testing
__tests__/serverless.test.ts)__tests__/comprehensive.test.ts)📚 Documentation
SERVERLESS.mdguide with deployment instructionsAPI.mdwith complete API referenceREADME.mdwith clearer usage examplesexamples/serverless/directory🔍 Breaking Changes
None - This release maintains full backward compatibility while adding new opt-in features.
🚀 Migration Guide
No migration required for existing users. To use serverless features:
Import from the serverless entry point:
Follow platform-specific guides in
SERVERLESS.md✅ Checklist
🔗 Related Issues & PRs
👥 Contributors
Thanks to all contributors who made this release possible! 🙏
Ready for merge ✨ All checks passing, no conflicts detected.