Add comprehensive setup and validation system for Umami - Create interactive setup wizard - Add setup validation script - Enhance error messages - Create SETUP.md documentation - Add .env.example template - Implement pre-flight checks - Add TypeScript types - Create tests - Update README

This commit is contained in:
Ayush3603 2025-11-10 22:19:51 +05:30
parent 06422fb65f
commit 8ccaf3dcb0
15 changed files with 30895 additions and 7 deletions

71
scripts/types/validation.d.ts vendored Normal file
View file

@ -0,0 +1,71 @@
/**
* Validation result structure
*/
export interface ValidationResult {
/** Name of the validation check */
check: string;
/** Status of the check */
status: 'pass' | 'fail' | 'warning';
/** Human-readable message */
message: string;
/** Suggested fix for failures (optional) */
solution?: string;
/** Link to relevant documentation (optional) */
documentation?: string;
}
/**
* Overall setup status
*/
export interface SetupStatus {
/** Overall status */
overall: 'ready' | 'incomplete' | 'error';
/** Number of passed checks */
passed: number;
/** Number of failed checks */
failed: number;
/** Number of warnings */
warnings: number;
/** All validation results */
results: ValidationResult[];
/** Suggested next steps */
nextSteps?: string[];
}
/**
* Environment configuration
*/
export interface EnvironmentConfig {
/** PostgreSQL database connection string (required) */
DATABASE_URL: string;
/** Base path for deployment (optional) */
BASE_PATH?: string;
/** Cloud mode enabled (optional) */
CLOUD_MODE?: string;
/** Cloud URL (optional) */
CLOUD_URL?: string;
/** Tracker script name (optional) */
TRACKER_SCRIPT_NAME?: string;
/** Force SSL (optional) */
FORCE_SSL?: string;
/** Default locale (optional) */
DEFAULT_LOCALE?: string;
/** Allowed frame URLs (optional) */
ALLOWED_FRAME_URLS?: string;
}