;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Petiscos à base de porco são tema de festival. Aprenda seis receitas

Torresmo, um dos carros-chefe da chef Fernanda Maion - Divulgação
Torresmo, um dos carros-chefe da chef Fernanda Maion Imagem: Divulgação

Priscila Gorzoni

Colaboração para Nossa

27/02/2021 04h00

As comidas de botecos são famosas no mundo inteiro pelos seus sabores, criatividades, inovações e diferenciais regionais. De tão queridos se tornaram os objetos de uma competição anual que acontece em São Paulo, o Festival Comida de Boteco 2021.

Até o domingo (28), chefs e culinaristas de eventos gastronômicos de São Paulo competem pelo voto do público, que escolherá o melhor prato elaborado com ingredientes de proteína suína.

Mais delícias suínas do festival - Divulgação - Divulgação
Mais delícias suínas do festival
Imagem: Divulgação

Uma das participantes é a chef Fernanda Maion, famosa pelas receitas ensinadas no Programa Mulheres, da TV Gazeta, que explica: "Nosso carro chefe é o torresmo frito na hora o que confere crocância e sabor inigualável".

A Sra Pururuca

Fernanda mora há 38 anos na cidade de São Caetano do Sul e trabalha com eventos desde 2018. Ela criou a marca Sra Pururuca e sua comida de boteco e especialidade é a coxinha de torresmo, que será uma das atrações do festival.

Outra receita de sucesso é seu bolinho de mandioca, com receita revelada para Nossa.

Ao sabor dos Saruchas

O chef Richard Gonçalves, de 40 anos, começou a sua trajetória na cozinha há 30 anos em São Paulo. Na época, era no restaurante do seu pai, que se chamava Universo do Sol. "Desde aí nunca sai da cozinha", conta.

No festival, o Saruchas apresenta o petisco de boteco, otorresmo de rolo e tradicional, além do torresmo com carreteiro e tropeiro. Além deles, Richard preparou um prato novo chamando "crackling roll", criado em 2015. Ele é uma leitura nova do prato oriental hot roll e mistura mini rodelas de torresmo, pimenta biquinho, couve, crem cheese e especiarias.

Cavra

Cleber Santana, tem 41 anos, mora em São Paulo e participará do Festival com a sua panceta no espetinho, regada à cachaça.

O seu negócio começou com a Cachaça Cavra do pai e ou para ele após o seu falecimento.

"Ele deixou 5 mil litros dos estilos ouro e prata. Comecei a maturar com frutas e criei a marca em 2017. Sempre fazíamos churrasco no alambique em Embu Guaçu, quando nasceu a panceta no espetinho, regada a nossa cachaça. Começamos somente com a cachaça e depois de inúmeros testes conseguimos elaborar a panceta no espeto regada a cachaça Cavra. Mas a cereja do bolo é a nossa cachaça Alambicada em cobre com seu toque macio e amadeirado", conta Cleber.

Tuturresmo caipira

Ida Helena de Oliveira Lara, de 57 anos, de São Paulo, criou o tuturresmo nas reuniões de amigos. "Fazia torresmo para a galera".

Daí foi um o para transformar o torresmo caipira em um cone servido aos clientes. Ganhou o paladar e o coração. Assim, acredita Ida, quando lembra que: "O segredo do sucesso é o amor no que faz".

O seu maior desafio em participar do Festival é servir um torresmo que no final o cliente diga: divino.

Matsuda

Para o Festival dos Botecos, Márcio Matsuda, de 46 anos, de São Bernardo do Campo, que é Proprietário do Matsuda Food/Yoshi Alimentos, preparou o katsu kare, um prato típico dos Izakayas (botecos) no Japão.

A iguaria é uma mistura de lombo de porco empanado na farinha panko, acompanhado de gohan e kare.

"Como o tema do evento são as delícias do porco, resolvemos fazer o katsukare que é um prato muito comum em matsuris no Japão. Tivemos tanta aceitação com nossos pratos, que em 2015, começamos a fornecê-los nas lojas de conveniência japonesa e supermercados. Hoje temos mais de 150 pontos de venda espalhado pela grande SP e ABC", conta Márcio.

Ki Delícia

Andreia Costa, 48 anos, de São Paulo da Ki Delícia, concorrerá com seu carro chefe as Batatas e Bacon no Cone. O diferencial do meu produto é a crocância da batata e o bacon sequinho.

Para mais informações do festival: https://comedorianapraca.com.br/