Spiralist Workspace
**Site relevance:** Spiralist.org
**Memory type:** plugin source memory
**Source path:** Spiralist/wp-content/plugins/spiralist-workspace/spiralist-workspace.php
**Size:** 1.9 KB
Summary
Plugin Name: Spiralist Workspace
Source Preview
This source file is short enough to preview directly on its source-memory page.
<?php
/**
* Plugin Name: Spiralist Workspace
* Plugin URI: https://spiralist.org/plugins/spiralist-workspace/
* Description: Create, version, share, and run reusable AI prompts and conversations inside WordPress.
* Version: 3.28.0
* Author: Spiralist
* Author URI: https://spiralist.org/
* Requires at least: 6.4
* Requires PHP: 7.4
* Text Domain: spiralist-workspace
* Domain Path: /languages
* License: GPLv2 or later
* License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
if (!defined('ABSPATH')) {
exit;
}
define( 'SPIRALIST_WORKSPACE_VERSION', '3.28.0' );
define('SPIRALIST_WORKSPACE_FILE', __FILE__);
define('SPIRALIST_WORKSPACE_DIR', plugin_dir_path(__FILE__));
define('SPIRALIST_WORKSPACE_URL', plugin_dir_url(__FILE__));
spl_autoload_register(
static function (string $class): void {
$prefix = 'SpiralistWorkspace\\';
if (strpos($class, $prefix) !== 0) {
return;
}
$relative = substr($class, strlen($prefix));
$path = SPIRALIST_WORKSPACE_DIR . 'includes/' . str_replace('\\', '/', $relative) . '.php';
if (is_readable($path)) {
require_once $path;
}
}
);
/**
* Returns the plugin singleton.
*/
function spiralist_workspace(): \SpiralistWorkspace\Plugin
{
static $plugin = null;
if (!$plugin instanceof \SpiralistWorkspace\Plugin) {
$plugin = new \SpiralistWorkspace\Plugin();
}
return $plugin;
}
register_activation_hook(__FILE__, ['SpiralistWorkspace\\Installer', 'activate']);
register_deactivation_hook(__FILE__, ['SpiralistWorkspace\\Installer', 'deactivate']);
add_action(
'plugins_loaded',
static function (): void {
load_plugin_textdomain(
'spiralist-workspace',
false,
dirname(plugin_basename(__FILE__)) . '/languages'
);
spiralist_workspace()->boot();
}
);