lagdo / dbadmin-app-symfony
A web based database management tool with multiple DBMS support.
Package info
github.com/lagdo/dbadmin-app-symfony
Language:JavaScript
pkg:composer/lagdo/dbadmin-app-symfony
Requires
- php: >=8.4
- ext-ctype: *
- ext-iconv: *
- alibabacloud/kms-20160120: ^2.0
- aws/aws-sdk-php: ^3.395.2
- csharpru/vault-php: ^4.4
- doctrine/doctrine-bundle: ^3.3.2
- doctrine/doctrine-migrations-bundle: ^4.0.1
- doctrine/orm: ^3.7.1
- google/cloud-secret-manager: ^2.5.3
- infisical/php-sdk: ^0.0.2
- itk-dev/azure-key-vault-php: dev-main
- jaxon-php/jaxon-symfony: ^5.1
- jaxon-php/jaxon-upload: ^2.1
- lagdo/dbadmin-driver-mysql: ^0.23.2
- lagdo/dbadmin-driver-pgsql: ^0.23.3
- lagdo/dbadmin-driver-sqlite: 0.23.*
- lagdo/jaxon-dbadmin: 0.35.*
- lagdo/symfony-facades: ^3.1
- lagdo/ui-builder-bootstrap5: 0.12.*
- phpdocumentor/reflection-docblock: ^6.0
- phpstan/phpdoc-parser: ^2.3.5
- symfony/console: 8.1.*
- symfony/doctrine-messenger: 8.1.*
- symfony/dotenv: 8.1.*
- symfony/expression-language: 8.1.*
- symfony/flex: ^2
- symfony/framework-bundle: 8.1.*
- symfony/http-client: 8.1.*
- symfony/intl: 8.1.*
- symfony/mailer: 8.1.*
- symfony/mime: 8.1.*
- symfony/monolog-bundle: ^3.0|^4.1
- symfony/notifier: 8.1.*
- symfony/process: 8.1.*
- symfony/property-access: 8.1.*
- symfony/property-info: 8.1.*
- symfony/runtime: 8.1.*
- symfony/security-bundle: 8.1.*
- symfony/serializer: 8.1.*
- symfony/string: 8.1.*
- symfony/translation: 8.1.*
- symfony/twig-bundle: 8.1.*
- symfony/validator: 8.1.*
- symfony/yaml: 8.1.*
- twig/extra-bundle: ^2.12|^3.0
- twig/twig: ^2.12|^3.0
Requires (Dev)
- phpunit/phpunit: ^13.3.4
- symfony/browser-kit: 8.1.*
- symfony/css-selector: 8.1.*
- symfony/debug-bundle: 8.1.*
- symfony/maker-bundle: ^1.68
- symfony/stopwatch: 8.1.*
- symfony/web-profiler-bundle: 8.1.*
Suggests
None
Provides
None
Conflicts
README
About Jaxon DbAdmin
Jaxon DbAdmin is a modern database manager built on a fully refactored codebase inpired by Adminer and powered by Jaxon. It brings Adminer into the team era with multi-tab database browsing, query history and bookmarks, all wrapped in a clean, modern interface.
Jaxon DbAdmin is designed with security and accountability in mind. Users authenticate with their own credentials, database secrets stay strictly server-side and are never shared, and every operation can be recorded in an audit log.
Jaxon DbAdmin is a Jaxon package. This package is a ready-to-use application running with the Symfony framework.
The database access code (and thus the provided features) originates from Adminer. The original code was refactored to take advantage of the latest PHP features (namespaces, interfaces, DI, and so on), and separated into multiple Composer packages.
- https://github.com/lagdo/dbadmin-driver: common classes and interfaces for the database drivers.
- https://github.com/lagdo/dbadmin-driver-pgsql: the database driver for PostgreSQL.
- https://github.com/lagdo/dbadmin-driver-mysql: the database driver for MySQL and MariaDB.
- https://github.com/lagdo/dbadmin-driver-sqlite: the database driver for SQLite.
The https://github.com/lagdo/jaxon-dbadmin package implements the database management features in a Jaxon package. Its UI is built with the https://github.com/lagdo/ui-builder package, which will provide support for multiple frontend frameworks. Bootstrap 5 is the default.
Features and current status
Jaxon DbAdmin currently implements the following features:
- Browse servers and databases in multiple tabs.
- Open the query editor in multiple tabs, with query text retention.
- Save the current tabs in user preferences.
- Save and show the query history.
- Save queries in user favorites.
- Read database credentials with an extensible config reader.
- Read database credentials from a secret manager. Currently supported:
- Show tables and views details.
- Query a table.
- Query a view.
- Execute queries in the query editor.
- Support Ace and CodeMirror as SQL editors (chosen in config).
- Import or export data.
- Insert, modify or delete data in a table.
- Create or drop a database.
- Create or alter a table or view.
- Drop a table or view.
- Code completion for table and field names in the SQL editor.
- Navigate through related tables.
- Save the executed queries in an audit logs database.
- Show the audit logs in a dedicated page, with restricted access.
The following features are planned for future releases:
- An advanced GUI-based query builder.
- An AI assistant for building and running queries.
- An advanced SQL parser:
- Alternative UI templates, with WebAwesome, TailwindCSS and Bulma.
- Use an advanced UI component for HTML tables.
- Save and display more data in the audit logs.
- Automated tests.
Documentation and howtos
The documentation is available online.
License
BSD 3-Clause License - feel free to use, modify, and distribute.
