package model import ( "time" "github.com/google/uuid" ) type UserProductProfile struct { ID uuid.UUID `gorm:"type:uuid;primary_key;default:gen_random_uuid()" json:"id"` UserID uuid.UUID `gorm:"type:uuid;unique;not null" json:"user_id"` ProductName string `gorm:"type:varchar(255)" json:"product_name"` Tagline string `gorm:"type:text" json:"tagline"` Domain string `gorm:"type:varchar(255)" json:"domain"` KeyFeatures string `gorm:"type:jsonb;default:'[]'" json:"key_features"` // Stored as JSON string TargetUsers string `gorm:"type:text" json:"target_users"` ProductUrl string `gorm:"type:varchar(500)" json:"product_url"` Competitors string `gorm:"type:jsonb;default:'[]'" json:"competitors"` // Stored as JSON string RelevanceKeywords string `gorm:"type:jsonb;default:'[]'" json:"relevance_keywords"` // Stored as JSON string CustomContext string `gorm:"type:text" json:"custom_context"` DefaultLLMProvider string `gorm:"type:varchar(50)" json:"default_llm_provider"` // User preferred LLM provider DefaultLLMModel string `gorm:"type:varchar(100)" json:"default_llm_model"` // User preferred LLM model IsActive bool `gorm:"default:true" json:"is_active"` CreatedAt time.Time `json:"created_at"` UpdatedAt time.Time `json:"updated_at"` }