Comments (2)
Hey, so the next major hurdle for achieving feature parity with Express would be the routes / middlewares system.
Currently, HyperExpress takes a different approach from Express.js where Middlewares are executed in a hierarchical manner (Most shallow path to most deep) and Handlers are not middlewares and cannot be yielded. This system can be re-written to match Express.js but would be a major breaking change and likely make existing applications built on top of hyper-express
ineligible for uprade unless major work to validate all routes of an existing application were done since the fundamental execution order changes.
Furthermore, there are other minor / associated features which would need to be added although those are not a big issue and not major blockers.
I initially wrote and actively use hyper-express
within my own products and a lot of our earlier user and adopters have been around since v4 since which most major changes have not been extremely breaking but rather property renames, removals, schematic changes etc etc.
With the above in mind, the project has attained its identity as "similar" / "familiar" to Express rather than drop-in replacement.
I have also just been extremely busy with my business hence have not had too much time to put towards the next major version.
I think the first step would be to create a discussion which is strictly maintained to contain missing features or incompatibilities between hyper-express
and express
as mentioned in #218 (reply in thread)
From here onwards, the community can gradually begin to plan and make PRs which can reduce the gap while ideally prioritizing less / non-breaking features first and lower difficulty vs. the more breaking and relatively complex changes such as re-writing the routing system.
I am not sure If you already have a discussion for the above or would like me to make one but I would be glad to provide as much support as I can within limited available time.
from hyper-express.
You can move this issue to discussions if you like. That would be great.
Would be nice too, if you could at least break down the list of tasks roughly to the best of your knowledge to get the ball rolling. I've enhanced the list from what you wrote above.
Thanks.
Scott
from hyper-express.
Related Issues (20)
- Implement custom global error middleware HOT 1
- Error: Cannot find module './uws_linux_x64_127.node' in Node 22 HOT 2
- piping crash in 6.16.1 HOT 3
- SSEventStream - EventSource's response has a MIME type ("text/plain") that is not "text/event-stream" HOT 2
- crashes when using it with pkg HOT 1
- can't serve port 80 hyper-express reverse proxy nginx HOT 1
- Error: HyperExpress: Server/Router.use() -> Wildcard "*" & ":parameter" prefixed paths are not allowed when binding middlewares or routers using this method. HOT 1
- Throwing error in Middleware causes app to crash HOT 5
- How to read base64 image from multipart HOT 1
- Specify QoS for MQTT syntax HOT 2
- Install hyper-express with PNPM behind a corporate firewall HOT 1
- middleware not executing after request is complete HOT 2
- Path parameter regexp HOT 2
- How to integrate with supertest HOT 1
- uWebSockets.js Adds Node.js 22 support HOT 4
- This version of ยตWS is not compatible with your Node.js build HOT 2
- Is it possible to use hyper-express with Bun? HOT 1
- Why duplicate routes are not allowed? HOT 2
- Router Spread Middleware Execution Order Inconsistency
- Http version 1.0 not supported HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from hyper-express.