What is bunkerweb built with?

bunkerweb is a Python repo built with werkzeug, Flask, FastAPI, starlette, AIOHTTP, and 2 more. It stores its data in Postgres, reaches it with alembic and SQLAlchemy, signs people in with acme, Google, google-auth-httplib2, itsdangerous, josepy, and 7 more, makes its content with et-xmlfile, mako, pillow, jinja2, markupsafe, and 5 more, validates its data with annotated-types, email-validator, msgspec, wtforms, Pydantic, and 1 more, is tested with mock, requests-mock, pyotp, Microsoft.NET.Test.Sdk, NUnit3TestAdapter, and 1 more, deploys with Ansible, boto3, botocore, certbot, OpenTelemetry, and 4 more, and uses hiredis, psycopg, psycopg-binary, psycopg-pool, s3transfer, and 3 more. It has 245,695 written lines, with 133 test files.

Read on November 12, 2026, at commit b09e418. Read it as markdown

The card says what it's built with. Its whole map opens it up: every part of the code and how it connects to the rest.

Frontend

The base 1

Styles 1

Interface 2

Backend

The base 3

Data 9

Data access 2

Sign-in 12

Support

The base 3

Content 10

Validation 6

Testing 6

  • NUnit1 file
  • pyotp1 file
  • Microsoft.NET.Test.Sdk
  • mock
  • NUnit3TestAdapter
  • requests-mock

Deploy 9

Tools 14

  • yargs1 file
  • build
  • click
  • Setuptools
  • packaging2 files
  • annotated-doc
  • docopt-ng
  • pip
  • pip-tools
  • pycparser
  • pyproject-hooks
  • typing-extensions
2 more
  • watchfiles
  • wheel

Other 80

  • pyyaml3 files
  • brotli2 files
  • maxminddb1 file
  • pydantic-settings1 file
  • pyopenssl1 file
  • urllib31 file
  • attrs
  • certifi
  • dns-lexicon
  • dnspython
  • filelock
  • google-api-core
68 more
  • googleapis-common-protos
  • proto-plus
  • pycryptodome
  • python-dateutil
  • requests-file
  • websockets
  • wrapt
  • requests17 files
  • regex5 files
  • schedule2 files
  • flask-compress1 file
  • httpx1 file
  • slowapi1 file
  • user-agents1 file
  • websocket-client1 file
  • aiohappyeyeballs
  • aiohttp-retry
  • aiosignal
  • async-timeout
  • backports-zstd
  • blinker
  • cffi
  • charset-normalizer
  • configargparse
  • configobj
  • dec
  • deprecated
  • distro
  • durationpy
  • frozenlist
  • h11
  • h2
  • hpack
  • httpcore
  • httplib2
  • httptools
  • hyperframe
  • idna
  • importlib-metadata
  • jmespath
  • jsonpickle
  • limits
  • multidict
  • parsedatetime
  • propcache
  • protobuf
  • pyasn1
  • pyasn1-modules
  • pyparsing
  • pyrfc3339
  • python-dotenv
  • python-multipart
  • pytz
  • requests-unixsocket
  • resolvelib
  • six
  • sniffio
  • tldextract
  • tomli
  • toposort
  • typing-inspection
  • ua-parser
  • uritemplate
  • uvloop
  • wcwidth
  • yarl
  • zipp
  • zope-interface

Other repos with a similar stack

Ordered by how much of its stack they share with bunkerweb, then by stars.

Frequently asked questions

What language is bunkerweb written in?
bunkerweb is written in Python, with 245,695 written lines.
What framework does bunkerweb use?
bunkerweb is built with werkzeug, Flask, FastAPI, starlette, AIOHTTP, anyio, and uvicorn.
What database does bunkerweb use?
bunkerweb stores its data in Postgres and reaches it with alembic and SQLAlchemy.

The proof: src/common/db/requirements.arm.in, line 4

What does bunkerweb sign people in with?
bunkerweb signs people in with acme, Google, google-auth-httplib2, itsdangerous, josepy, libpass, oauthlib, requests-oauthlib, flask-login, bcrypt, cryptography, and flask-session.
What services does bunkerweb use?
bunkerweb uses hiredis, psycopg, psycopg-binary, psycopg-pool, s3transfer, Redis, cachelib, and pymysql.
Does bunkerweb have tests?
Yes. bunkerweb has 133 test files and is tested with mock, requests-mock, pyotp, Microsoft.NET.Test.Sdk, NUnit3TestAdapter, and NUnit.
Which repos have a stack like bunkerweb's?
The ones that share most of its stack:apache/supersetray-project/rayapache/airflow

See inside your code, today.

Paste your repo and see it drawn, part by part: a medium one in under a minute.

Free, no account.

Or look inside SeeRepo's own →

Is it your repo? Add its badge, keep it up to date or take it down →