Um exemplo de solução de software de comércio eletrônico/varejo que demonstra o poder e a flexibilidade do MongoDB.
MEANStore aproveita o vagrant para fornecer um ambiente virtual totalmente funcional com MEANStore / MEANMart em execução.
git clone https://github.com/mrlynn/meanstore.git
cd meanstore
vagrant up
Neste ponto, o aplicativo deve estar instalado e funcionando e pode ser acessado de seu laptop/desktop abrindo o url http://localhost:30001
vagrant ssh # access the vagrant instance
sudo su - # become super user
cd /home/vagrant/meanmart/meanstore # change to project directory
npm run dev # run the application in developer mode
Neste ponto, o aplicativo deve estar instalado e funcionando e pode ser acessado de seu laptop/desktop abrindo o URL http://127.0.0.1:30000 dependendo das configurações específicas em seu arquivo de configuração .env.hackathon.
git clone https://github.com/mrlynn/meanstore.git
cd meanstore
npm install
# unicode doesn't install nicely first pass - try again
npm install unicode
# install faker to generate data
npm install faker
# Set environment
export MONGODB_URI="mongodb://127.0.0.1:27017/hackathon"
# Generate some data...
node data/fake-refrigerators.js
node data/fake-televisions.js
node data/fake-cameras.js
node data/fake-apparel.js
# Create the categories...
node data/category-seeder.js
# Now run it...
npm run dev
Assim que o vagrant terminar o provisionamento, faça ssh na instância:
vagrant ssh
Você deverá descobrir que o MongoDB foi instalado e está em execução. Você também deverá descobrir que um banco de dados e um conjunto de coleções com dados de teste foram criados.
Para usar qualquer uma das APIs incluídas ou métodos de autenticação OAuth, você precisará obter as credenciais apropriadas: ID do cliente, segredo do cliente, chave de API ou nome de usuário e senha. Você precisará passar por cada provedor para gerar novas credenciais.
Atualização do MEANStore 1.0: incluí chaves e senhas fictícias para todos os exemplos de API para que você comece a trabalhar ainda mais rápido. Mas não se esqueça de atualizá-los com suas credenciais quando estiver pronto para implantar um aplicativo.
- Visite o Console do Google Cloud - Clique no botão **Criar projeto** - Digite *Nome do projeto* e clique no botão **Criar** - Em seguida, clique em *APIs e autenticação* na barra lateral e selecione a guia *API* - Clique em **API do Google+** em *APIs Sociais* e, em seguida, clique em **Ativar API** - Em seguida, em *APIs e autenticação* na barra lateral, clique na guia *Credenciais* - Clique em **Criar novo cliente Botão ID** - Selecione *Aplicativo Web* e clique em **Configurar Tela de Consentimento** - Preencha os campos obrigatórios e clique em **Salvar** - Na caixa de diálogo modal *Criar ID do Cliente*: - **Tipo de Aplicativo **: Aplicativo Web - **Origens Javascript autorizadas**: http://localhost:3000 - **URI de redirecionamento autorizado**: http://localhost:3000/auth/google/callback - Clique em **Criar Botão Client ID** - Copie e cole as chaves *Client ID* e *Client secret* em `.env` Observação: quando estiver pronto para implantar na produção, não se esqueça de adicionar seu novo URL às origens Javascript autorizadas e ao URI de redirecionamento autorizado , por exemplo, http://my-awesome-app.herokuapp.com
e http://my-awesome-app.herokuapp.com/auth/google/callback
respectivamente. O mesmo vale para outros provedores.
Observação: após um login bem-sucedido no Facebook, o usuário será redirecionado de volta à página inicial com o hash #_=_
anexado ao URL. Não é um bug. Consulte esta discussão sobre Stack Overflow para saber como lidar com isso.
MEANStore vem completo com uma API que permite consultar e gerenciar o banco de dados MongoDB. Se você quiser revisar as estruturas de dados internas para descobrir como construir um catálogo de produtos usando a metodologia de armazenamento de dados baseada em documentos do MongoDB, uma ótima maneira de começar é usando o Postman. Com o Postman você pode construir solicitações rapidamente, salvá-las para uso posterior e analisar as respostas enviadas pela API. O Postman pode reduzir drasticamente o tempo necessário para testar e desenvolver APIs. Postman se adapta igualmente bem a desenvolvedores individuais, pequenas equipes ou grandes organizações.
Para aproveitar o postman, depois de instalá-lo, basta carregar o URL da API no postman. Por exemplo, para revisar a coleção de produtos se você estiver usando a instalação baseada no vagrant, use o seguinte URL no postman:
http://localhost:30000/api/products
Isso exporá toda a coleção do catálogo de produtos.
[
{
"_id": "584aecaaf580422022aea4fb",
"code": "ref1099",
"name": "Generic Plastic Computer Refrigerator",
"title": "Intelligent IVORY Generic Plastic Computer Refrigerator",
"description": "Est enim aut.",
"taxable": true,
"shipable": true,
"price": 73300,
"Product_Group": "Refrigerator",
"category": "Refrigerator",
"imagePath": "/img/samsung-refrigerator.jpg",
"__v": 0,
"salesYearMonth": [],
"salesYTD": [],
"usersBought": [],
"categories": [],
"update": "2016-12-09T17:40:58.033Z",
"created": "2016-12-09T17:40:58.033Z",
"options": [],
"Attributes": [],
"likes": []
},
...
git checkout -b my-new-feature
git commit -am 'Add some feature'
git push origin my-new-feature