Scroll-controlled 3D showcase: a tray rotates and transitions to a single Coxinha model
template-restaurante — HTML Business Template
By OneBitCodeBlog
An HTML website template for restaurants, featuring a scroll-controlled 3D showcase, a dish gallery with category filtering, and an order button linking to iFood. Built with Vite and Three.js, with no backend.
Explore the design
Compare the page layouts and mobile experience. Open any screenshot for a closer look.
Preview provided in the project README.
One original preview is available. Open the full image to inspect the design.
Screenshots show visual appearance; interactive behavior may differ.
What stands out
A quick read of the recorded project description.
Gallery of eight dishes with category filtering and a "Quero experimentar" button
GLB models optimized with Meshopt and WebP textures, reducing size from 21.7 MB to 3.9 MB
Mobile adaptation, prefers-reduced-motion support, and fallback images when WebGL fails
Header order button and mobile fixed action bar linking to iFood
Includes styleguide.html showcasing colors, typography, photography, and components
Template Details
template-restaurante is a restaurant website template open-sourced by OneBitCodeBlog on GitHub under the MIT license. It was originally created as a redesign study for Casa da Esquina in Janaúba, Brazil. The project uses HTML, CSS, JavaScript, Vite, and Three.js, with no UI framework and no backend; ordering and payment are completed off-site.
The page includes a scroll-controlled 3D showcase (a tray rotates and transitions to a single Coxinha), a gallery of eight dishes with category filtering, a homepage introduction, a video preview, customer reviews, an address with a map, directions, Instagram and WhatsApp links, as well as a header order button and a mobile fixed action bar. The template also comes with a separate styleguide.html for viewing colors, typography, photography, and components.
Before use, note the following: all order buttons currently point to the iFood website and need to be replaced with the restaurant's own links; the buttons do not add items to a cart or call the iFood API. The heading font Veneer is a commercial font and is not included in the repository; you must provide a licensed font file yourself or switch to the included Barlow. The panoramic photos are placeholders, the reviews are fictional, and the video is a six-second animation; these should be replaced with real assets before launch. Local development requires Node.js 22.12 or later, and the site must be accessed through the Vite development server; opening the HTML files directly will not load modules and 3D models correctly.
Is it right for your project?
Use Cases
- Building a showcase website for a restaurant with a 3D display and dish gallery
- Learning Three.js scroll-driven animation and GLB model optimization workflow
- Practicing Vite build and static deployment as an HTML/CSS/JavaScript project
- Quickly replacing copy, images, and order links on an existing restaurant brand
Suitable For
- Restaurants or small food brands that need to display a menu, address, and ordering entry point
- Front-end developers looking for references on scroll-based 3D interaction and model optimization
- Sites using Vite and static hosting that do not require a backend or online payment
- Teams willing to prepare their own font licenses and real image and review assets
Getting started & customization
Use these recorded setup notes alongside the repository instructions for your chosen version.
- 1
Local running requires Node.js 22.12 or later and npm; run npm ci then npm run dev -- --port 5173
- 2
Must be accessed through the Vite development server; opening the HTML files directly will not load modules and 3D models correctly
- 3
Order buttons default to https://www.ifood.com.br/ and need to be replaced in index.html with the restaurant's own links; the buttons do not add items to a cart or call the iFood API
- 4
The heading font Veneer is a commercial font and is not included in the repository; you can switch to the included Barlow (OFL license) or provide your own licensed font files and update assets/fonts/styleguide-fonts.css
- 5
Panoramic photos are placeholders, reviews are fictional, and the video is a six-second animation; replace them with real assets before launch. Third-party images, fonts, models, etc. are not re-licensed under the MIT license and must be checked against their respective licenses
License & source material
Usage conditions & limitations
Free to use · keep license noticeThis listing covers the free version under the MIT license in the public repository; the free scope applies to that version's code and does not mean external services or third-party assets are free.
Must comply with when using
- You are allowed to use, modify, commercialize, and distribute this version's code 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
- Order buttons default to the iFood website and need to be replaced in index.html with the restaurant's own links; the buttons only open the platform and do not add items to a cart or call the iFood API.
- The heading font Veneer is a commercial font and is not included in the repository; you must provide licensed font files yourself or switch to the included Barlow (OFL license).
- Third-party photos, trademarks, 3D models, fonts, and other media are not re-licensed under the MIT license; check their respective licenses and replace them with licensed assets.
- Panoramic photos are placeholders, reviews are fictional, and the video is a six-second animation; replace them with real assets before launch.
- Local running requires Node.js 22.12 or later and npm, and must be accessed through the Vite development server; opening the HTML directly will not load modules and 3D models correctly.
- Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses; do not judge solely based on the code's MIT license.
- External services such as domains, hosting, databases, payments, or AI may incur additional charges.
View Original Text Basis
Permission is hereby granted, free of charge
Original License Text
Os CTAs apontam provisoriamente para `https://www.ifood.com.br/`. Troque todas as ocorrências no `index.html` pelo link oficial do seu restaurante.
Original README
O arquivo comercial da Veneer não está incluído. Para usá-la na web, adicione um arquivo com licença adequada
Original README
Fotos, marcas, modelos 3D, fontes e outras mídias de terceiros **não são relicenciados pela MIT**
Original README
Substitua esses exemplos pelas mídias e avaliações reais do seu restaurante antes de disponibilizar o site ao público.
Original README
https://github.com/OneBitCodeBlog/template-restaurante/blob/main/LICENSEhttps://github.com/OneBitCodeBlog/template-restaurante/blob/main/README.mdRequer Node.js **22.12 ou superior** e npm.
Original README
Compiled by DeepSeek based on repository license and README ·2026-10-02. 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
- Partly documented · 60 / 100
- Technologies
- HTML
- Website type
- Corporate Website
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-10-01
- Screenshot last checked
- 2026-10-02
No demo link is recorded. Use the repository instructions to evaluate the project locally; the screenshot alone cannot establish interactive behavior.
The catalog identifies HTML 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.
Automatically checked against source and license rules; no manual editorial review.
Inspect the recorded source material
SHA-256: aa41d9bda3f6e8e0525625a09719b5ea743ccc98d9ecdba0629cc7f54674e97f
2026-10-02T15:22:23.728Z
Source file / repository# template-restaurante Template de site para restaurantes, com apresentação 3D controlada pela rolagem, fotos de pratos, filtros por categoria e chamadas para pedidos no iFood. Criado como estudo de redesign da **Casa da Esquina**, em Janaúba, MG, para compartilhar com a comunidade OneBitCode. O projeto usa **HTML, CSS, JavaScript, Vite e Three.js**, sem framework de interface e sem backend. O pedido e o pagamento acontecem fora do site. ## Prévia do projeto ▶ **[Assistir à demonstração do site (MP4 · 23 segundos · 5 MB)](https://raw.githubusercontent.com/OneBitCodeBlog/template-restaurante/main/docs/videos/demonstracao.mp4)** Gravação do site em funcionamento, com a transição 3D e a navegação pelas seções. Vídeo otimizado em 1600 × 890, a 30 fps. ### Apresentação com modelos 3D  ### Galeria de pratos  ## Rodar localmente Requer Node.js **22.12 ou superior** e npm. ```bash git clone https://github.com/OneBitCodeBlog/template-restaurante.git cd template-restaurante npm ci npm run dev -- --port 5173 ``` - Site: [http://127.0.0.1:5173/](http://127.0.0.1:5173/) - Styleguide: [http://127.0.0.1:5173/styleguide.html](http://127.0.0.1:5173/styleguide.html) Use o servidor local: abrir o HTML diretamente pelo explorador de arquivos não carrega os módulos e modelos corretamente. ## O que tem no template - Bandeja de coxinhas em 3D que gira e dá lugar a uma coxinha individual durante a rolagem. - GLBs otimizados: **21,7 MB → 3,9 MB**, com Meshopt e texturas WebP. - Enquadramento próprio para celular, preferência por movimento reduzido e foto alternativa caso WebGL falhe. - Galeria de oito pratos com filtros e links “Quero experimentar”. - Botão de pedido no cabeçalho e barra fixa contextual no celular. - Apresentação da casa, galeria, prévia de vídeo e seção de depoimentos. - Endereço com mapa, rotas, Instagram e WhatsApp. - Styleguide em HTML com paleta, tipografia, fotografia e componentes. ## Personalizar | O que mudar | Onde | |---|---| | Nome, pratos, textos, contatos, endereço e mapa | `index.html` | | Cores, fontes, tamanhos e responsividade | `src/site.css` | | Luz, câmera e transição dos modelos | `src/main.js` | | Referência visual | `styleguide.html` | | Fotos e fontes | `assets/` | | Modelos usados no site | `public/models/` | | Mídias de demonstração | `public/media/` | ### Pedidos Os CTAs apontam provisoriamente para `https://www.ifood.com.br/`. Troque todas as ocorrências no `index.html` pelo link oficial do seu restaurante. Os botões dos pratos apenas abrem a plataforma: não adicionam itens a um carrinho nem integram a API do iFood. ### Tipografia Os títulos usam a família **Veneer**, quando instalada localmente, com **Barlow** como alternativa. O arquivo comercial da Veneer não está incluído. Para usá-la na web, adicione um arquivo com licença adequada e atualize `assets/fonts/styleguide-fonts.css`, ou escolha outra fonte. Barlow está incluída com sua licença OFL. ### Conteúdo de exemplo A foto panorâmica é ilustrativa e os depoimentos são fictícios, identificados na página. O vídeo é uma animação de seis segundos sobre uma foto do cardápio. Substitua esses exemplos pelas mídias e avaliações reais do seu restaurante antes de disponibilizar o site ao público. Atualize também os dados da Casa da Esquina e os contatos no styleguide. ## Build ```bash npm run build npm run preview ``` O site é gerado em `dist/`. O styleguide também entra no build como página separada. Publique essa pasta em uma hospedagem estática. Os caminhos atuais consideram publicação na raiz do domínio. ## Otimizar os modelos novamente ```bash npm run optimize:models ``` O script lê `model-sources/`, preserva os originais e grava as versões leves em `public/models/`. Utiliza glTF Transform, Meshopt e Sharp; o decoder necessário já está integrado ao Three.js. Os números de tamanho e triângulos ficam em `pesquisa/model-optimization.json`. ## Estrutura ```text ├── index.html # Página do restaurante ├── styleguide.html # Guia visual navegável ├── src/ # Estilos e interações ├── assets/ # Fotos, logos e fontes ├── public/ # Modelos e mídia servidos pelo Vite ├── model-sources/ # GLBs originais para reotimização ├── scripts/ # Pipeline de otimização ├── pesquisa/ # Inventário e relatórios └── docs/ # Notas de implementação ``` ## Contribuir Issues e pull requests são bem-vindos. Para alterações visuais, inclua uma captura de tela e confira desktop, celular e a preferência por movimento reduzido. Execute `npm run build` antes de enviar sua contribuição. ## Licença e créditos O código e a documentação autorais usam a [licença MIT](LICENSE). Fotos, marcas, modelos 3D, fontes e outras mídias de terceiros **não são relicenciados pela MIT**. Consulte [ASSETS.md](ASSETS.md) para as origens e licenças disponíveis; substitua as mídias por arquivos que você tenha autorização para reutilizar no seu próprio restaurante. O template é um estudo da comunidade e não representa uma integração oficial com iFood, Google ou os canais do restaurante.
Explore similar templates
Compare previews and descriptions within the same stack and category.

