SchoolKit

SchoolKit is a simple, modular micro-framework for building school applications.

Quick Start

Get up and running with SchoolKit in minutes:

<?php
require_once 'schoolkit.php';

// Example configuration
$config = [
    'db' => [
        'dsn' => 'mysql:host=localhost;dbname=schoolkit;charset=utf8mb4',
        'user' => 'your_username',
        'pass' => 'your_password'
    ],
    'storage_path' => __DIR__ . '/storage'
];

// For local development
/*
$config = [
    'db' => [
        'dsn' => 'mysql:host=localhost;dbname=schoolkit_dev;charset=utf8mb4',
        'user' => 'your_username',
        'pass' => 'your_password'
    ],
    'storage_path' => __DIR__ . '/storage'
];
*/

$schoolKit = SchoolKit::start($config);

// Create a student
$studentId = $schoolKit->directory()->createStudent([
    'first_name' => 'John',
    'last_name' => 'Doe',
    'grade_level' => '10'
]);

echo "Student created with ID: {$studentId}";
?>

Core Features

Database

Database

Simple, secure wrapper around PDO with built-in query building and validation.

Mail

Mail

Send emails using log or mail transport with built-in template support.

Files

Files

Handle file uploads and storage with automatic validation and organization.

CSRF Protection

CSRF Protection

Protect against cross-site request forgery with automatic token generation.

School Modules