Escolar Documentos
Profissional Documentos
Cultura Documentos
br
Treinamento VTEX
IO Native
O que veremos?
Introduction
LinkedIN
Diego Perly
Ex-VTEX, ex-TOTVS, CEO na CodeBlue.
O que é VTEX?
(no ponto de vista técnico) Vale-
compras
Gestão de
Uma estrutura de microsserviços
Pedidos Pagamento
para ecommerce voltados a
(OMS)
trazer soluções para lojistas com Preço
base no mercado atual.
Estoque
Catálogo
Cross- Cupons Frete
sell
+ Estabilidade Á vista
+ Performance Pontos
de
retirada
Campanhas
Regras de
negócio
Canais
De onde veio o IO?
Da necessidade de evoluir o módulo CMS (Content Management System), mas ao invés disso a VTEX criou
uma nova tecnologia, que pode ser usada tanto na parte da frente da loja de clientes, mas também para os
desenvolvedores internos da VTEX criarem as novas telas do Admin em IO. Ele também permite que
agências possam criar Apps e comercializá-los.
Frente de loja
Apps Admin VTEX
(Store Framework)
IO
Onde entra o IO? Estrutura Legada
(cuidado, sincericídio à frente!)
Usa tecnologias globais
CARACTERÍSTICAS
Total liberdade de customizações
Front-end
Estrutura Atual
Usa tecnologia proprietária
CARACTERÍSTICAS
Usa componentes nativos
Para customizações, usa apps em React
IO Mais caro (se usar apps não nativos)
Mais rápido (com apps nativos)
Poucas agências fazem (ainda)
Internacional apenas IO
Nativos x Personalizados Busca Compra rápida
Menu Selos de coleção
Abas
EXEMPLOS
Espiar
IO
Frete no mini-cart
Quantidade na prateleira
Compre Junto
EXEMPLOS
Personalizados Paginação nas listagens
Timer
Ferramentas de terceiros*
Vínculos com API’s
FRONT-END
(LAYOUT)
- TypeScript
- JSON
- CSS
- Markdown
- Tachyons
FRONT-END (FLUXOS)
- Github
- Git e Yarn (ou NPM)
FRONT-END (APPS)
- React
- GraphQL
- NodeJS
Fluxo Ecommerce VTEX CMS
O fluxo de um ecommerce em VTEX IO é
semelhante ao de um ecommerce em CMS.
CHECKOUT
Home
Carrinho
Institucionais
Smart Checkout
Produtos
Área do Cliente
Order Placed
(Confirmado)
Identificação
404 e 500
Outras páginas
Customização total
Páginas de erro * Topo, rodapé, CSS e JavaScript.
Fluxo Ecommerce VTEX IO
O fluxo de um ecommerce em VTEX IO é
semelhante ao de um ecommerce em CMS.
CHECKOUT
Home
Carrinho
Institucionais
Smart Checkout
Produtos
Área do Cliente
Order Placed
(Confirmado)
Identificação
404 e 500
CARACTERÍSTICAS
Não é “linkável”
CARACTERÍSTICAS
Podem existir vários
Workspace É onde “linkamos” o projeto
Possui uma URL específica
Possui um Site Editor próprio
Pode ter Apps específicos
Acessível somente para quem tem acesso ao Admin da loja
Fluxo do IO com Github
Conta da loja
Master
● É uma cópia da Master, no
vtex use momento da sua criação;
git remote add origin Workspace ● Tem seu próprio Site Editor;
● Tem seus próprios Apps.
GitHub da loja
Fluxo do IO com Github
Conta da loja
Master
Criando uma App É necessário ter uma conta e um repositório vazio no GitHub.
FRAMEWORK
(Inicia funções de git no repositório local).
Para que o código seja aplicado Aplicar o comando vtex use master no terminal.
no ambiente master, é preciso (O terminal será conectado ao ambiente master).
instalar a app que agora existe no
ambiente VTEX. Aplicar comando vtex install vendor.appName@version
(É possível encontrar o Vendor, AppName e Version no manifest.json)
● Neste fluxo, o Workspace deixa de existir, pois se Workspace: comando vtex release patch stable
torna a nova Master;
● O Site Editor e os Apps instalados no Workspace Workspace: comando vtex deploy (+7 minutos)
são enviados para a Master.
comando vtex use master
WORKSPACE DE PRODUÇÃO
Estar no Workspace
Comando pode ser dado na master ou workspace Comando só pode ser dado no workspace
01 02 03
Manifest.json Pasta STORE Pasta STYLES
Possui todas as dependências do Engloba a estrutura de blocos Possui todos os arquivos CSS da
projeto, assim como a última versão utilizada para definir o layout de loja, incluindo o arquivo
da app e vendor da mesma. Todos todas as páginas. A estrutura de “styles.json” que determina as
os microsserviços utilizados devem blocos se baseia na organização dos configurações do storefront no
ser citados aqui, caso o contrário a microsserviços dentro da página. admin. Cada microsserviço possui
mesma não irá funcionar. um arquivo de CSS diferente.
Componentes
Nativos
Store Framework
é a funcionalidade
para facilitar a
criação de layouts!
Chamada do bloco
Chamada do bloco
Chamada do bloco
Chamada do bloco
Chamada do bloco
Chamada do bloco
Conteúdo do bloco
Conteúdo do bloco
Conteúdo do bloco
Chamada do bloco
Conteúdo do bloco
Conteúdo do bloco
Personalizando Exemplo:
BLOCOS
Página JSON
Chamada do bloco
Props que
personalizam este bloco
Chamada do bloco
Props que
personalizam este bloco
Conteúdo do bloco
Props que
personalizam este bloco
COMPONENTE PAI, QUE
ESTÁ SENDO EDITADO “BLOCKS” E “CHILDREN”
"store.home": { INDICAM QUAIS OS
COMPONENTES FILHOS
"blocks": [
Sintaxe da
"carousel#home",
"flex-layout.row#forms",
ESTRUTURA DE "shelf#home1",
“rich-text#link”
BLOCOS },
]
0% 100%
0% 100%
Componentes mais comuns:
styles.json
css do componente
vtex-menu-2-x-styledLinkContainer
.styledLinkContainer{
font-size: 10px;
color: #fff;
}
Customizando a
propriedade blockClass
blockClass é uma prop na estrutura de Blocos que gera uma
extensão na classe CSS do componente específico.
"vtex.menu@2.x:menu#Products": { vtex-menu-2-x-styledLinkContainer--thisIsBlockClass
"props": {
Componente a CSS namespace que pode ser
"blockClass": "thisIsBlockClass"
qual essa tag e customizado de acordo com o
}, class fazem parte CSS do componente
};
.styledLinkContainer{ .styledLinkContainer--thisIsBlockClass{
font-size: 10px; font-size: 12px;
color: #fff; color: #000;
} }
Evolving
Site Editor
É muito fácil para o lojista poder cuidar da sua loja.
Rotas &
INSTITUCIONAIS
Realizado no workspace
Para criar uma página Defina a URL para a página no arquivo routes.json.
institucional, você precisa criar
uma rota e a página com seu
conteúdo. Crie a página e insira seu conteúdo.
Q&A
Any
Questions?
Documentações
Documentações completas e oficiais para o VTEX IO:
● https://vtex.io/
● https://learn.vtex.com/
● https://github.com/vtex-apps
● https://vtex.io/docs/components/general
● https://lab.github.com/vtex-trainings/store-framework
Thanks
www.codeblue.com.br