Provide official Piwik Tracking SDK for most popular programming languages #9938

Open
mattab opened this Issue Mar 17, 2016 · 25 comments

Comments

Projects
None yet
5 participants
@mattab
Member

mattab commented Mar 17, 2016

At Piwik, our mission is to provide the best open analytics platform. Part of our mission is to make it as easy as possible to measure and collect data within Piwik from everywhere.

There are already dozens of integrations for other tools that make it easy to track data in Piwik from Wordpress, Drupal, other CMS, Ecommerce platforms, and much more. Besides these integrations with the most popular tools / CMS / Ecommerce (all of these are maintained by community members), it is very important for the success of the Piwik platform to also provide official SDKs for the most popular programming languages.

Top programming languages and Piwik SDK availability

Official Piwik SDK available

All creators/maintainers of our official SDK are part of the Piwik team and listed on our official team page.

SDK creator & maintainer needed!

There is not yet an official Piwik SDK for the following programming languages:

(sources: Github and Pypl)

Creating and maintaining an official Piwik Tracking SDK is a awesome way to make a big positive impact on Piwik!

If you are familiar with any of these technologies and would like to participate into growing open source project, let's start the discussion 👍

@mattab mattab added this to the 2.16.x (LTS) milestone Mar 17, 2016

@mattab mattab added the Major label Apr 1, 2016

@mattab mattab modified the milestones: 3.0.0, 2.16.x (LTS) Apr 1, 2016

@fhemberger

This comment has been minimized.

Show comment
Hide comment
@fhemberger

fhemberger Jul 28, 2017

Contributor

Hi, I'd like to hand over my Node.js client for the Piwik Tracking HTTP API (mentioned above), if you're interested.

It's just a thin wrapper around the HTTP API calls, so it shouldn't require too much attention regarding maintenance. I don't think it makes much sense to change/integrate the JS client API, as most functions relate to browser interactions.

Contributor

fhemberger commented Jul 28, 2017

Hi, I'd like to hand over my Node.js client for the Piwik Tracking HTTP API (mentioned above), if you're interested.

It's just a thin wrapper around the HTTP API calls, so it shouldn't require too much attention regarding maintenance. I don't think it makes much sense to change/integrate the JS client API, as most functions relate to browser interactions.

@brendoncrawford

This comment has been minimized.

Show comment
Hide comment
@brendoncrawford

brendoncrawford Aug 23, 2017

Hi @nkuttler , @mattab :

I am interested in maintaining the Python SDK. Is this the proper place to make this request?

Thanks

brendoncrawford commented Aug 23, 2017

Hi @nkuttler , @mattab :

I am interested in maintaining the Python SDK. Is this the proper place to make this request?

Thanks

@mattab

This comment has been minimized.

Show comment
Hide comment
@mattab

mattab Aug 27, 2017

Member

Awesome to hear @brendoncrawford and welcome to the project! As you now have permission to create/merge PRs and push commits, we're looking forward to see what you make. Probably the Python SDK needs a rewrite to ultimately use more modern APIs and we can discuss this in the Python sdk repo.

Member

mattab commented Aug 27, 2017

Awesome to hear @brendoncrawford and welcome to the project! As you now have permission to create/merge PRs and push commits, we're looking forward to see what you make. Probably the Python SDK needs a rewrite to ultimately use more modern APIs and we can discuss this in the Python sdk repo.

@mattab

This comment has been minimized.

Show comment
Hide comment
@mattab

mattab Aug 27, 2017

Member

@fhemberger Thanks for the offer of handing over your project to the Piwik community. If anyone reading is interested in improving the Node JS Piwik Tracking SDK please leave a comment 🚀

Member

mattab commented Aug 27, 2017

@fhemberger Thanks for the offer of handing over your project to the Piwik community. If anyone reading is interested in improving the Node JS Piwik Tracking SDK please leave a comment 🚀

@fhemberger

This comment has been minimized.

Show comment
Hide comment
@fhemberger

fhemberger Dec 28, 2017

