Files
mariavel/README.md
T
2026-04-24 07:14:50 +03:00

78 lines
2.3 KiB
Markdown

# Mariavel
**Mariavel** is a modern, high-performance database management tool designed to replace traditional, clunky interfaces with a sleek, developer-centric experience. Built with **Laravel 11**, **React**, and **DevExtreme**, it offers a premium UI and robust backend architecture adhering to **SOLID** principles.
![Mariavel Dashboard](docs/ss/dashboard_dark.png)
## 🚀 Features
- **Zero-Lag Performance:** Virtual scrolling for millions of rows using DevExtreme DataGrid.
- **Dynamic Connectivity:** Switch between multiple databases and connections on-the-fly.
- **SOLID Architecture:** Maintainable and scalable codebase using Service-Repository patterns and Dependency Inversion.
- **Premium UI/UX:** A high-end "Nano Banana" aesthetic with glassmorphism, Dark/Light mode, and MUI components.
- **CLI-Powered Tools:** Asynchronous Import/Export using system-level `mysqldump` and `mysql` commands.
## 🛠️ Tech Stack
- **Backend:** Laravel 11, PHP 8.5+, Sanctum, Laravel Reverb (WebSockets).
- **Frontend:** React (TypeScript), Vite, Material UI (MUI), DevExtreme DataGrid.
- **Database:** MySQL/MariaDB (Initial support, architected for multi-engine support).
---
## 📦 Getting Started
### Prerequisites
- PHP 8.2 or higher
- Composer
- Node.js & NPM
- MySQL Server
### 1. Backend Setup
```bash
cd backend
composer install
cp .env.example .env
php artisan key:generate
php artisan migrate
php artisan serve
```
The backend will be running at `http://localhost:8000`.
### 2. Frontend Setup
```bash
cd frontend
npm install
npm run dev
```
The frontend will be running at `http://localhost:5173`.
---
## 🏗️ Architecture (SOLID)
Mariavel is built with long-term maintainability in mind:
- **Single Responsibility (SRP):** Business logic is decoupled into specialized Services and Repositories.
- **Dependency Inversion (DIP):** Controllers depend on Abstractions (Interfaces), allowing for seamless swaps of database drivers.
- **Open/Closed (OCP):** New database engines can be added by implementing the `DatabaseDriverInterface` without modifying existing core logic.
---
## 📸 Screenshots
| Dashboard (Dark Mode) | Table Explorer (Light Mode) |
| :--- | :--- |
| ![Dashboard](docs/ss/dashboard_dark.png) | ![Table Explorer](docs/ss/table_explorer_light.png) |
---
## 📄 License
This project is developed by **Antigravity** for **Trunçgil Teknoloji**.