So far Google Analytics has been part of the scaffolding application for quite some time.
I'm guessing it was put there to remind you that a good web application should be data-driven. My project is to help direct new users towards this goal, while still preserving an agnostic framework. Most data marketing services revolve around tracking events or triggering actions based on these events. The most basic of these is the "Signed up" event, which most people would be interested in tracking. Of course, one could simply put some javascript in the view and track the event in GA... but then what happens when you track dozens of events throughout your app and into multiple analytics services (Google Analytics, Mixpanel, KissMetrics...) ? Services like Segment.io provide a unified tracking system with free quotas, and offers a Python SDK. Mixpanel <http://mixpanel.com> also provides a Python SDK. For example, to track the "Signed up" event, one would use mixpanel.track(auth.user_id, 'Signed up') in Mixpanel and analytics.track(auth.user_id, 'Signed up') in Segment. Both syntaxes are very similar. I already see fingers pointed at me for promoting these so please know that, although it requires a butt-load of work, *server-sided Google Analytics tracking is also possible*. I'm hoping this project would get to that eventually. Web2py packs the Auth module, which is a very decent starting kit. I think it could be improved with some kind of agnostic logic for tracking events. I am not sure exactly how to go about this, but I was considering altering Auth functions like this : if log is DEFAULT: log = self.messages['login_log'] if event is DEFAULT: event = self.messages['login_event'] analytics_provider.track(self.user_id, event); Alternatively, a decorator could provide some way to wrap actions and declare events. Another interesting feature would be some kind of appadmin.py panel that tracks all the currently-implemented events running in the applications. This would be very handy in order to track API usage and get the exact nomenclature of your events to connect them with other services. What do you guys think ? -- Resources: - http://web2py.com - http://web2py.com/book (Documentation) - http://github.com/web2py/web2py (Source code) - https://code.google.com/p/web2py/issues/list (Report Issues) --- You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.