AstroVueE-commerce

tema-dose — Astro Ecommerce Template

By ecomplus

A Cloud Commerce e-commerce theme for the Brazilian health and sports nutrition category, built on Astro and Vue, offering goal-based navigation, cost-per-serving comparison, and subscription modules, with built-in Anvisa compliance notices.

Explore the design

Compare the page layouts and mobile experience. Open any screenshot for a closer look.

3 previews
Desktop homepage1 / 3
Desktop captureTop of page

Actual screenshot captured by the server browser.

All pages & views 3

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-10-13View source

What stands out

A quick read of the recorded project description.

01

Cloud Commerce store theme built on Astro and Vue, aimed at the supplements and sports nutrition category

02

Adds the NichoSuplementosSection.astro category component, including goal-based navigation, cost-per-serving comparison, open labels, and a subscription entry point

03

Homepage configures a dual-slide hero, three product showcases, a three-banner grid, and a category section

04

Built-in Anvisa regulatory notices, with copy framed as "supports daily routine" rather than "treats disease"; notices appear in visible page areas

05

Uses an indigo-purple primary color with a life green secondary color, distinct from the black-and-yellow style common in the fitness category

06

Provides additional Portuguese pages such as contact, returns, and terms; the returns page covers scenarios such as seals and taste

Template Details

tema-dose is a Cloud Commerce store theme from E-Com Plus, positioned as a demo storefront for the supplements and sports nutrition category. It is a themed adaptation of the ecomplus/store starter template, reusing existing structures from the food category (repurchase, shelf life, batch) and the beauty category (goal-based navigation, subscription), and adds an Astro component as a category showcase section.

The theme configures a dual-slide hero, three product showcases, a three-banner grid, and a supplement category section on the homepage; the category section includes goal-based navigation, cost-per-serving comparison, open labels, a subscription entry point, and regulatory notices. The layout layer adds a footer with a "goals" list and promotional bars (cost per serving, shipping, subscription). The color scheme uses indigo-purple as the primary color and life green as the secondary color, replacing the black-and-yellow palette common in the fitness category.

Note that this category does not yet appear on the official site; the brand name, logo, and domain are placeholders; the cost-per-serving table is a static illustration and does not come from product data; the logo and icons are placeholder bitmaps; some routes are accessible only after the corresponding category exists in the catalog. The demo site is noindex, and robots.txt blocks crawling by default.

AstroVueE-commerce

Is it right for your project?

Use Cases

  • Build an e-commerce storefront demo for the supplements or sports nutrition category
  • Validate a category structure that organizes product navigation by goal (e.g., sleep, immunity, focus)
  • Show cost-per-serving comparison in product showcases as a differentiating selling point
  • Build a storefront front end for subscription-based or repeat-purchase health categories
  • Use as a starting point for secondary development of a Cloud Commerce theme, replacing placeholder branding and assets

Suitable For

  • E-commerce operators in the supplements, sports nutrition, and health categories
  • Stores that need to organize product navigation by goal rather than by ingredient
  • Health-focused merchants who want to include regulatory compliance notices in the front end
  • Developers using E-Com Plus Cloud Commerce who need an Astro theme

Getting started & customization

Use these recorded setup notes alongside the repository instructions for your chosen version.

  1. 1

    Run npm i to install dependencies, npm run dev to start the local service, and npm run build to build

  2. 2

    The product catalog is remote data; configure an E-Com Plus store via npm run setup, otherwise product showcases will be empty

  3. 3

    Before launch, replace the name, domain, logo, color scheme, and contact information in settings.json

  4. 4

    Replace the logo, icons, and banners under public/img/uploads/; current images are from Unsplash, with attribution in CREDITOS.md

  5. 5

    robots.txt currently blocks all crawling because the demo site is noindex; adjust before going live

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

This entry covers the free version in the public repository under the MIT license; the free scope is the code of that version and does not mean external services or third-party assets are free.

Must comply with when using

  • You may use, modify, commercialize, and distribute the code of this version for free.
  • When distributing copies or substantial portions of the code, retain the original author's copyright notice and the full MIT license notice.
  • The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.

Additional costs & items to verify

  • The README mentions Firebase integration; configure it yourself before enabling related dynamic features, and check Firebase quotas and charges.
  • Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses; the code's MIT license alone is not sufficient to determine this.
  • External services such as domain, hosting, database, payment, or AI may incur separate charges.
  • The product catalog is remote data; you must configure an E-Com Plus store (npm run setup) to display product showcases, otherwise the showcases will be empty.
  • Some routes (e.g., /s/massa, /assine) respond only after the corresponding category exists in the catalog.
  • The cost-per-serving comparison table is a static illustration and does not come from product data, so it cannot perform real calculations.
  • The logo and icons are placeholder bitmaps and must be replaced before launch.
  • robots.txt currently blocks all crawling because the demo site is noindex; adjust before going live.
  • The current banner photos are from Unsplash; attribution must follow CREDITOS.md, and you must verify the asset licenses yourself.
  • Compliance copy review must cover the entire site, not only pages with notices.