Contributor

@mattab Well, this issue doesn't get much feedback. ;)

The Node.js Piwik Tracking SDK is feature complete (it's basically just a simple wrapper doing the necessary HTTP tracking call to your Piwik installation), so I don't expect it to need much maintenance in the future.

But as I personally don't really use any sort of analytics, I think the Piwik org would be a great place for it.

Contributor

fhemberger commented Dec 28, 2017

@mattab Well, this issue doesn't get much feedback. ;)

The Node.js Piwik Tracking SDK is feature complete (it's basically just a simple wrapper doing the necessary HTTP tracking call to your Piwik installation), so I don't expect it to need much maintenance in the future.

But as I personally don't really use any sort of analytics, I think the Piwik org would be a great place for it.

@Findus23

This comment has been minimized.

Show comment
Hide comment
@Findus23

Findus23 Dec 29, 2017

Member

@fhemberger If no one else volunteers, I would be able to maintain it (as in updating dependencies and going through pull requests, as I don't think there is anything to add to it)
If @mattab wants to, we could then move it to the piwik/ organisation.

Member

Findus23 commented Dec 29, 2017

@fhemberger If no one else volunteers, I would be able to maintain it (as in updating dependencies and going through pull requests, as I don't think there is anything to add to it)
If @mattab wants to, we could then move it to the piwik/ organisation.

@mattab

This comment has been minimized.

Show comment
Hide comment
@mattab

mattab Jan 4, 2018

Member

That's great @Findus23 🎉
@fhemberger would you be OK to make me an admin on the repository so we can move it to the piwik org?

Member

mattab commented Jan 4, 2018

That's great @Findus23 🎉
@fhemberger would you be OK to make me an admin on the repository so we can move it to the piwik org?

@fhemberger

This comment has been minimized.

Show comment
Hide comment
@fhemberger

fhemberger Jan 5, 2018

Contributor

@mattab I can only make you collaborator, but that doesn't give you admin access.
According to GitHub, I need to be given temporary rights in the piwik org to create new repos:

https://help.github.com/articles/transferring-a-repository-owned-by-your-personal-account/#transferring-to-an-organization

Contributor

fhemberger commented Jan 5, 2018

@mattab I can only make you collaborator, but that doesn't give you admin access.
According to GitHub, I need to be given temporary rights in the piwik org to create new repos:

https://help.github.com/articles/transferring-a-repository-owned-by-your-personal-account/#transferring-to-an-organization

@Findus23

This comment has been minimized.

Show comment
Hide comment
@Findus23

Findus23 Jan 5, 2018

Member

@fhemberger
In theory it should work if you transfer the repository to me or @mattab (even though that didn’t work when we tried it with my icon repository)

Member

Findus23 commented Jan 5, 2018

@fhemberger
In theory it should work if you transfer the repository to me or @mattab (even though that didn’t work when we tried it with my icon repository)

@fhemberger

This comment has been minimized.

Show comment
Hide comment
@fhemberger

fhemberger Jan 6, 2018

Contributor

@Findus23 Okay, initiated repo transfer to your account.

Contributor

fhemberger commented Jan 6, 2018

@Findus23 Okay, initiated repo transfer to your account.

@Findus23

This comment has been minimized.

Show comment
Hide comment
@Findus23

Findus23 Jan 6, 2018

Member

@fhemberger And I forwarded it to https://github.com/piwik/piwik-tracker
And it seems like travis also migrated without issues:
https://travis-ci.org/piwik/piwik-tracker/builds/325788795

Member

Findus23 commented Jan 6, 2018

@fhemberger And I forwarded it to https://github.com/piwik/piwik-tracker
And it seems like travis also migrated without issues:
https://travis-ci.org/piwik/piwik-tracker/builds/325788795

@sgiehl

This comment has been minimized.

Show comment
Hide comment
@sgiehl

sgiehl Jan 6, 2018

Member

@Findus23 guess we should rename the repo to something like piwik-nodejs-tracker, to have a consistent naming with the others?

Member

sgiehl commented Jan 6, 2018

@Findus23 guess we should rename the repo to something like piwik-nodejs-tracker, to have a consistent naming with the others?

@Findus23

This comment has been minimized.

Show comment
Hide comment
@Findus23

Findus23 Jan 6, 2018

Member

@sgiehl
I agree, but I am not able to rename it.
I guess @fhemberger also has lost commit rights with the transfer, so it would be nice if you could readd him.

Member

Findus23 commented Jan 6, 2018

@sgiehl
I agree, but I am not able to rename it.
I guess @fhemberger also has lost commit rights with the transfer, so it would be nice if you could readd him.

@sgiehl

This comment has been minimized.

Show comment
Hide comment
@sgiehl

sgiehl Jan 6, 2018

Member

don't have admin rights for new repos as well. Needs to be done by @mattab or @tsteur

Member

sgiehl commented Jan 6, 2018

don't have admin rights for new repos as well. Needs to be done by @mattab or @tsteur

@fhemberger

This comment has been minimized.

Show comment
Hide comment
@fhemberger

fhemberger Jan 6, 2018

Contributor

Repo is also referenced on https://piwik.org/integrate/#programming-language-platforms-and-frameworks, link needs to be changed as well.

Contributor

fhemberger commented Jan 6, 2018

Repo is also referenced on https://piwik.org/integrate/#programming-language-platforms-and-frameworks, link needs to be changed as well.

@fhemberger

This comment has been minimized.

Show comment
Hide comment
@fhemberger

fhemberger Jan 6, 2018

Contributor

@mattab @Findus23 Who would be the owner of the package on npm? So I can transfer rights there as well.

Contributor

fhemberger commented Jan 6, 2018

@mattab @Findus23 Who would be the owner of the package on npm? So I can transfer rights there as well.

@Findus23

This comment has been minimized.

Show comment
Hide comment
@Findus23

Findus23 Jan 6, 2018

Member

@fhemberger
I tried around a bit and made some minor changes (on a devel branch as I won't have much time in the next weeks to work on it)
What do you think about using something like babel so the people who want to use it in browsers can't complain?

Member

Findus23 commented Jan 6, 2018

@fhemberger
I tried around a bit and made some minor changes (on a devel branch as I won't have much time in the next weeks to work on it)
What do you think about using something like babel so the people who want to use it in browsers can't complain?

@fhemberger

This comment has been minimized.

Show comment
Hide comment
@fhemberger

fhemberger Jan 6, 2018

Contributor

@Findus23 No need for Babel, everything except matomo-org/matomo-nodejs-tracker#41 is ES5 and people are already running it in the browser.

Changes look okay (only had a brief look), you may want to squash some commits when merging into master.

Contributor

fhemberger commented Jan 6, 2018

@Findus23 No need for Babel, everything except matomo-org/matomo-nodejs-tracker#41 is ES5 and people are already running it in the browser.

Changes look okay (only had a brief look), you may want to squash some commits when merging into master.

@mattab

This comment has been minimized.

Show comment
Hide comment
@mattab

mattab Jan 10, 2018

Member

The repository has been migrated to https://github.com/matomo-org/piwik-nodejs-tracker - we could rename it to matomo-nodejs-tracker at some point?

Thanks @fhemberger for your contributions to this project and hope we can take this forward!

Member

mattab commented Jan 10, 2018

The repository has been migrated to https://github.com/matomo-org/piwik-nodejs-tracker - we could rename it to matomo-nodejs-tracker at some point?

Thanks @fhemberger for your contributions to this project and hope we can take this forward!

@fhemberger

This comment has been minimized.

Show comment
Hide comment
@fhemberger

fhemberger Jan 10, 2018

Contributor

@mattab
a) You still need an account at npm to manage the package, at the moment, I'm still the maintainer
b) If you rename the package, make sure to deprecate the old package name: https://stackoverflow.com/questions/28371669/renaming-a-published-npm-module

PR for renaming Piwik -> Matomo: matomo-org/matomo-nodejs-tracker#42

Contributor

fhemberger commented Jan 10, 2018

@mattab
a) You still need an account at npm to manage the package, at the moment, I'm still the maintainer
b) If you rename the package, make sure to deprecate the old package name: https://stackoverflow.com/questions/28371669/renaming-a-published-npm-module

PR for renaming Piwik -> Matomo: matomo-org/matomo-nodejs-tracker#42

@Findus23

This comment has been minimized.

Show comment
Hide comment
@Findus23

Findus23 Jan 10, 2018

Member

@mattab I guess we can rename it now
@fhemberger Thanks for the PR, I'll fix the remaining URLs after the renaming and have now created a npm account: https://www.npmjs.com/~lw1

Member

Findus23 commented Jan 10, 2018

@mattab I guess we can rename it now
@fhemberger Thanks for the PR, I'll fix the remaining URLs after the renaming and have now created a npm account: https://www.npmjs.com/~lw1

@fhemberger

This comment has been minimized.

Show comment
Hide comment
@fhemberger

fhemberger Jan 10, 2018

Contributor

@Findus23 Made you owner on npm.

I'm waiting for @mattab to rename the repository to matomo-nodejs-tracker, then we can deprecate the old module on npm and publish v2.0.0.

Contributor

fhemberger commented Jan 10, 2018

@Findus23 Made you owner on npm.

I'm waiting for @mattab to rename the repository to matomo-nodejs-tracker, then we can deprecate the old module on npm and publish v2.0.0.

@mattab

This comment has been minimized.

Show comment
Hide comment
@mattab

mattab Jan 10, 2018

Member

@Findus23 you're now Admin on the repo as well. Might give you the permission to rename it?

Member

mattab commented Jan 10, 2018

@Findus23 you're now Admin on the repo as well. Might give you the permission to rename it?

@Findus23

This comment has been minimized.

Show comment
Hide comment
@Findus23

Findus23 Jan 10, 2018

Member

I have now published matomo-tracker and deprecated the old package.

➜  ~/tmp npm install piwik-tracker
➜  ~/tmp npm install piwik-tracker           
npm WARN deprecated piwik-tracker@1.1.2: WARNING: Because of the recent renaming from Piwik to Matomo this package is now called matomo-tracker. Please update your dependencies and code accordingly.
npm WARN saveError ENOENT: no such file or directory, open '/home/lukas/tmp/package.json'
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN enoent ENOENT: no such file or directory, open '/home/lukas/tmp/package.json'
npm WARN tmp No description
npm WARN tmp No repository field.
npm WARN tmp No README data
npm WARN tmp No license field.

+ piwik-tracker@1.1.2
added 1 package in 0.252s
Member

Findus23 commented Jan 10, 2018

I have now published matomo-tracker and deprecated the old package.

➜  ~/tmp npm install piwik-tracker
➜  ~/tmp npm install piwik-tracker           
npm WARN deprecated piwik-tracker@1.1.2: WARNING: Because of the recent renaming from Piwik to Matomo this package is now called matomo-tracker. Please update your dependencies and code accordingly.
npm WARN saveError ENOENT: no such file or directory, open '/home/lukas/tmp/package.json'
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN enoent ENOENT: no such file or directory, open '/home/lukas/tmp/package.json'
npm WARN tmp No description
npm WARN tmp No repository field.
npm WARN tmp No README data
npm WARN tmp No license field.

+ piwik-tracker@1.1.2
added 1 package in 0.252s
@fhemberger

This comment has been minimized.

Show comment
Hide comment
@fhemberger

fhemberger Jan 10, 2018

Contributor

@Findus23 Awesome. Removed myself as npm owner from both packages, it's all in your hands now. Godspeed! Of course, if you have any questions in the future, just ping me.

Contributor

fhemberger commented Jan 10, 2018

@Findus23 Awesome. Removed myself as npm owner from both packages, it's all in your hands now. Godspeed! Of course, if you have any questions in the future, just ping me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment