Jump to content

WDAudioLex/Developer

From Meta, a Wikimedia project coordination wiki
WDAudioLex

System Architecture

[edit]

Frontend

[edit]

Built using ReactJS for a responsive user interface. Components include:

  • Category Selector
  • Pattern Input
  • Results Display
  • Audio Player
  • Add Pronunciation Button

Technologies: Material-UI/Bootstrap for styling, Axios for API requests.

Backend

[edit]

Developed using Flask with SQLAlchemy for database management.

API Endpoints:

  • /select-category: Fetch audio files from selected Commons categories.
  • /match-lexemes: Process matching logic based on user inputs.
  • /add-pronunciation: Store contributions and update Wikidata.


Database: Stores audio file IDs, lexeme IDs, and pronunciation details using a relational database (e.g., MariaDB from wikimedia cloud).

Integration

[edit]

Uses Wikimedia Commons and Wikidata APIs for retrieving resources and updating entries. Data validation ensures meaningful and accurate user contributions.

Bug Reporting, Feedback Channels and Communication Guidelines

[edit]

Bug Reporting

[edit]

To ensure that issues are tracked and resolved efficiently, please follow the steps below to report bugs or technical issues with the tool:

  • Where to Report: Bugs should be reported in the Phabricator project. Please make sure you are logged into Phabricator before submitting your bug report.
  • How to Report: When creating a bug report, please provide the following:
    • Title: A clear and concise title summarizing the issue.
    • Description: A thorough description of the bug, including steps to reproduce the issue.
    • Expected Behavior: Describe what you expected the tool to do.
    • Actual Behavior: Explain what actually happened.
    • Screenshots/Logs: Attach any relevant screenshots or error logs that will help in diagnosing the issue.
  • Use the Create Task button on Phabricator to create a new bug report. Make sure to fill in the required fields, following the bug report template provided.

Feedback Channels

[edit]

We value user feedback to continuously improve the tool. You can share your suggestions or provide feedback through the following channels:

  • General Feedback

Please share your feedback or suggestions on the Tool Discussion Page (actual link). This is the primary place for open discussions and feedback on the tool's development.

  • Direct Communication
    • Email: For detailed inquiries or support, you can reach out to the development team via email.
    • Telegram: Join our Telegram Group to participate in real-time conversations with the team and other users.

Communication Guidelines

[edit]

When providing feedback or reporting bugs, please be specific and clear in your descriptions to help us understand and resolve the issue quickly. All feedback should be constructive to ensure a positive and collaborative environment. Expect reasonable response times based on the complexity of the issue or feedback.