Find Jobs
Hire Freelancers

OAuth2 authentication via Github.com for Matomo (Piwik)

€250-750 EUR

Completed
Posted over 5 years ago

€250-750 EUR

Paid on delivery
Hello, I need a basic OAuth2 authentication plugin prototype for Matomo (Piwik). Users must be able to log in using an OAuth2 authentication provider & then be able to do what a regular Matomo user is capable of. I have the following requirements: 1. The plugin must be compatible with Matomo 3.5.1 (most recent version). 2. You need to follow the documented best practices for creating the plugin: [login to view URL] 3. Unless stated otherwise in the Matomo docs, the plugin code must adhere to the accepted PSR standards: [login to view URL], especially in regard to code formatting, logging, autoloading, etc. 4. You must use [login to view URL] vendor package for implementing the [login to view URL] not develop a custom OAuth2 flow implementation. 5. Please restrict the OAuth2 provider compatibility to [login to view URL] & its web application flow: [login to view URL] 6. All rights (copyright, usage rights, etc.) regarding the plugin are passed over from you to me. You get paid for the time you take for developing the plugin prototype. 7. I will need an invoice from you that carries the following information: - Name & address of the contractor, - date of fulfillment, - relevant tax IDs of any kind (for example VAT ID) IF EXISTING, - the actual service provided (that would be "Develop an OAuth2 plugin prototype for Matomo"), - the amount of hours charged & the hourly rate, - the complete amount charged WITHOUT tax, - taxes charged (even if 0), - the complete amount charged WITH tax, - the currency in which the values are given. 8. I will provide you with an account in my Gitlab installation. The code must be hosted there. There will be issue tickets that must be processed within that Gitlab installation (thus you should be able to use Git & Gitlab). 9. When submitting offers for this assignment, please provide relevant reference projects & please provide your normal working hours (and time zone). 10. This assignment should be completed within 3 weeks after the contract has been awarded. 11. Nothing can be hard-coded in Matomo of course. It is not allowed to change any Matomo file (except config files). 12. After uninstallation of the plugin, Matomo must operate normally (especially regular logins). 13. The plugin must not communicate with any cloud services & must not include any files loaded dynamically from cloud services. The only contact with the "outside world" from Matomo's point of view are the redirects to & from [login to view URL] & the interactions with the users & admin. The assignment is complete when I can do the following after installing & activating the plugin: 1. Within Matomo: The admin requests the plugin settings & enters the OAuth2 client ID & the OAuth2 client secret from [login to view URL] & saves. 2. A yet unregistered user requests the Matomo login form & opts to log in via [login to view URL] by clicking "Log in via Github" (the user must have registered with [login to view URL] before of course). The user gets directed to [login to view URL] & completes the authentication process & then the app authorization process (only the first time). 3. After [login to view URL] has redirected the user back to Matomo, the user is logged in & is able to do everything a normal Matomo user can do. 4. The user logs out & requests the Matomo login form again & opts to log in via Github.com. 5. The user gets redirected to [login to view URL] & completes the authentication (but not the app authorization because that's been done already). 6. The admin can see that user in the user list. 7. The plugin code is easily comprehensible, all methods have a docblock that explains what the method does. 8. The plugin code is written in PHP & utilizes the full range of PHP 7.2 features where applicable (especially type declarations for method parameters & return values). Looking forward to reading your bids!
Project ID: 17591306

About the project

16 proposals
Remote project
Active 6 yrs ago

Looking to make some money?

Benefits of bidding on Freelancer

Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
Awarded to:
User Avatar
Hello, The requirements are quite clear and straightforward to implement so no questions. Plugin will allow the users to login with their github account working similar to widely used "login with facebook/google" flow. Per your request, code will abide to psr and utilize oauth client by league of extraordinary packages. As is the case with any other project, all the rights will be passed to you upon successful completion. You can check a similar projet I've completed at https://www.freelancer.com/projects/php/PHP-Youtube-channel-get-API/. SDK provided by google does not have proper interface to manage oauth2 flow hence I had to dig in and create a lightweight adapter to make it so, only then I could use it to fulfill the clients' requirements. Last thing I want to mention is about the 8th requirement. I will utilize git while developing this but I will do so locally. Once the project is ready to be delivered only then I can either directly send the repo to you as a zip or push it to your designated gitlab account. I hope that's ok for you. Again per your request, I'll use php7.2 to implement the plugin and will properly comment the code per phpdoc. I expect this to take 10 days and will generate an invoice at the end as well. Regards Aydin
€1,000 EUR in 10 days
5.0 (56 reviews)
6.2
6.2
16 freelancers are bidding on average €604 EUR for this job
User Avatar
I have read your project details. I have to ask a few questions. Can you please message me via chat so we can discuss all the details to elicit all the requirements and hence start the development? I will showcase all the skills and my experience for this project over the chat. Please message me so we can resume this discussion. Can you provide me all the functional/Non-functional requirements via a document? It seems like an interesting project. I would like to discuss all the requirements with you, so I can mark the scope of this project. Please also note that final estimation will be provided once all the requirements will be revealed from your end. Hence, my cost of development & deadline solely depends on what you reveal (in detail). Looking forward to conduct an extensive chat with you.
€555 EUR in 10 days
5.0 (53 reviews)
7.7
7.7
User Avatar
Nice Project! I understand your requirements fully and I'm very interesting for your project. I will complete your project perfectly soon. I will provide you high quality and high speed work. Thank you. Best Regards.
€750 EUR in 10 days
5.0 (38 reviews)
7.3
7.3
User Avatar
⭐⭐⭐⭐i have many experience in Auth 2.0⭐⭐⭐⭐⭐⭐ I read through the job details extremely carefully and I am absolutely sure that I can do the project very well. * 4+ years experience in web design and development and site build. Timely deliver 24 hours communication Hope to get your early response Thanks
€555 EUR in 10 days
4.9 (124 reviews)
7.4
7.4
User Avatar
Hi there, I have read the details I am experienced with OAuth, PHP, Software Architecture. I can help you with this job but your budget is not enough for it if its flexible, Please come to chat so we can discuss this job.
€555 EUR in 10 days
5.0 (37 reviews)
7.3
7.3
User Avatar
Hi, I love to complete this task on schedule time and budget. the reason is I have similar experience on this work. Thank you
€748 EUR in 15 days
5.0 (5 reviews)
1.8
1.8
User Avatar
17 AUG 2018 · 4:24 PM M Hi hello Thanks for the bid My budget is $30 M Plz let me know if you could do for that price
€555 EUR in 10 days
2.3 (3 reviews)
3.0
3.0

About the client

Flag of GERMANY
Henstedt-Ulzburg (Hamburg), Germany
5.0
19
Payment method verified
Member since Sep 2, 2006

Client Verification

Thanks! We’ve emailed you a link to claim your free credit.
Something went wrong while sending your email. Please try again.
Registered Users Total Jobs Posted
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Loading preview
Permission granted for Geolocation.
Your login session has expired and you have been logged out. Please log in again.