Releases: refkinscallv/node-framework
Releases · refkinscallv/node-framework
1.0.5
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
[1.0.5] - 2026-02-03
Fixed
- Critical: Fixed race condition in graceful shutdown - properly await async operations
- Critical: Fixed database connection not closing properly - made
Database.close()async - Error: Fixed model loading to support subdirectories recursively
- Bug: Fixed 404 handler middleware order - now registered before error handler
- Warning: Improved error handling in hooks - critical errors now propagate properly
- Warning: Routes loading errors now throw instead of silent failure
- Warning: Enhanced socket loading error messages for better debugging
- Warning: Added null checks to
Database.getModel()andDatabase.getInstance() - Warning: Fixed server listen error handling using proper event listeners
Security
- Added prominent security warning for JWT secret configuration
- Recommended using environment variables for sensitive data
Documentation
- Updated API documentation for
Database.close()async behavior - Added breaking changes notice for async database methods
[1.0.0] - 2026-01-04
Added
- Initial release of Node.js MVC Framework
- Express.js integration with middleware support
- Socket.IO for real-time communication
- Sequelize ORM for database management
- JWT authentication utilities
- Email sending with template support (Mailer)
- File upload support with express-fileupload
- Winston logger with daily file rotation
- Application lifecycle hooks (before, after, shutdown)
- Graceful shutdown handling
- CORS configuration
- Cookie parser integration
- Error handler with API and web response modes
- Static file serving
- EJS view engine support
- Comprehensive test suite with Jest
- Code quality tools (ESLint, Prettier, Husky)
- Complete documentation (README.md, API.md)
- Example routes and configuration
Features
-
Core Modules:
- Boot: Application bootstrapper
- Database: Sequelize integration with auto model loading
- Express: Express app with middleware setup
- Logger: Winston-based logging system
- JWT: Token generation and verification
- Mailer: Email sending with EJS templates
- Hooks: Lifecycle event system
- Socket: Socket.IO integration
- Server: HTTP/HTTPS server management
- Runtime: Environment configuration
- ErrorHandler: Global error handling
-
Security:
- JWT authentication
- CORS protection
- Helmet security headers (ready to use)
- Rate limiting support (ready to use)
- Input validation with express-validator
-
Developer Experience:
- Hot reload with nodemon
- Code formatting with Prettier
- Linting with ESLint
- Pre-commit hooks with Husky
- Comprehensive test coverage
- Module aliases for clean imports
Configuration
- Centralized configuration in
app/config.js - Support for environment variables
- Flexible database settings
- Customizable CORS policies
- File upload configuration
- Socket.IO options
- Mailer settings
Documentation
- Complete README with quick start guide
- API documentation with examples
- Code comments in English
- Test examples for all core modules
Development
- Jest testing framework
- Unit and integration tests
- Test coverage reporting
- Development and production scripts
- Database migration scripts (skeleton)
[Unreleased]
Planned
- Redis caching support
- Rate limiting middleware
- API versioning
- Request validation decorators
- CLI tool for scaffolding
- Database migrations and seeders
- Session management
- OAuth integration
- Admin panel
- API documentation generator
Version History
- 1.0.5 (2026-02-03) - Bug fixes and stability improvements
- 1.0.0 (2026-01-04) - Initial release
Full Changelog: https://github.com/refkinscallv/node-framework/commits/1.0.5