Um padrão Vue universal, modular, de várias páginas e full stack para lidar com grandes projetos. Baseado em Node.js, Express, PM2, Lerna, Webpack, Babel, Vue.js, Element, PostCSS.
element-ui
como utilitários de UI.prettier
e ESlint
no gancho de pré-confirmação usando lint-staged
. Pare de se preocupar com a entrada de código de merda em sua base de código.pm2
como gerente do processo de produção.http-proxy-middleware
para proxy de API de servidor remoto para evitar erros de CORS.webpack dll
para melhorar o desempenho do tempo de construção.dynamic webpack entry
por meio de cli.lerna
para gerenciar vários projetos em um único projeto.postcss
para pré-processador CSS de próxima geração.express
.winston
como o sistema logger.git clone https://github.com/posrix/vue-crane my-project
cd my-project
npm install
npm run dev
Durante a vida de desenvolvimento em um grande projeto. Deixar o webpack construir o arquivo necessário é muito mais decente do que construir o projeto inteiro. vue-crane usa cli como entrada para permitir que o usuário escolha qual módulo desenvolver.
Inicie um servidor de produção local com hot reload usando nodemon
.
$ npm install
$ npm run build
$ npm run local
Existem 3
ambientes de produção no vue-crane:
Test
Pre-Release
Release
Cada ambiente possui seu próprio script de inicialização:
Ambiente de teste:
$ npm run stage
Ambiente de pré-lançamento:
$ npm run pre
Ambiente de lançamento:
$ npm run release
vue-crane usa um projeto de pacote chamado vue-crane-bundle para implantação. Sempre que você quiser iterar uma nova versão, basta executar um script de shell. Todas as coisas serão resolvidas em seu projeto de pacote. Há três benefícios em usar um projeto de pacote para implantação:
Crie um repositório git vazio como seu projeto de pacote configurável. Adicione um URL remoto a qualquer serviço de hospedagem de repositório git. Certifique-se de que seu projeto de pacote esteja no mesmo nível de pasta do seu projeto de origem.
Edite o script do pacote em package.json
. Três parâmetros são necessários para fornecer: source_project
, bundle_project
, release_branch
.
{
"bundle" : " sh ./tasks/bundle.sh source_project bundle_project release_branch "
}
$ npm run bundle
A licença MIT (MIT). Consulte Arquivo de licença para obter mais informações.