npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

draper_ads

v1.0.3

Published

This package provide a simple way to work with advertising in react

Downloads

1

Readme

Draper-ads

Lib implementa uma maneira simples para se trabalhar com publicidade dentro de projetos React. Com ela implementamos o Prebid, Google Publish Tag. Também contamos com a implementação de duas ferramentas para segmentação de usuários, como o Navegg e Tail Target.

Configurações básicas

Para que seja possível utilizar a biblioteca é necessário que alguns scripts estejam presentes na aplicação, como:

GTM

O Google Tag Manager deve ser inicializado a nível de aplicação, de modo que a funcionalidade da biblioteca está ligada a implementação do mesmo. As variáveis de configuração de slot também devem ser inicializadas através dessa ferramenta, vide a documentação complementar.

https://docs.google.com/document/d/1NeWApcDGcAyxc-Q8RJyZLDWpHDi3XrTftHuB0xU4JT4/edit

Para implementar o GTM é necessário seguir o guia disponibilizado pelo Google, com a devida chave de acesso do seu GTM:

https://developers.google.com/tag-manager/quickstart

GPT

O Google Publish Tag nos trás todas as funções referente ao controle e a chamada de peças publicitárias, sua implementação é feita dentro da biblioteca.

Prebid script

Uma das funcionalidades principais da biblioteca é a implementação do prebid. Atualmente ocorre dentro da biblioteca, através do link do script que está no storage do Reverb. Para cada pacote de Adapeters precisamos de uma versão diferente do script e possivelmente uma nova implementação dessa lib, portanto é melhor mantermos essa implementação dentro da lib, pelo menos até acharmos uma solução para esse problema.

Usando a biblioteca

Para importar os componentes necessários para o funcionamento correto da lib devemos fazer da seguinte forma:

import { AdProvider, AdSlot } from 'draper_ads';

A biblioteca exporta dois componentes React <AdProvider /> & <AdSlot />. de forma que todos os AdSlot devem estar contidos dentro do AdProvider, são as configurações contidas no provider que vão permitir que o slot seja renderizado corretamente.

Exemplo:

<AdProvider pageName="pageExample" targets={[["id", 1], ["tag", "tag123"]]}  tags={["tag", "tagExample"]}>
    <AdSlot name="adslot" slotTarget={{tag: "tagExample"}} appendSlotName="+1" />
</AdProvider>

Glossário de props

  • AdProvider

    • pageName Nome da página onde o provider está sendo utilizado. Serve para que todas os ads sendo renderizados dentro do provider possam consumir esse dado e exibir a peça correta dependendo da página.

    • targets Esses dados são adicionados a chamada para o AdServe.

    • tags É adicionado as tags do TailTarget.

  • AdSlot

    • name Define o nome do slot e o ID que irá aparecer na div do render final. Também é usado para encontrar as configurações do slot que estão nas variáveis globais do GTM.
    • slotTarget Função parecida com targets do provider no entanto é definida apenas para esse slot especificamente.
    • appendSlotName É utilizada quando precisamos adicionar um pós fixo ao nome do slot sem alterar o nome original do slot.