Review
FaasJS is an open-source project that began in 2019. This year is 2024, and FaasJS has been developed for five years, going through the following stages:
- Based on Tencent Cloud’s cloud functions, it provided an easy-to-use pure Serverless framework.
- Enhanced server capabilities, allowing for direct deployment in production environments without relying on cloud vendors.
- Expanded React support and further encapsulated Ant Design, making it a complete full-stack framework.
Some forward-looking designs have now gained widespread consensus, such as:
- Standardizing interfaces with Action, abandoning traditional Restful and GraphQL. Similar to React’s server actions.
- Parameterizing UI components instead of componentization. Ant Design has essentially parameterized components in recent years.
Future
FaasJS has always pursued a simple and elegant full-stack development experience. Therefore, based on the current technological ecosystem, we plan to focus on two aspects:
- Independent deployment.
- Integration with Next.js.
Independent Deployment
Independent deployment allows FaasJS to be suitable for more scenarios and free from the restrictions of cloud vendors.
We plan to:
- Provide a Bun.server version of FaasJS Server to enhance server performance.
- No longer provide Serverless packaging and deployment functionality (users can package the independently deployed code to the platform they use as needed).
Integration with Next.js
Next.js is currently the most popular React full-stack framework and supports Server Actions.
We plan to:
- Provide a FaasJS plugin for Next.js, allowing FaasJS to be used directly in Next.js projects.
- Simplify the use of Server Actions, making asynchronous data reading and writing more convenient.
Other
- The Http plugin will no longer support parameter validation, and Zod is recommended for parameter validation.
Timeline
The 2.9 version is expected to be released this week, marking the functions that will soon be deprecated.
The 3.0 version is expected to be released this month, initially providing Bun.server and Next.js plugins.