UNPKG

create-ignite

Version:

🚀 Universal CLI to scaffold modern web projects - React, Vue, Next.js, Express, and more with zero configuration

143 lines (122 loc) • 3.54 kB
/** * Constants and configuration values */ export const FRAMEWORKS = { REACT: "react", VUE: "vue", NEXTJS: "nextjs", NUXT: "nuxt", EXPRESS: "express", FASTIFY: "fastify", FULLSTACK: "fullstack", }; export const CSS_FRAMEWORKS = { TAILWIND: "tailwind", BOOTSTRAP: "bootstrap", MATERIAL_UI: "material-ui", CHAKRA_UI: "chakra-ui", NONE: "none", }; export const STATE_MANAGEMENT = { NONE: "none", REDUX: "redux", ZUSTAND: "zustand", PINIA: "pinia", VUEX: "vuex", MOBX: "mobx", }; export const LANGUAGES = { TYPESCRIPT: "ts", JAVASCRIPT: "js", }; export const PACKAGE_MANAGERS = { NPM: "npm", YARN: "yarn", PNPM: "pnpm", }; export const PROJECT_TYPES = { FRONTEND: "frontend", BACKEND: "backend", FULLSTACK: "fullstack", }; export const MIN_NODE_VERSION = "16.0.0"; export const CONFIG_FILE_NAME = ".ignite-config.json"; export const TEMPLATES_DIR = "templates"; export const ERROR_MESSAGES = { INVALID_PROJECT_NAME: "Project name must contain only letters, numbers, dashes, and underscores", PROJECT_NAME_REQUIRED: "Project name is required", FOLDER_NOT_EMPTY: "Target folder is not empty", NODE_VERSION_TOO_LOW: `Node.js version must be ${MIN_NODE_VERSION} or higher`, NPM_INSTALL_FAILED: "Failed to install dependencies. Please check your internet connection", GIT_INIT_FAILED: "Failed to initialize git repository", SCAFFOLD_FAILED: "Failed to scaffold project", CLEANUP_FAILED: "Failed to cleanup project files", FRAMEWORK_SETUP_FAILED: "Failed to setup framework configuration", }; export const SUCCESS_MESSAGES = { PROJECT_CREATED: "Project created successfully!", DEPENDENCIES_INSTALLED: "Dependencies installed successfully!", FRAMEWORK_CONFIGURED: "Framework configured successfully!", GIT_INITIALIZED: "Git repository initialized!", }; export const LINKS = { REACT: "https://react.dev/learn", VUE: "https://vuejs.org/guide/", NEXTJS: "https://nextjs.org/docs", NUXT: "https://nuxt.com/docs", EXPRESS: "https://expressjs.com/", FASTIFY: "https://fastify.dev/", FULLSTACK: "https://github.com/kasimkazmi/create-ignite", VITE: "https://vitejs.dev/guide/", TAILWIND: "https://tailwindcss.com/docs", BOOTSTRAP: "https://getbootstrap.com/docs/", MATERIAL_UI: "https://mui.com/", CHAKRA_UI: "https://chakra-ui.com/", REDUX: "https://redux-toolkit.js.org/", ZUSTAND: "https://zustand.docs.pmnd.rs/", PINIA: "https://pinia.vuejs.org/", REACT_ROUTER: "https://reactrouter.com/", VUE_ROUTER: "https://router.vuejs.org/", AXIOS: "https://axios-http.com/", }; export const DEPENDENCY_VERSIONS = { // React ecosystem "react": "^18.3.1", "react-dom": "^18.3.1", "react-router-dom": "^6.28.0", "@reduxjs/toolkit": "^2.5.0", "react-redux": "^9.2.0", "zustand": "^5.0.2", // Vue ecosystem "vue": "^3.5.13", "vue-router": "^4.5.0", "pinia": "^2.3.0", "vuex": "^4.1.0", // Build tools "vite": "^6.0.3", "@vitejs/plugin-react": "^4.3.4", "@vitejs/plugin-vue": "^5.2.1", // CSS frameworks "tailwindcss": "^4.0.0-beta.14", "@tailwindcss/vite": "^4.0.0-beta.14", "bootstrap": "^5.3.3", "@mui/material": "^6.3.1", "@emotion/react": "^11.14.0", "@emotion/styled": "^11.14.0", "@chakra-ui/react": "^2.10.4", // Backend "express": "^4.21.2", "fastify": "^5.2.0", "cors": "^2.8.5", "dotenv": "^16.4.7", "nodemon": "^3.1.9", // Utilities "axios": "^1.7.9", "react-icons": "^5.4.0", // TypeScript "typescript": "^5.7.2", "@types/react": "^18.3.18", "@types/react-dom": "^18.3.5", "@types/node": "^22.10.2", "@types/express": "^5.0.0", };