proposal for https://phabricator.wikimedia.org/T386128
## **Profile**
**Name:** Ume Kibe Comfort
**IRC handle:** Uumekibe
**Email:** umekibe@gmail.com
**GitHub:** https://github.com/umekibe
**Location:** Lagos, Nigeria
**Time Zone:** UTC+1
**Typical working hours:** 9AM - 2AM (UTC+1)
---
## **Synopsis**
The Lusophone technological wishlist is an initiative within the Portuguese-speaking (Lusophone) Wikimedia community that aims to improve the technological experience for editors, readers, and researchers. A survey was conducted to identify and prioritize technological needs and improvements for Wikimedia projects in Portuguese.This aligns with Wikimedia’s broader 2030 Movement Strategy to improve user experience and foster innovation in free knowledge.
mentors: @Ederporto, @Arcstur
---
##**Proposal: A Tool to List Pages with Broken Links**
( https://phabricator.wikimedia.org/T386128 )
**📌 The Problem**
- Many Wikipedia pages have broken links—links that no longer work because the original webpage was deleted, moved, or changed.
- Editors and readers rely on these links for references, credibility, and fact-checking, but broken links make it harder to verify information and reduce Wikipedia’s reliability.
- Currently, there is no easy way to find all pages with broken links on Portuguese Wikipedia. Editors have to search manually or rely on outdated methods.
**🎯 The Proposed Solution**
- Create a tool that automatically lists all Wikipedia pages with broken links. ( inspired by the Dead Link Finder used on the German Wikipedia )
- This list should be updated regularly so editors can quickly find and fix broken linke tool will allow users( editors and readers ) to check broken links in a set of pages, grouped by hidden categories, making it easier to identify and resolve these issues.
- This list will be updated regularly so editors can quickly find and fix broken links.
---
##**Development Plan & Timeline**
| **Phase** | **Timeline** | **Key Deliverable**Tasks** |
|-------------------------------------|------------------------|-----------------------|
| **Research & Planning** | June 1 – June 14 | Analyze existing tools,Study and analyze existing tools such as the Dead Link Finder Tool and Pywikibots weblinkchecker.py script. Gather requirements, define the scope and features of the tool. gather requirementsDefine the deliverables, define scope,implentation plan and functionalities of the tool. set up environmentEngage with Lusophone wikicontest organizers to understand their needs. |
| **Prototype Development** | June 15 – June 30 | Design the UI, prototype and workflow. Set up the environment and necessary dependencies. Develop script to crawl pages, check links, store results and other core functionalities for the tool. Test on sample pages. Add pagination and filters (e.g., store results,by category or date range). test on sample pagesUse Toolforge integration for hosting the tool . Testing and Evaluation of Prototypes.|
| **Full ImplementationTesting, Scaling & Optimization** | July 1 – July 21 | ScalTest the tool, across different browsers and devices. optimize performance,Conduct thorough testing to identify and fix bugs. develop UI,Collect feedback from users using survey forms and community discussions with the Lusophone Wikipedia community. test with editorsImplement recommendations and user suggestions and test iterations. Evaluation and Testing |
| **Deployment & Community Engagement** | July 22 – August 10 | Deploy tool on the portuguese Wikipedia. Announce and promote the tool through wikicontests, education programs, and edit-a-thons. document usage. Create comprehensive documentation (installation, document usage, introduce to editors,troubleshooting) and user manual. collectMonitor usage and gather more feedback for further improvements. |
| **Final Testing & Handover** | August 11 – August 30 | DFinalize and debug any issues, finalize report and documentation, onboard maintainers, present final demo. |
---
## ** Deliverables**
**Research and Planning**
- Competitive analysis of similar tools (Dead Link Finder, weblinkchecker.py)
- Defined scope, features, and deliverables
- Community needs summary (based on engagement with Lusophone organizers)
**Prototype Development**
- Initial working script to crawl pages and detect broken links
- Database or structured file to store results
- Prototype UI (CLI or simple web interface)
- Toolforge integration test
**Testing, Scaling & Optimization**
- Testing logs and bug reports
- Survey forms or feedback collection templates
- Documented iterations based on community input
**Deployment & Community Engagement**
- Publicly accessible deployed tool (via Toolforge or linked from Wikipedia)
- Complete documentation (setup, usage, troubleshooting)
- Wiki page for the tool
**Final Testing & Handover**
- Final version of the tool
- Debug report with resolved issues
- Maintenance guide for future contributors
- Final internship report & presentation/demo
- Handover checklist
---
## ** Technical Stack & Tools**
- **Language:** Python
- **Libraries:** Requests, BeautifulSoup, Selenium (if needed)
- **Infrastructure:** Toolforge, Wikimedia Cloud Services
- **Storage:** CSV, database, or on-wiki reports
- **Version Control:** GitHub/GitLab
---
## ** Expected Impact**
✅ **Supports Wikimedia’s 2030 strategy** for user experience and innovation.
✅ **Enhances credibility** by improving reference reliability.
✅ **Saves editor time** through automation.
✅ **Encourages new contributors** by simplifying content maintenance.
✅ **Ensures a more inclusive and productive environment** for Portuguese-speaking users.
---
## ** Why Me?**About Me**
Hi, I’m Kibe, a back-end developer / data scientist with a degree in Computer and Information Science from Covenant University. I’ve completed specializations in Python for Data Science, Applied Data Science, and Machine Learning, which have shaped my ability to build practical, data-driven solutions as well as a software engineering diploma from Alt School Africa, with a specialization in Back End Engineering.
I’m passionate about using tech to improve digital access and community experiences, and I bring strong communication, adaptability, and problem-solving abilities—skills I’ve sharpened through interacting with diverse teams and supporting digital projects. I’m excited to grow, learn, and meaningfully contribute to this Outreachy project by building tools that empower the Lusophone Wikipedia community.
**Experience**
I have built several machine learning projects and gained practical experience with Python and its libraries and frameworks such as Django and Flask. I also used nodeJs., CSS, Python , HTML and Javascript while developing my capstone project for the software engineering diploma at Alt School Africa. I learnt how to build easily reusable and maintainable code, API integration and best development practices. The projects can be found on my [[ www.github.com/umekibe | GitHub Profile ]]
- Strong Python & web scraping skills.
- Passion for open knowledge and Wikipedia.
- Committed to delivering a scalable and community-friendly solution.
**Excited to contribute to this impactful project!**
---
## **What I Expect to Achieve by the End of the Outreachy Internship:**
- Deliver a Working Tool That Solves a Real Problem
- Gain hands-on experience collaborating in open-source ecosystems like Wikimedia
- Deepen my practical knowledge of Python, APIs, data scraping, automation, and deployment (especially on platforms like Toolforge).
- Learn to handle real-world edge cases, scale tools, and write clean, maintainable code.
- Build Confidence in Community-Focused Development and understanding how to develop tools that are inclusive, relevant, and usable.
- Grow as a Collaborative Developer