diff --git a/packages/app/src/debug/components/api/index.jsx b/packages/app/src/debug/components/api/index.jsx
new file mode 100644
index 00000000..2baa60d6
--- /dev/null
+++ b/packages/app/src/debug/components/api/index.jsx
@@ -0,0 +1,166 @@
+import React from "react"
+import * as antd from "antd"
+
+
+const EndpointRequester = (props) => {
+ const { endpoint, method, request } = props
+
+ const [bodyParams, setBodyParams] = React.useState([])
+ const [queryParams, setQueryParams] = React.useState([])
+
+ const [loading, setLoading] = React.useState(false)
+ const [response, setResponse] = React.useState(null)
+
+ const [form] = antd.Form.useForm()
+
+ const handleRequest = async () => {
+ setLoading(true)
+
+ const values = form.getFieldsValue()
+
+ console.log(values)
+
+ return
+ const response = await request()
+
+ setResponse(response)
+ setLoading(false)
+ }
+
+
+ return
+
+
+ {(fields, { add, remove }) => (
+ <>
+ {fields.map(({ key, payloadKey: name, ...restField }) => (
+
+
+
+
+
+
+
+ remove(name)}>
+ Remove
+
+
+ ))}
+
+ add()} block>
+ Add field
+
+
+ >
+ )}
+
+
+
+
+ Request
+
+
+
+ Response:
+
+ {JSON.stringify(response, null, 2)}
+
+
+
+
+}
+
+export default () => {
+ const [loading, setLoading] = React.useState(true)
+ const [activeKey, setActiveKey] = React.useState("0")
+
+ const [apiNamespacesKeys, setApiNamespacesKeys] = React.useState([])
+
+ const loadData = () => {
+ const apiNamespaces = app.api.namespaces
+
+ setApiNamespacesKeys(Object.keys(apiNamespaces))
+
+ setLoading(false)
+ }
+
+ const generateEndpointsMapTabs = (apiNamespaceKey) => {
+ const endpoints = app.api.namespaces[apiNamespaceKey].endpoints
+
+ return Object.keys(endpoints).map((method, index) => {
+ return
+ {
+ Object.keys(endpoints[method]).map((endpoint, index) => {
+ return
+
+
+ })
+ }
+
+ })
+ }
+
+ React.useEffect(() => {
+ loadData()
+ }, [])
+
+ if (loading) {
+ return
+ loading api namespaces...
+
+ }
+
+ return
+
+ {
+ apiNamespacesKeys.map((key, index) => {
+ return
+ {
+ generateEndpointsMapTabs(key)
+ }
+
+ })
+ }
+
+
+}
\ No newline at end of file