Criando um projeto medusajs do zero
Dentro da nossa pasta raiz menthor-ecommerce-2024
nós vamos rodar os seguintes comandos:
npm install @medusajs/medusa-cli -g
Esse comando vai instalar os comandos do medusa no seu terminal.
medusa new medusa-server
Ao terminar vai aparecer três opções, selecione a opção "Skip database setup".
Esse comando vai instalar um projeto novo do medusa e criar uma pasta medusa-server
. Nessa pasta contém as configurações do servidor e o projeto da parte administrativa onde você cadastra os produtos e faz toda a gestão da sua loja.
Dentro da pasta medusa-server
você vai no arquivo package.json e atualizar a linha do scripts.build
.
...
"scripts": {
"clean": "cross-env ./node_modules/.bin/rimraf dist",
"build": "cross-env npm run clean && npm run build:server && npm run build:admin && npm run seed",
"build:server": "cross-env npm run clean && tsc -p tsconfig.server.json",
"build:admin": "cross-env medusa-admin build",
"watch": "cross-env tsc --watch",
"test": "cross-env jest",
"seed": "cross-env medusa seed -f ./data/seed.json",
"start": "cross-env npm run build && medusa start",
"start:custom": "cross-env npm run build && node --preserve-symlinks --trace-warnings index.js",
"dev": "cross-env npm run build:server && medusa develop"
},
...
Nós só adicionamos um && npm run seed
no final para popular o banco de dados quando o servidor for inicializado.
Então vamos no arquivo medusa-config.js
e vamos atualizar a constante projectConfig
deixando exatamente assim:
// ...
const projectConfig = {
jwtSecret: process.env.JWT_SECRET,
cookieSecret: process.env.COOKIE_SECRET,
store_cors: STORE_CORS,
database_url: DATABASE_URL,
admin_cors: ADMIN_CORS,
redis_url: REDIS_URL
};
// ...
Nós tivemos que fazer isso para habilitar o redis e previnir problemas de vazamento de memória reportado nessa issue aqui.
Agora nós vamos criar um novo repositório no GitHub com o nome de medusa-server
.
Então abra o terminal, entre dentro da pasta medusa-server
e rode os seguintes comandos em sequência:
Lembre-se de substituir a parte da url do segundo comando
{seu_usuario_github}
com o seu nome de usuário do GitHub.
git init
git remote add origin https://github.com/{seu_usuario_github}/medusa-server.git
git add .
git commit -m "first commit"
git branch -M main
git push -u origin main
Pronto! Agora seu repositório git já contém todos os arquivos do seu medusa server.