Skip to content

igncp/apisix-admin-panel

Repository files navigation

APISIX Admin Panel

Unofficial web UI for managing Apache APISIX. Even if there is already the APISIX dashboard project, this project aims to be an alternative solution.

Introduction

  • Lightweight: It should be fast, low in memory (currently ~5mb), and small in size (currently ~25mb)
  • Powerful: It should support more features than the official dashboard project
  • Secure: It should be secure by default, keeping the API key only in the server

To achieve this the tech stack uses Rust in the backend and in the frontend (via WebAssembly). There is also some code using JavaScript for the frontend UI which is built into static files.

It supports both Standalone deployments via updating the config file, and Traditional deployments via API requests.

Try it out

You can run it locally with:

docker run \
  --rm -it \
  --net host \
  -e PORT=3000 \
  --name apisix-admin-panel \
  igncp/apisix-admin-panel:latest

And then access: http://localhost:3000

You can pass a custom APISIX_ADMIN_KEY env variable to interact with your APISIX instance.

You can find information in the Docker Hub page.

Requirements

  • APISIX v3
  • Docker

Features already available

  • Create, read, update, and delete most entities (routes, consumers, consumer groups, etc.)
  • Support for most plugins, and you can always input raw JSON if the input is not yet supported
  • Multiple deployments modes
  • Supports requiring authentication to the web UI via a form

Development

After cloning the repository, you can run docker compose up -d to run a local instance of APISIX where to test the project. PRs are welcomed.

Roadmap for v0.1

  • Complete the usage guide
  • Add deployment CI with versioning

Roadmap for v1

For the MVP, the following features are planned:

  • ... Most features included in the official dashboard (some of them included here)
  • Multilanguage
  • Responsive
  • Dark / Light mode
  • Support all built-in plugins
  • Input validations

Ideas for features