< Wikidata annotation tool
Project Wrap Up Report
Weekly Reports
Week 1 ( May 19 - May 26 )
- Setup the environment at Wikimedia Foundation Labs Tools
- Created a selector for Pundit using a wrapper for Wikibase API
Week 2 ( May 27 - June 3 )
- Parsed Wikidata dump of properties into a correct format and made a vocabulary for Pundit to fetch predicates from Wikidata
- Making a wrapper of OAuth API for Wikimedia
- Test site is hosted here
- This has become considerably slower due massive amount of predicates
- Working on removing some of them as of now.
Week 3 ( June 4 - June 11 )
- Changes the predicates loader from Wikidata dump to selector, now even properties are being loaded through a selector!
- Made the OAuth API wrapper working.
- Started making changes to CSS of the tool. Need to discuss this on #wikimedia-designers
Week 4 ( June 12 - June 19 )
- Tried to integrate WikiMedia OAuth Login with Pundit's OpenID login system, but failed to do so. Discussion regarding this can be found here.
- Discussed some new approaches with mentors and finally came to a conclusion to provide a Push to Wikidata button in the interface, which will sync user's Pundit Notebook's annotation with Wikidata through a bot and will use OAuth to recognize the user.
Week 5 ( June 20 - June 26 )
- Made changes to frontend Pundit code and backend Login API code to fulfill the demands of Push to Wikidata Button.
- This will work fully when bot will come into play
Week 6 ( June 27 - July 4 )
- Started working on the bot
- After discussing much and researching on PyWikipediaBot, we came to a conclusion that we don't need a bot for our this process we need some kind of autolist much like that of Magnus's autolists
- This week was too much productive, I started developing autolist based on magnus tool and using Magnus' tool WiDaR for Wikidata API query via OAuth
- I am able to receive now annotations from Pundit server's public API and transform them to Wikidata format.
- Now only job left is feed this data retrieved and formatted to Wikidata
Week 7 ( July 5 - July 12 )
- I completed the autolist mainly in this week and made it fully functional.
- Autolists contain the functionality to interact with Mediawiki through OAuth just like WiDaR except that it has more options
- I completed most of fetching and pushing to Wikidata part in this week
- Now I fixed up Bajo to fetch annotations from Pundit open server APi and show them in a pretty way and give user an option to select which annotations to be pushed
Week 8 ( July 13 - July 21 )
- I hosted the app on Tools lab and put a mail on Wikidata List for testing but didn't got much response
- Added all the comments to code and made some documentations
- Cleaned up all the code, Bajo and added more functionality to WAF
- Now plugin is adding references also to the annotation for an item it creates
- References are the source url and the time the annoations was created
Week 9 ( July 22 - July 29 )
- This week I wrote mainly tests for Bajo in QUnit.
Week 10 ( July 30 - August 5 )
- Completed the tests through this week
- Fixed some bugs and required improved as asked by testers and mentors
- Started to work on packaging the whole project into bookmarklet.
Week 11 ( August 6 - August 13 )
- Had troubles with packaging the predefined script wasn't working.
- Learnt shellscript and rewrote the script again
- Loading issues with bookmarklet, it was loading the original Pundit
Week 12 ( August 14 - August 16 )
- Finally packaged the product with help of mentor and hosted it on Github pages
- Hosted via Github CDN the bookmarklet is available at this link
- May take some time to load due to big size.
- Project wrap up report soon
Community Bonding Report
Goals for first half of internship
- Make a wrapper of already existing Wikimedia API to get user logged in with plugin, this is hosted here
- Attach this wrapper to Pundit and replace the old OpenID login system, by creating a new fork of Pundit.
- Create a selector for Pundit to help it load objects(items) from Wikidata
- Create a vocabulary of Wikidata predicates in required Pundit format and load it in Pundit
- This will be done by taking properties dump from Wikidata and converting it to required format
- Write Simple HTML tests for all of the work done.
Communication Plan
- My primary means of communication with mentors is a dedicated mailing list which is open for anyone to join, here various people ponder over a single discussion to sort out the best way to do this.
- I will mail Wikitech-l in case I need advice from more people
- Usually I ask my small questions around IRC and I am available on most of the general channels related to Mediawiki.
- Another means of frequent communications is Google Hangout, which is fast and reliable to get quick advice.
Lessons learned since April 21st
- Things are not always as easy as they seem, usually they don't go right according to your way.
- Patience is everything.
- Discussion is important, but taking correct decisions is up to you, because in the end you are responsible.
- It's good to use technologies you already know, get your hands into mud is not always the best option.
Notes
This article is issued from Mediawiki. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.