View Original Text Basis

Permission is hereby granted, free of charge

Original License Text

O catálogo é remoto: sem uma loja E-Com Plus configurada (`npm run setup`), as vitrines de produto vêm vazias

Original README

As rotas (`/s/massa`, `/assine`…) só respondem depois que o catálogo tiver as categorias correspondentes.

Original README

**A tabela de custo por dose é maquete estática.** Não vem do cadastro.

Original README

Logo e ícone são wordmarks placeholder rasterizados.

Original README

`functions/ssr/public/robots.txt` — hoje bloqueia tudo, porque a demo é `noindex`

Original README

as fotos atuais vêm do Unsplash; créditos em `CREDITOS.md`

Original README

A revisão regulatória da copy precisa cobrir o site inteiro, não só as páginas com aviso

Original README
https://github.com/ecomplus/tema-dose/blob/main/LICENSEhttps://github.com/ecomplus/tema-dose/blob/main/README.md

Compiled by DeepSeek based on repository license and README ·2026-10-13. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.

Project checks & description sources

Template Information

Source platforms
GitHub
Documentation and maintenance reference score
More documented · 85 / 100
Technologies
Astro · Vue
Website type
E-commerce
How this score is calculated

Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.

What to verify for this project

Repository update recorded
2026-08-03
Screenshot last checked
2026-10-13

A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.

The catalog identifies Astro as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.

Use a selection guide →

How this description was prepared

AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.

Review declaration: [email protected] · 2026-10-13

Inspect the recorded source material

SHA-256: b44efc2dc0b222d634f7876bc8575f67e2976a00291619797a823117e6a13d90

2026-10-13T01:26:02.794Z

Source file / repository
# Dose — loja demo do nicho de saúde e suplementos

