A premium PostgreSQL database management interface β reimagined.
Features β’ Quick Start β’ Screenshots β’ Documentation β’ License
bases_on is a battle-tested fork of pgAdmin 4 β the world's most advanced PostgreSQL administration tool β completely rebuilt with dynamicdev_ design language:
pgAdmin 4 (upstream)
β
ββ> Fork & Rebrand
ββ> Dark Crimson Theme (#7F1D1D)
ββ> Inter Typography System
ββ> Alpine Docker Optimization
ββ> dynamicdev_ Identity
β
ββ> BASES_ON π΄
|
|
π¨ Visual & Branding
- β Complete rebrand β No pgAdmin remnants in UI
- β
Dark crimson accent β
#7F1D1Dprimary color throughout - β Custom logo system β SVG gradient + PNG assets (128px/256px)
- β Footer copyright bar β dynamicdev_ branding on all pages
- β Modern login UI β Navy background with crimson CTA
- β PWA-ready icons β 192x192 manifest icon
π³ Docker & Deployment
- β Alpine Linux base β Minimal attack surface
- β Multi-stage build β Optimized layer caching
- β Native packages β Pre-compiled cryptography/bcrypt/psutil
- β
Custom paths β
/var/lib/bases_ondata directory - β Volume persistence β Database & config separation
- β Compose-ready β Drop-in to dynamicdev_ stack
π§ Technical Improvements
- β Yarn Berry (v3) β Modern package management
- β Corepack enabled β Consistent tooling across builds
- β CSP-compliant CSS β Injected via SCSS (no inline styles)
- β Entrypoint hardening β Permission checks & graceful errors
- β Theme reduction β Dark-only mode (removed standard theme)
β Docker Engine 20.10+
β Docker Compose 2.0+
β 2GB RAM minimumCreate docker-compose.yml:
services:
bases_on:
container_name: bases_on
image: bases_on:latest
build: .
ports:
- "5050:80"
volumes:
- bases_on-data:/var/lib/bases_on
- pgadmin-data:/var/lib/pgadmin
environment:
PGADMIN_DEFAULT_EMAIL: ${EMAIL:-bases_on@dynamicdev.asia}
PGADMIN_DEFAULT_PASSWORD: ${PASSWORD:-changeme}
PGADMIN_LISTEN_PORT: 80
networks:
- dynamicdev-net
restart: unless-stopped
volumes:
pgadmin-data:
bases_on-data:
networks:
dynamicdev-net:
external: true
# Start the stack
docker compose up -d
# View logs
docker compose logs -f bases_on
# Access UI
open http://localhost:5050# Clone repository
git clone https://github.com/dynamicdev-official/BASES_ON-PROJECT.git
cd bases_on
# Build image (takes ~15min on first build)
docker build -t bases_on:custom .
# Run container
docker run -d \
--name bases_on \
-p 5050:80 \
-e PGADMIN_DEFAULT_EMAIL=admin@example.com \
-e PGADMIN_DEFAULT_PASSWORD=ChangeMe123 \
bases_on:custom
# Check build logs
docker logs -f bases_onNavy background with dynamicdev_ branding and crimson accent
Streamlined server connection form with dark theme
Real-time database monitoring with performance metrics
Custom Material-UI theme with #7F1D1D primary color
Clean white interface for bright environments
| Variable | Required | Default | Description |
|---|---|---|---|
PGADMIN_DEFAULT_EMAIL |
β Yes | bases_on@dynamicdev.asia | Admin login email |
PGADMIN_DEFAULT_PASSWORD |
β Yes | changeme | Admin password (min 8 chars) |
PGADMIN_LISTEN_PORT |
No | 80 |
Internal container port |
PGADMIN_LISTEN_ADDRESS |
No | 0.0.0.0 |
Bind address (use 127.0.0.1 for localhost-only) |
PGADMIN_CONFIG_ENHANCED_COOKIE_PROTECTION |
No | True |
Cookie security settings |
bases_on/
βββ π assets/ # Branding source files
β βββ πΌοΈ favicon.ico # Browser tab icon
β βββ πΌοΈ logo.png # Master logo file
β βββ πΌοΈ bases_on192x192.png # PWA manifest icon
β
βββ π docs/ # Documentation (WIP)
β
βββ π pkg/ # Packaging configs per platform
β βββ π docker/ # Docker runtime files
β β βββ π³ entrypoint.sh # Container startup script
β β βββ π gunicorn_config.py # Gunicorn WSGI server config
β β βββ π run_pgadmin.py # pgAdmin bootstrap runner
β βββ π debian/ # Debian packaging
β βββ π redhat/ # RPM packaging
β βββ π win32/ # Windows packaging
β βββ π mac/ # macOS packaging
β
βββ π runtime/ # Desktop app wrapper
β
βββ π scripts/ # Dev & build utility scripts
β βββ π copyright_updater.py # License header management
β βββ π dependency_inventory.py # Dependency audit tool
β βββ π setup-python-env.sh # Python env bootstrap
β βββ π sql_keywords.py # SQL keyword extractor
β
βββ π web/ # Main application source
β βββ π branding.py # β¨ App identity config
β βββ π config.py # Core Flask/pgAdmin configuration
β βββ π pgAdmin4.py # Application entry point
β βββ π pgadmin.themes.json # Theme registry (dark only)
β βββ π pgadmin/
β β βββ π static/
β β β βββ πΌοΈ favicon.ico # Browser tab icon (rebranded)
β β β βββ π img/
β β β β βββ πΌοΈ logo-128.png # Navbar logo
β β β β βββ πΌοΈ logo-256.png # Large logo
β β β βββ π js/
β β β β βββ π¨ AppMenuBar.jsx # Navbar with Bases_on logo
β β β β βββ π¨ BrowserComponent.jsx # Footer injection
β β β β βββ π Theme/
β β β β β βββ π¨ dark.js # Crimson dark theme
β β β β βββ π SecurityPages/
β β β β βββ π¨ BasePage.jsx # Login page layout
β β β βββ π scss/resources/
β β β βββ π¨ _default.variables.scss # Inter font + CSS vars
β β βββ π dashboard/static/js/
β β β βββ π¨ WelcomeDashboard.jsx # Welcome screen
β β β βββ π¨ PgAdminLogo.jsx # SVG gradient logo
β β βββ π templates/
β β βββ π¨ base.html # Google Fonts injection
β βββ π migrations/ # DB schema migrations
β
βββ π³ Dockerfile # Multi-stage Alpine build
βββ π docker-compose.yml # One-command deployment
βββ π requirements.txt # Python dependencies
βββ π .env.example # Env template + descriptions
βββ π LICENSE # Apache 2.0
βββ π DEPENDENCIES # Full dependency list
βββ π README.th.md # Thai README
Full documentation: bases_on_modifications.md
| Component | Original (pgAdmin 4) | Modified (bases_on) |
|---|---|---|
| App Name | pgAdmin 4 |
bases_on |
| Primary Color | #234d7e (Blue) |
#7F1D1D (Crimson) |
| Font Family | System default | Inter (400-800) |
| Logo | Elephant icon | Custom SVG gradient |
| Footer | None | dynamicdev_ copyright bar |
| Data Path | /var/lib/pgadmin |
/var/lib/bases_on |
# Install build dependencies
docker --version # Docker 20.10+
node --version # Node 18+ (for local development)
# Clone & build
git clone https://github.com/dynamicdev-official/BASES_ON-PROJECT.git
cd bases_on
# Build with build args
docker build \
--build-arg BUILD_DATE=$(date -u +'%Y-%m-%dT%H:%M:%SZ') \
--build-arg VCS_REF=$(git rev-parse --short HEAD) \
-t bases_on:dev .
# Run with debug logging
docker run -it --rm \
-e PGADMIN_CONFIG_CONSOLE_LOG_LEVEL=10 \
-p 5050:80 \
bases_on:dev- π pgAdmin 4 Official Docs β Upstream documentation
- π§ PostgreSQL Documentation β Database reference
- π³ Docker Best Practices β Container optimization
- π¨ Material-UI Theming β UI framework
bases_on_modifications.mdβ Complete change logNOTICEβ Legal attribution & licensesLICENSEβ Apache 2.0 full text
This is a private fork maintained by dynamicdev_ for internal infrastructure use.
Found a bug specific to bases_on (not pgAdmin 4 upstream)?
- Check existing issues
- Open a new issue with:
- π Bug description
- π Steps to reproduce
- πΌοΈ Screenshots (if applicable)
- π³ Docker version & environment details
Have an idea for bases_on?
- Open an issue tagged
enhancement - Describe the feature & use case
- Explain how it fits dynamicdev_ design language
Style Guidelines:
// β
Good β Inter font, crimson accents
const theme = {
palette: { primary: { main: '#7F1D1D' } },
typography: { fontFamily: '"Inter", sans-serif' }
}
// β Bad β Off-brand colors
const theme = {
palette: { primary: { main: '#2196f3' } } // Don't use blue
}Commit Message Format:
feat(theme): add gradient overlay to login background
fix(docker): resolve permission issue in entrypoint.sh
docs(readme): update quick start section
chore(deps): bump Material-UI to v5.14.0DO NOT open public issues for security vulnerabilities.
Email: admin@dynamicdev.asia with:
- Description of the vulnerability
- Steps to reproduce
- Potential impact
- Suggested fix (if any)
We aim to respond within 48 hours.
# β
Use strong passwords
PGADMIN_DEFAULT_PASSWORD: "$(openssl rand -base64 32)"
# β
Run behind reverse proxy with TLS
# β
Limit network exposure
networks:
- internal # No direct internet access
# β
Regular updates
docker pull ghcr.io/dynamicdev-official/BASES_ON-PROJECT:latest
docker compose up -dApache License 2.0
This project is a derivative work of pgAdmin 4 (PostgreSQL License, BSD-like).
Original Work: pgAdmin 4 Β© pgAdmin Development Team
Modifications: bases_on Β© 2026 dynamicdev_ | BASES_ON PROJECT
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
See LICENSE file for full terms.
See NOTICE file for attribution details.
This software includes components from:
- pgAdmin 4 β PostgreSQL License
- Material-UI β MIT License
- React β MIT License
- Flask β BSD License
- PostgreSQL β PostgreSQL License
Full attribution in NOTICE.
|
pgAdmin Team For the incredible PostgreSQL tool |
![]() PostgreSQL The world's most advanced database |
![]() Material-UI React component framework |
Google Fonts Inter typeface |
Issues β’ Discussions β’ Releases β’ Docker Hub β’
Built with β€οΈ in Bangkok | Powered by PostgreSQL | Designed by dynamicdev_