mazer
Mazer is a free and open-source Bootstrap 5 admin dashboard and landing page template that does not depend on jQuery. It provides prebuilt releases, source builds, and CDN inclusion, and includes dark mode, perfect-scrollbar, and ApexCharts examples.
HTML · Admin dashboard

Freelancer
A bright, single-page Bootstrap portfolio template for freelancers, designers, and small studios. It includes a responsive portfolio grid with modal detail windows and an SB Forms contact form that requires an API token.
HTML · Portfolio

Creative
A single-page marketing template by Start Bootstrap for creative agencies and product services, built on Bootstrap with SCSS, featuring a portfolio grid and call-to-action sections. It includes pre-set SB Forms markers for form integration and npm build scripts for source customization.
HTML · Corporate Website

startbootstrap-agency
Agency is a one-page Bootstrap portfolio theme from Start Bootstrap, MIT licensed. It includes a responsive portfolio grid with modal details and a preconfigured SB Forms contact form that requires an API token.
HTML · Corporate Website

startbootstrap-landing-page
A general-purpose Bootstrap landing page template from Start Bootstrap, MIT licensed, with a Pug/SCSS/npm build pipeline.
HTML · Corporate Website

Landing-Page
A general-purpose landing page HTML template maintained by Tailwind Toolbox, written in pure HTML and loading the complete Tailwind CSS via CDN.
HTML · Corporate Website
