Skip to content

Commit 7ff4dbc

Browse files
Revise README for improved clarity and organization
Updated README.md to enhance clarity and structure, including objectives, implementation details, and AI usage.
1 parent 94fcf44 commit 7ff4dbc

1 file changed

Lines changed: 12 additions & 3 deletions

File tree

README.md

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
# Shehrbano Ali - Wikimedia Task 1 Submission
1+
# Shehrbano Ali - Wikimedia Task 1 Submission
2+
23
**Contributor:** Shehrbano Ali
34
**Email:** shehrbanoali2230@gmail.com
45
**Github:** [Shehrbaano-Ali](https://github.com/Shehrbaano-Ali/)
@@ -7,6 +8,7 @@
78
**Date:** April 5, 2026
89
**Task:** [Task 1 - Create a JavaScript script to manipulate a JSON object](https://phabricator.wikimedia.org/T418285)
910

11+
1012
---
1113
## LINK
1214

@@ -36,7 +38,7 @@ A functional prototype for Wishlist Proposal #3, utilizing String Normalization.
3638
![Prototype Preview](04-prototype-guard.png)
3739

3840

39-
41+
---
4042
## Table of Contents
4143
- [Introduction](#introduction)
4244
- [Objectives](#objectives)
@@ -52,16 +54,20 @@ This repository contains my submission for **Task 1** of the Outreachy 2026 cont
5254

5355
By cross referencing the instructions with the raw data, I identified and resolved a technical discrepancy related to browser side date rendering. Additionally, I have included a functional prototype of a **Wiki Reference Guard** to demonstrate how the principles of normalization apply to real-world Wikimedia software challenges.
5456

57+
58+
---
5559
## Objectives
5660
1. **Parse JSON metadata** (`page_id`, `creation_date`, `title`).
5761
2. **Format ISO dates** into localized, human-friendly strings.
5862
3. **Resolve the "Previous Day" bug** caused by JavaScript's default UTC handling.
5963
4. **Implement String Normalization** to prevent duplicate citations in the Visual Editor.
6064
5. **Document findings** with a professional, developer-first presentation.
6165

66+
---
6267
## Implementation Details
6368
The solution is implemented using **Vanilla JavaScript**, **HTML5**, and **CSS3**. It avoids external libraries to remain lightweight and easily auditable by the Wikimedia community.
6469

70+
---
6571
## The Timezone Challenge (Bug Fix)
6672
During validation, I identified a logic error in the task instructions by comparing the input data with the expected output.
6773

@@ -74,18 +80,21 @@ During validation, I identified a logic error in the task instructions by compar
7480
const dateObj = new Date(article.creation_date + T00:00:00);
7581
```
7682

83+
---
7784
## Beyond the Task: Project Integration
7885
While Task 1 focuses on data manipulation, the **Wiki Reference Guard** prototype demonstrates the application of **String Normalization** to solve a real-world problem:
7986
_**[Wishlist Proposal #3 (Duplicate Reference Detection)](https://meta.wikimedia.org/wiki/Lista_de_desejos_tecnol%C3%B3gicos_da_lusofonia/2025/Propostas/Verificar_automaticamente_uma_refer%C3%AAncia_duplicada)**_
8087

8188

8289
By stripping protocols (`https://`), prefixes (`www.`), and trailing slashes, the system can identify that two different URLs actually point to the same source, preventing citation clutter.
8390

91+
---
8492
## Key Findings
8593
* **Edge Case Awareness:** Technical documentation must account for browser specific behaviors like UTC date parsing.
8694
* **Data Integrity:** Comparing raw inputs against expected results is the first step in robust quality assurance.
8795
* **Scalability:** Small logic tasks (like Task 1) provide the foundational blocks for larger system features (like the Reference Guard).
8896

97+
---
8998
## Repository Structure
9099
```
91100
Outreachy-Wikimedia-Task-1/
@@ -99,13 +108,13 @@ Outreachy-Wikimedia-Task-1/
99108
└── 04-prototype-guard.png # Screenshot: Wishlist #3 Prototype
100109
```
101110

111+
---
102112
## AI Usage
103113
I utilized Chatgpt for:
104114
* **Documentation Structure:** Organizing this README to reflect the systematic analysis expected in open-source contributions.
105115

106116
All code, logic, and experiments were manually verified and implemented by me. The chatgpt served as a guide to accelerate understanding.
107117

108118
---
109-
110119
*This work is submitted for the Outreachy May 2026 internship application for the Wikimedia Project.*
111120
*~Shehrbano Ali*

0 commit comments

Comments
 (0)