Skip to content

Instantly share code, notes, and snippets.

@viniazvd
Created October 28, 2017 15:35
Show Gist options
  • Save viniazvd/50925ccb1b5abef86998a4d36e01cc7b to your computer and use it in GitHub Desktop.
Save viniazvd/50925ccb1b5abef86998a4d36e01cc7b to your computer and use it in GitHub Desktop.
src/
APPLICATION
-rotas e componentes das rotas, apenas lógica de exibição
- app/ :: rotas e componentes das rotas, apenas lógica de exibição
-- home/
-- articles/ :: grupo de rotas, não expressa um domínio diretamente
--- components/ :: componentes das rotas
--- routes.js :: expõe um array de rotas
-- categories/
-- questions/
-- panel/
--- users/
-- routes.js :: importa as rotas de cada grupo, e expõe um array
-- index.js :: expõe um objeto com as rotas ({ routes: [] })
---------------------------------------------------------------------------------------------------------------
DOMAIN
-camada que ficam os dominios da aplicação e as regras de negócio
-validações, vuex, serviços dos models...
- domains/ :: Domínios da aplicação, regras de negócio, serviços...
-- auth/
--- services/
--- vuex-module/ :: Um domínio pode possuir um módulo do vuex
-- blog/
--- services/
-- forum/
--- services/
---------------------------------------------------------------------------------------------------------------
SUPORT
-Camada de apoio, onde tanto a aplication quanto domains podem usar
-camada de configuração com o banco de dados
-http, helpers, filters, mixins, plugins, componentes globais
- support/ :: Camada de apoio, tanto app quanto domains podem usar
-- http/
--- resouces/
---- make.js
---- plugin.js
---- index.js
--- interceptors.js
--- client.js
--- index.js
-- c3/ :: Esta camada pode conter componentes, plugins, helpers...
--- chart.vue
--- index.js
-- common/
--- components/
---------------------------------------------------------------------------------------------------------------
E fora dessas 3 camadas ficam:
- router/
-- routes.js :: Importa e expõe as rotas de src/app
-- index.js :: Expõe o router normalmente
- store/ :: cria o store baseado nos módulos e plugins da aplicação
- assets/
- static/
- root.vue :: Componente root da aplicação
- main.js :: Junta todas as peças e inicia a aplicação
referência:
https://blog.codecasts.com.br/arquitetura-de-projetos-vue-js-com-ddd-a2bc26817793
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment