native crumbcore v.0.0 on debian smart ready <3

This commit is contained in:
2025-12-24 15:38:42 +01:00
parent 95f6ae2ca9
commit a02ce92f20
17 changed files with 2583 additions and 0 deletions

View File

@@ -0,0 +1,41 @@
-- Crumbforest Database Initialization Script
-- For MariaDB/MySQL
-- Run with: mysql -u root -p < init_database.sql
-- Create database
CREATE DATABASE IF NOT EXISTS crumbforest CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- Create user
-- Note: Change password before running!
CREATE USER IF NOT EXISTS 'crumb_prod'@'localhost' IDENTIFIED BY 'CHANGE_ME_TO_SECURE_PASSWORD';
GRANT ALL PRIVILEGES ON crumbforest.* TO 'crumb_prod'@'localhost';
FLUSH PRIVILEGES;
USE crumbforest;
-- Users table
CREATE TABLE IF NOT EXISTS users (
id INT AUTO_INCREMENT PRIMARY KEY,
email VARCHAR(255) UNIQUE NOT NULL,
pass_hash VARCHAR(255) NOT NULL,
role ENUM('admin','editor','user') DEFAULT 'user',
locale VARCHAR(8) DEFAULT 'de',
user_group VARCHAR(50) DEFAULT 'demo',
theme VARCHAR(50) DEFAULT 'pico-default',
accessibility JSON DEFAULT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB;
-- Default admin user (password: admin123)
INSERT INTO users (email, pass_hash, role, locale)
SELECT 'admin@crumb.local', '$2b$12$Xe7ETl.YKaFrc0q9NZDWB.S2Rp5kUUkXuS0Axlazk1jIAoQGgu1SK', 'admin', 'de' FROM DUAL
WHERE NOT EXISTS (SELECT 1 FROM users WHERE email='admin@crumb.local');
-- Default demo user (password: demo123)
INSERT INTO users (email, pass_hash, role, locale)
SELECT 'demo@crumb.local', '$2b$12$lctCe5zTnjiIAJu2EMzqw.qcREKsEYZ7VESjphJI9cNQLCIrWd0xG', 'user', 'de' FROM DUAL
WHERE NOT EXISTS (SELECT 1 FROM users WHERE email='demo@crumb.local');
-- Verification
SELECT 'Database crumbforest created successfully' AS Status;
SELECT COUNT(*) AS UserCount FROM users;