Cópia do starter [`ecomplus/store`](https://github.com/ecomplus/store)
tematizada para **suplementação e bem-estar**. Saúde é a 3ª categoria em volume
do e-commerce brasileiro e cresceu ~19%.

> **Este nicho ainda não existe no site institucional.** Não há marca em
> `src/config/brands.ts` nem página em `/segmentos/`. O posicionamento foi
> **proposto**, não portado. Nome, logo e domínio são placeholders.

## É o nicho de menor esforço marginal do conjunto

Reaproveita quase inteiro o que já foi construído em **alimentício** (recompra
previsível, restrição, validade, lote) e em **beleza** (navegação por objetivo,
assinatura). Se a ideia é validar mais um vertical gastando pouco, é por aqui.

Lojas do setor já na base: **Suplementos Ribeirão Preto**, **Grãos da Vida**,
**Cogumelaria BH** (cogumelos funcionais), **Blow Gummies** (gummies
capilares), **Maia Work** (jalecos e scrubs, na ponta profissional).

## ⚠️ Guardrail regulatório — ler antes de editar a copy

**Suplemento alimentar não é medicamento.** Pela regulação da Anvisa não se
pode atribuir a suplemento propriedade de tratar, curar ou prevenir doença.

Toda a copy desta variante descreve **objetivo** ("apoiar a rotina de sono") e
nunca **efeito terapêutico** ("trata insônia"). O aviso aparece **visível na
página**, no fim da seção de nicho e na página de trocas — não só em comentário
de código.

Regra prática ao editar: se a frase prometeria resultado clínico, ela não
entra. Sem exceção, mesmo que o concorrente faça. É a diferença entre uma demo
que o lojista pode usar e uma que cria passivo para ele.

## O diferencial de vitrine: custo por dose

É a única métrica que permite comparar potes de tamanhos e concentrações
diferentes — e quase nenhuma loja do nicho mostra, porque na maioria das vezes
ela não favorece o vendedor. Colocá-la na vitrine é a aposta de posicionamento
desta variante.

## O que foi customizado em relação ao starter

| Arquivo | O que mudou |
|---|---|
| `functions/ssr/content/settings.json` | Nome, descrição, domínio, logo/ícone, `primaryColor` índigo-violeta + `secondaryColor` verde-vital, 5% no Pix, 6x sem juros, frete grátis a partir de R$ 199 |
| `functions/ssr/tailwind.config.js` | Escala neutra levemente violeta, canto médio |
| `functions/ssr/content/layout.json` | Pitch bar (custo por dose, frete, assinatura), rodapé com lista de "Objetivos", `ogImage` |
| `functions/ssr/content/pages/home.json` | Hero de 2 slides, 3 vitrines, grade de 3 banners e a seção de nicho |
| `functions/ssr/src/sections/NichoSuplementosSection.astro` | **Novo.** Navegação por objetivo, comparativo de custo por dose, rótulo aberto, assinatura e o aviso regulatório |
| `functions/ssr/src/sections/_Sections.astro` | Registro da seção `c:nicho-suplementos` |
| `functions/ssr/content/extra-pages/` | Contato, trocas (lacre, "não me caiu bem", sabor não é defeito) e termos em PT-BR |
| `functions/ssr/public/img/uploads/` | Banners do Unsplash; imagens do starter removidas. Créditos em `CREDITOS.md` |

## Por que violeta e não preto-e-amarelo

Suplemento no Brasil costuma vestir preto-e-amarelo agressivo de academia — e
isso afasta metade do público. Sono, imunidade e foco não vendem com estética
de hipertrofia. O violeta puxa para recuperação e bem-estar; o verde marca o
dado positivo (custo por dose, economia).

## Por que a seção de nicho é um componente, e não HTML no CMS

O UnoCSS/Tailwind desta stack varre apenas `./src/**` — classe utilitária
escrita dentro de `content/pages/*.json` (seção `custom-html`) não gera CSS. Por
isso a vitrine do nicho é um `.astro` em `src/sections/`, registrado pela
convenção `c:` que o `_Sections.astro` já previa.

## Rodando

```bash
npm i
npm run dev     # http://localhost:3000
npm run build
```

O catálogo é remoto: sem uma loja E-Com Plus configurada (`npm run setup`), as
vitrines de produto vêm vazias — o hero, os banners e a seção de nicho
renderizam normalmente.

## Pendências conhecidas

- **A tabela de custo por dose é maquete estática.** Não vem do cadastro.
  Calcular de verdade depende de dose e porções estarem cadastradas como
  especificação de produto — é o primeiro item a especificar se a hipótese
  avançar, porque é o diferencial inteiro da variante.
- Logo e ícone são wordmarks placeholder rasterizados.
- As rotas (`/s/massa`, `/assine`…) só respondem depois que o catálogo tiver as
  categorias correspondentes.
- A revisão regulatória da copy precisa cobrir o site inteiro, não só as
  páginas com aviso — está anotado em `terms.md`.

## Como atualizar a base da plataforma

Este repositório é uma **casca fina**. O storefront, os componentes e a lógica
de loja moram nos pacotes `@cloudcommerce/*`, não aqui. Atualizar o tema para
uma versão nova da plataforma **não** é fazer merge com o starter
[`ecomplus/store`](https://github.com/ecomplus/store) — é subir a versão das
dependências, exatamente como as lojas em produção fazem: a
[tiasonia](https://www.tiasonia.com.br) tem mais de 260 commits `Update to v`
no próprio repositório e nenhum merge com o starter.

Todos os pacotes `@cloudcommerce/*` andam na mesma versão, na raiz e em cada
grupo de functions (`ssr`, `many`, `with-apps`):

```bash
# 1. ver a versão mais recente e o changelog
npm view @cloudcommerce/cli version
# https://github.com/ecomplus/cloud-commerce/releases

V=2.61.4   # troque pela versão alvo

# 2. raiz
npm i -D @cloudcommerce/cli@$V @cloudcommerce/eslint@$V

# 3. cada grupo de functions
(cd functions/ssr && npm i \
  @cloudcommerce/api@$V @cloudcommerce/firebase@$V @cloudcommerce/ssr@$V \
  @cloudcommerce/i18n@$V @cloudcommerce/storefront@$V @cloudcommerce/types@$V)
(cd functions/many && npm i \
  @cloudcommerce/feeds@$V @cloudcommerce/firebase@$V @cloudcommerce/passport@$V)
(cd functions/with-apps && npm i \
  @cloudcommerce/events@$V @cloudcommerce/firebase@$V @cloudcommerce/modules@$V)

# 4. validar antes de commitar
npm run build

# 5. commitar no padrão das lojas em produção
git commit -am "Update to v$V"
```

Se o build quebrar depois de atualizar, a correção pertence ao
[`cloud-commerce`](https://github.com/ecomplus/cloud-commerce), não a este
repositório. Aqui só entra o que é **do tema**: `functions/ssr/src/`,
`functions/ssr/content/` e `functions/ssr/public/`.

## Este repositório é um template

Use **"Use this template"** no GitHub para começar uma loja a partir deste tema.
O repositório gerado é independente: não existe upstream para puxar, e a
manutenção segue o fluxo de versão acima.

Antes de ir ao ar, troque o que é placeholder:

- `functions/ssr/content/settings.json` — nome, domínio, logo, cores, contato
- `functions/ssr/public/img/uploads/` — logo, ícone e banners (as fotos atuais
  vêm do Unsplash; créditos em `CREDITOS.md`)
- `functions/ssr/content/extra-pages/` — contato, trocas e termos
- `functions/ssr/public/robots.txt` — hoje bloqueia tudo, porque a demo é
  `noindex`
- `functions/*/config.json` — `storeId` e projeto Firebase (`npm run setup`)

> **Demo publicada:** [tema-dose.web.app](https://tema-dose.web.app) — `noindex`, com
> catálogo compartilhado de demonstração.

---

Documentação do starter: [SETUP.pt-BR.md](./SETUP.pt-BR.md) ·
[Cloud Commerce](https://github.com/ecomplus/cloud-commerce)
Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.