Description
Apache APISIX is a dynamic, real-time, high-performance API gateway.
It provides rich traffic management features such as load balancing, dynamic upstream, canary release, circuit breaking, authentication, observability, and more.
Page: https://apisix.apache.org/
Github: https://github.com/apache/apisix
Project title: Refactoring Dashboard plugin orchestration
Background:
Apache APISIX Dashboard currently supports plugin orchestration, which supports designing the execution flow of plugins through a visual flow editor and finally generating Lua code that can be executed by Apache APISIX.
This feature currently has poor usability, inability to automatically replenish default configuration fields, poor support for multi-stage plugins, poor usability of generated code, etc.
Task:
Refactor the frontend and backend modules to improve the experience of using the visual editor and the quality of code generation. Code generators written in Lua need to be ported to other languages to achieve better code readability and maintainability and reduce black boxes.
Skills:
- Golang
- JavaScript / TypeScript
- Lua
Difficulty: Hard
Project size: ~350 hours.
Potential Mentor: Zeping Bai, bzp2010@apache.org, https://github.com/bzp2010