Documentation
Feedback
Guides
Learning Center

Learning Center
Learning Center
Admin Framework
View in Portuguese
This content was migrated from the VTEX Learning Center and is no longer being actively maintained. For the most accurate and up-to-date information, please check the official documentation.

Introduction

In the previous courses we learned about the Store Framework, a storefront construction engine built using VTEX IO. Like the Store Framework, the Admin Framework sets out to solve a specific use case: extensions for the administrative panel.

Complex commerce operations almost never manage to work with a single integrated SaaS solution, ERP, personalization, tracking, digital marketing, among others, are needed. VTEX understands, however, that having a single point of contact would greatly facilitate the work of operators, making the admin a universal tool. It is with this premise that the Admin Framework was created, bringing the possibility of extending backoffice not only to create dashboards that are characteristic of a client and its segment, but also to bring insights and operation from external providers.

Activity

An admin app works much like the store block app. Let's start the course by cloning a reactor template repository and evolve to make it an admin app:

  1. Clone the react app template:

_10
git clone https://github.com/vtex-apps/react-app-template admin-course

  1. Open the admin-course in your text editor and add the admin builder to manifest.json:

_20
//manifest.json
_20
{
_20
"vendor": "CHANGE_ME",
_20
"name": "CHANGE_ME",
_20
"version": "0.0.0",
_20
"title": "CHANGE_ME",
_20
"description": "CHANGE_ME",
_20
"builders": {
_20
"react": "3.x",
_20
"messages": "1.x",
_20
"docs": "0.x",
_20
+ "admin": "0.x"
_20
},
_20
"dependencies": {},
_20
"registries": [
_20
"smartcheckout"
_20
],
_20
"policies": [],
_20
"$schema": "https://raw.githubusercontent.com/vtex/node-vtex-api/master/gen/manifest.schema"
_20
}

  1. Edit the vendor,name, title anddescription of the application:

_20
//manifest.json
_20
{
_20
+ "vendor": "appliancetheme",
_20
+ "name": "admin-sandbox",
_20
"version": "0.0.0",
_20
"title": "Admin Sandbox",
_20
"description": "Admin Sandbox",
_20
"builders": {
_20
"react": "3.x",
_20
"messages": "1.x",
_20
"docs": "0.x",
_20
"admin": "0.x"
_20
},
_20
"dependencies": {},
_20
"registries": [
_20
"smartcheckout"
_20
],
_20
"policies": [],
_20
"$schema": "https://raw.githubusercontent.com/vtex/node-vtex-api/master/gen/manifest.schema"
_20
}

NOTE: If you are taking the course at your own store and developing your own app, remember that you will have to go through the form of whitelist.

  1. Add vtex.styleguide as a dependency, we will use it later in the course:

_22
//manifest.json
_22
{
_22
"vendor": "appliancetheme",
_22
"name": "admin-sandbox",
_22
"version": "0.0.0",
_22
"title": "Admin Sandbox",
_22
"description": "Admin Sandbox",
_22
"builders": {
_22
"react": "3.x",
_22
"messages": "1.x",
_22
"docs": "0.x",
_22
"admin": "0.x"
_22
},
_22
"dependencies": {
_22
+ "vtex.styleguide": "9.x"
_22
},
_22
"registries": [
_22
"smartcheckout"
_22
],
_22
"policies": [],
_22
"$schema": "https://raw.githubusercontent.com/vtex/node-vtex-api/master/gen/manifest.schema"
_22
}

  1. In the project's root directory, create an /admin directory, its structure should be:

_10
|
_10
|_ CHANGELOG.md
_10
|_ docs/
_10
|_ messages/
_10
|_ react/
_10
+|_ admin/
_10
|_ package.json
_10
|_ manifest.json
_10
|_ yarn.lock


Answer sheet

See answer sheet for manifest.json
manifest.json

_19
{
_19
"vendor": "appliancetheme",
_19
"name": "admin-sandbox",
_19
"version": "0.0.0",
_19
"title": "Admin Sandbox",
_19
"description": "Admin Sandbox",
_19
"builders": {
_19
"react": "3.x",
_19
"messages": "1.x",
_19
"docs": "0.x",
_19
"admin": "0.x"
_19
},
_19
"dependencies": {
_19
"vtex.styleguide": "9.x"
_19
},
_19
"registries": ["smartcheckout"],
_19
"policies": [],
_19
"$schema": "https://raw.githubusercontent.com/vtex/node-vtex-api/master/gen/manifest.schema"
_19
}

On this page