atifsoftware / novaflow
A lightweight, high-performance PHP MVC framework with premium admin panel
v1.0.3
2026-07-23 03:31 UTC
Requires
- php: >=8.1
Requires (Dev)
- phpunit/phpunit: ^11.5
Suggests
None
Provides
None
Conflicts
None
Replaces
None
This package is not auto-updated.
Last update: 2026-09-17 23:18:37 UTC
README
NovaFlow PHP Framework
๐ A lightweight, high-performance PHP MVC framework with premium admin panel
โจ Features
- MVC Architecture - Clean separation of concerns
- Dependency Injection - Built-in IoC Container
- RESTful API - Built-in API controller with JWT support
- Authentication - Session & JWT based auth
- Rate Limiting - Built-in brute force protection
- Query Builder - Secure database operations with PDO
- Active Record Models - Eloquent-like model support
- Middleware System - Flexible request filtering
- CLI Tools - Code generation & database migrations
- Bilingual Docs - English & Bengali documentation
๐ Requirements
- PHP 8.1 or higher
- MySQL 5.7+ / MariaDB 10.2+
- Apache/Nginx with mod_rewrite
๐ ๏ธ Installation
Via Composer (Recommended)
composer create-project atifsoftware/novaflow myproject
cd myproject
Manual Installation
# Clone the repository git clone https://github.com/yourusername/NovaFlow.git myproject cd myproject # Install dependencies composer install # Configure environment cp .env.example .env # Import database mysql -u root -p novaflow_db < novaflow_db.sql
โ๏ธ Configuration
Database Setup (.env)
DB_HOST=localhost DB_NAME=novaflow_db DB_USER=root DB_PASS= DB_DRIVER=pdo JWT_SECRET=your-secret-key-here APP_ENV=local
Routes (config/routes.php)
// Simple route $router->get('/', 'HomeController@index'); // Protected routes $router->group(['prefix' => 'admin', 'middleware' => 'auth'], function($router) { $router->get('/dashboard', 'AdminDashboardController@index'); }); // API routes $router->group(['prefix' => 'api/v1'], function($router) { $router->post('/login', 'AuthApiController@login'); });
๐ Documentation
Quick Examples
Create a Controller
namespace App\Controllers; use NovaFlow\Core\Controller; class ProductController extends Controller { public function index() { $products = ProductModel::all(); $this->view('products.index', ['products' => $products]); } }
Database Query
use NovaFlow\Core\DB; // Get all active products $products = DB::table('products')->where('status', 'active')->get(); // Get single record $user = DB::table('users')->where('email', $email)->first();
Authentication
use App\Services\AuthService; $auth = Container::make(AuthService::class); $result = $auth->login('email', 'password'); if ($result['success']) { // Redirect to dashboard } // API Login (returns JWT) $result = $auth->loginApi('email', 'password'); $token = $result['token'];
File Upload
use NovaFlow\Core\UploadHandler; $upload = new UploadHandler(); $upload->allowedTypes(['image/jpeg', 'image/png']) ->maxSize(2097152) ->processImage(800, 600, 85); $result = $upload->upload('avatar');
๐๏ธ Project Structure
NovaFlow/
โโโ app/
โ โโโ controllers/ # Controllers
โ โโโ models/ # Database models
โ โโโ services/ # Business logic
โ โโโ middleware/ # Request filters
โ โโโ views/ # Templates
โ โโโ libraries/ # Core classes
โโโ config/ # Configuration
โโโ public/ # Public assets
โโโ storage/ # Logs, cache
โโโ tests/ # Unit tests
โโโ cli.php # CLI tools
โโโ composer.json # Dependencies
๐งช Testing
# Run tests composer test # Run specific test ./vendor/bin/phpunit tests/Unit/SecurityTest.php
๐ง CLI Commands
# Show help php cli.php # System health check php cli.php --health # List routes php cli.php --routes # Run queue worker php cli.php --work
๐ค Contributing
Contributions are welcome! Please read our Contributing Guide first.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Acknowledgments
- Laravel (for inspiration)
- Bootstrap 5
- Font Awesome
Made with โค๏ธ by Mohidul Hasan
