1 /* 2 * Hunt - A high-level D Programming Language Web framework that encourages rapid development and clean, pragmatic design. 3 * 4 * Copyright (C) 2015-2019, HuntLabs 5 * 6 * Website: https://www.huntlabs.net/ 7 * 8 * Licensed under the Apache-2.0 License. 9 * 10 */ 11 12 module hunt.framework.Init; 13 14 public import hunt.framework.Version; 15 16 import std.path : buildPath, dirName; 17 import std.file : thisExePath; 18 19 20 __gshared string APP_PATH; 21 __gshared string DEFAULT_CONFIG_PATH = "config/"; 22 __gshared string DEFAULT_RESOURCE_PATH = "resources/"; 23 __gshared string DEFAULT_TEMPLATE_PATH = "views/"; 24 __gshared string DEFAULT_LANGUAGE_PATH = "translations/"; 25 __gshared string DEFAULT_PUBLIC_PATH = "public/"; 26 __gshared string DEFAULT_STORAGE_PATH = "storage/"; 27 __gshared string DEFAULT_TEMP_PATH = "tmp/"; 28 __gshared string DEFAULT_LOG_PATH = "logs/"; 29 __gshared string DEFAULT_SESSION_PATH = "session/"; 30 31 32 33 enum string DEFAULT_APP_NAME = "HuntApp"; 34 enum string DEFAULT_APP_VERSION = "1.0.0"; 35 enum string DEFAULT_APP_DESCRIPTION = "An application bootstrapped by Hunt Framework"; 36 enum string DEFAULT_APP_Locale = "en-US"; 37 38 enum string DEFAULT_HOST = "0.0.0.0"; 39 enum ushort DEFAULT_PORT = 8080; 40 41 enum string DEFAULT_CONFIG_LACATION = "config/"; 42 enum string DEFAULT_STATIC_FILES_LACATION = "wwwroot/"; 43 44 enum string DEFAULT_RUNTIME_ENVIRONMENT = ""; // development 45 46 enum string DEFAULT_CONFIG_FILE = "application.conf"; 47 enum string DEFAULT_CONFIG_EXT = ".conf"; 48 enum string DEFAULT_ROUTE_CONFIG = "routes"; 49 enum string DEFAULT_RESOURCES_ROUTE_LEADER = "staticDir:"; 50 51 enum string DEFAULT_USERS_CONFIG = "users"; 52 enum string DEFAULT_ROLES_CONFIG = "roles"; 53 54 // default route group name 55 enum string DEFAULT_ROUTE_GROUP = "default"; 56 enum string DEFAULT_ROUTE_CONFIG_EXT = ".routes"; 57 58 59 60 shared static this() 61 { 62 APP_PATH = dirName(thisExePath()); 63 DEFAULT_CONFIG_PATH = buildPath(APP_PATH, DEFAULT_CONFIG_LACATION); 64 DEFAULT_RESOURCE_PATH = buildPath(APP_PATH, DEFAULT_RESOURCE_PATH); 65 DEFAULT_TEMPLATE_PATH = buildPath(DEFAULT_RESOURCE_PATH, DEFAULT_TEMPLATE_PATH); 66 DEFAULT_LANGUAGE_PATH = buildPath(DEFAULT_RESOURCE_PATH, DEFAULT_LANGUAGE_PATH); 67 DEFAULT_PUBLIC_PATH = buildPath(APP_PATH, DEFAULT_PUBLIC_PATH); 68 DEFAULT_STORAGE_PATH = buildPath(APP_PATH, DEFAULT_STORAGE_PATH); 69 DEFAULT_TEMP_PATH = buildPath(DEFAULT_STORAGE_PATH, DEFAULT_TEMP_PATH); 70 DEFAULT_LOG_PATH = buildPath(DEFAULT_STORAGE_PATH, DEFAULT_LOG_PATH); 71 DEFAULT_SESSION_PATH = buildPath(DEFAULT_STORAGE_PATH, DEFAULT_SESSION_PATH); 72 }