Prebid Universal Creative
- Outstream Video
- Mobile (Coming Soon)
- AMP creatives
- All safeFrame creatives
$ git clone https://github.com/prebid/prebid-universal-creative.git $ cd prebid-universal-creative $ npm install
Build for development
$ gulp serve
Starts a web server at
http://localhost:9999 serving from the project root and generates the following files:
./build/creative.js- Full source code for dev and debug
./build/creative.js.map- Source map for dev and debug
Build for production
prebid-universal-creative as npm package on npmjs.com
When we run
npm publish, prepublish script of package.json is executed. Scripts given in prepublish Run BEFORE the package is packed and published. See https://docs.npmjs.com/misc/scripts
gulp build is executed before publish. It creates two files in dist directory
./dist/creative.js- Minified creative.js source code
./dist/creative.max.js- Unminified source code to help in debugging.
jsDelivr – Open Source CDN is used to serve creative.js file.
We like to test a lot before releasing newer versions.
gulp test // Run unit tests in your local environment
Set the environment variables. You may want to add these to your
~/.bashrc for convenience.
export BROWSERSTACK_USERNAME="my browserstack username" export BROWSERSTACK_ACCESS_KEY="my browserstack access key"
gulp test --browserstack
For End to End testing,
test.localhostin your hosts file.
- Use node version <=8.1.2 since gulp-connect is having a bug in ssl mode. More info here https://github.com/intesso/connect-livereload/issues/79
gulp test --e2e --https
Reason to add specific host to your host file is
- To test against your local build, we had to give local path in dfp creative. Redirecting request is not possible in browserstack.
- On localhost domain you do not receive bid from certain SSP's, hence you have to have some host defined in hosts file. As of now we are using
test.localhostdefined in local host file as well as
Found a bug? Great! This project is in its infancy, and many things can be improved.
Report bugs, request features, and suggest improvements on Github.
Or better yet, open a pull request with the changes you'd like to see.