| 
<?phpdeclare(strict_types=1);
 
 use ParagonIE\EasyDB\{
 EasyDB,
 Factory
 };
 use ParagonIE\Chronicle\Chronicle;
 
 $root = \dirname(__DIR__);
 /** @psalm-suppress UnresolvableInclude */
 require_once $root . '/cli-autoload.php';
 
 if (!\is_readable($root . '/local/settings.json')) {
 echo 'Settings are not loaded.', PHP_EOL;
 exit(1);
 }
 
 /** @var array<string, string> $settings */
 $settings = \json_decode(
 (string) \file_get_contents($root . '/local/settings.json'),
 true
 );
 
 $db = Factory::create(
 $settings['database']['dsn'],
 $settings['database']['username'] ?? '',
 $settings['database']['password'] ?? '',
 $settings['database']['options'] ?? []
 );
 Chronicle::storeSettings($settings);
 Chronicle::setDatabase($db);
 
 // Run the scheduler:
 (new ParagonIE\Chronicle\Scheduled($settings))->run();
 
 |