[Open Source] An API orchestration and management tool featuring visual API transformation and integration of APIs across multiple systems.
![[Open Source] An API orchestration and management tool featuring visual API transformation and integration of APIs across multiple systems.](https://yy123.ink/api/img/1782608153869-w32row.jpg)
1. Project Overview
FlowStone API Management Tool
Provides API orchestration capabilities, enabling visual transformation of databases into APIs and integration of APIs across multiple systems. It can be used alongside low-code frontend tools to provide APIs for frontend applications, or serve as a simple ESB.
2. Open Source License
Licensed under AGPL-3.0
3. Screenshots
Interface
API Documentation

API List

API Processing Workflow Configuration

JS Script Editor

HTTP Node Configuration

SQL Node

SQL Editing and Execution with MyBatis Syntax Support

API Testing

4. Feature Overview
FlowStone API Management Tool
Low-code API configuration can be completed through workflow orchestration, including the following features:
-
Select different databases and tables, configure query conditions, and expose them as APIs for external access.
-
Convert SQL statements into externally accessible APIs; SQL statements support MyBatis syntax.
-
Configure external system API forwarding through frontend configuration features.
-
Implement complex data processing through workflow-based orchestration.
-
Provide scheduled API invocation functionality.
-
Support JS/Groovy script execution for complex logic processing.
-
Automatically generate API documentation for reference by API consumers.
-
Extensible node types. Currently supports five node types: SQL, Table, Http, JS, and Groovy. Additional nodes can be easily extended based on this architecture, such as Kafka push nodes.
-
Data sources: Currently supports only MySQL, with support for more database types planned for future releases.
Applicable scenarios
-
When a dashboard or other frontend low-code tool is already available, but backend APIs still require custom development, this tool can be used to quickly configure and develop backend APIs.
-
For data delivery projects that require simple data extraction, processing, and the development of corresponding data APIs, this tool can replace these tasks, enabling rapid data processing and API development while improving delivery efficiency.
5. Tech Stack
Technologies Used
-
Frontend: Vue3 + Vite + ElementPlus + MonacoEditor, etc.
-
Backend: SpringBoot3 + MyBatis-Plus + liquibase + Security, etc.
Start
Development Setup
-
Frontend: Node.js 18; other versions have not been tested. Simply run npm run dev to connect to the locally running backend service for development.
-
Backend: JDK 17 or later. A MySQL server is required, and the corresponding database must be created. You can modify the database connection settings in the application-dev.yml file. After making the changes, simply start the ServiceApplication.java class. The database initialization scripts are executed automatically through liquibase.
-
Note: The default Token domain is ngq.com. By default, you need to add a hosts entry mapping ui.ngq.com to localhost on your local machine. After starting the frontend, open ui.ngq.com:3000 in your browser to access the application. Default username and password: admin/admin123
Start the existing Docker image directly
Image address: swr.cn-east-3.myhuaweicloud.com/icarus-tools/flowstone-amt:v1.0.0
The image includes MariaDB and Nginx. After starting the container, you can access the application directly through your browser for testing.
Example startup command: docker run -d -p 3001:80 swr.cn-east-3.myhuaweicloud.com/icarus-tools/flowstone-amt:v1.0.0
Note: MariaDB data will be lost when the container is destroyed. To preserve data, you need to add a volume mapping to /var/lib/mysql.
After startup, add a default hosts entry mapping ui.ngq.com to localhost.
Then open ui.ngq.com:3001 in your browser to use the application.
Default login username and password: admin/admin123