// Package config holds some (mostly static) configuration for the app. package config import ( "regexp" "time" ) // Branding const ( Title = "gosocial" Subtitle = "A purpose built social networking app." ) // Paths and layouts const ( TemplatePath = "./web/templates" StaticPath = "./web/static" SettingsPath = "./settings.json" ) // Security const ( BcryptCost = 14 SessionCookieName = "session_id" CSRFCookieName = "csrf_token" CSRFInputName = "_csrf" // html input name SessionCookieMaxAge = 60 * 60 * 24 * 30 SessionRedisKeyFormat = "session/%s" ) // Authentication const ( // Skip the email verification step. The signup page will directly ask for // email+username+password rather than only email and needing verification. SkipEmailVerification = false SignupTokenRedisKey = "signup-token/%s" SignupTokenExpires = 24 * time.Hour ) var ( UsernameRegexp = regexp.MustCompile(`^[a-z0-9_-]{3,32}$`) ) // Variables set by main.go to make them readily available. var ( RuntimeVersion string RuntimeBuild string RuntimeBuildDate string Debug bool // app is in debug mode )