Skip to content

adtekio/adtekio.github.io

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

What is Adtek.io?

Adtek.io provides a complete system for analysing mobile marketing campaigns
across multiple adnetworks. It allows for mobile application authors to better
understand their marketing spends and more easily try out new adnetworks.

Some of the features of Adtek.io:

  • Provide an overview of marketing spending and providing a unified comparison
    across all utilised adnetworks
  • Click fraud by tracking campaign links. This includes country mistargetting,
    bot fraud and device mistargetting.
  • User attribution to adnetworks by matching clicks to real installs.
  • Server-to-server communication to adnetworks so that adnetworks can optimise
    their campaigns.

Adtekio is splitted into various components and these can all be checked
out using this central repo.

Adtek.io Project Tools

This repo is intended to be the single source of all Adtekio code, meaning
that all repos and gem-repos are linked into this single repository and are
installed and maintained from it.

To get all repos installed and setup:

git config --global github.user gorenje #### replace gorenje with your github user name
git clone [email protected]:adtekio/adtekio.github.io.git adtekio
cd adtekio
gem install bundler
bundle
rake project:adtekio:setup_git

Repositories

Frontend

accounting Application for handling payments and accounting.
🔗
dashboard Central dashboard for analytics and configuration of adnetworks. It provides an overview of campaign performance and campaign fraud.
🔗
website Landing page and start page.
🔗

Gem & SDK

adnetworks Collection of importers for various Adnetworks.
 
tracking.gem Gem for generating in-app tracking events. Its a demostration of what an SDK needs to do.
 
tracking.ios iOS SDK for tracking
 
utilities Collection of utilities required across applications.
 

Kafka

consumers Kafka consumers used for: updating click statistics, matching users to adnetworks (aka user attribution) and server-to-server (aka postbacks) communication to the adnetworks for specific in-app events.
🔗
kafkastore Bridge between load balancers (i.e. tracking endpoints) and kafka. Its main responsible to collect single events (i.e. campaign link clicks and in-app events) together and batch insert these into kafka.
🔗

Load Balancer

loadbalancer.clicks Campaign click tracking. It redirects campaign clicks to the correct application store (i.e. Apples or Googles) and passes click events onto the kafkastore for eventual storage in kafka. It also provides SSL termination and load balancing.
🔗 🔗
loadbalancer.inapp In-app tracking endpoint. Providing load balancing and ssl termination for in-app tracking calls. It pushes these events off to the kafkastore for eventual storage in kafka.
🔗 🔗

Adding a new repo

Adding a new repo requires the extending the project yaml and then you’ll need to update your local repo setup and regenerate the documenation:

rake project:adtekio:setup_git
rake doco:generate:readme.textile

and then push to master

Issue tracking

Feature development is coordinated via GitHub.

Using this git commit hook it’s possible to create a branch using the naming schema ‘issue_xxx’ and each commit on that branch will automagically include a “refs #xxx”.

Updating all repos and installing all gems

for n in */.git
do
  dname=`dirname $n`
  cd $dname
  echo "=====> $dname"
  git fetch --all
  git merge master/master
  git push
  gem install bundler
  bundle
  cd ..
done

Useful links

Generated by rake doco:generate:readme.textile

About

Start here to initialize codebase

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages