< User:ABSHK
Revision as of 11:39, 26 June 2021 by ABSHK (talk | contribs) (Coding Period (June 7 - August 16))

Development Log for Gsoc'21

Community Bonding Period (May 17 - June 6)

  • May 17 - May 23
    • Made a prototype script to download the User Manual from WikiBooks.
  • May 24 - May 31
    • Learnt to use cmake and how to execute a .py script using add_custom_command.
  • June 1 - June 7
    • Went through WikiMedia's rules for using their API. Learnt about the URL-Headers to use while accessing the WikiBooks API.

Coding Period (June 7 - August 16)

  • Week - 1 (June 7 - June 13)
    • Started with making the .py script
    • Implemented function prototypes
    • Made function getPage() to download the page given at the url using the WikiMedia API.
    • Made function getFooter() to add footer to the HTML pages with proper attribution (CC-BY-SA-3.0).
    • Made function cleanSoup() to remove the redundant HTML tags from the pages.
    • Made function getUrl() to get clean, formatted URLs.
  • Week - 2 (June 14 - June 20)
    • Made function getMaths() to download the Math Formulas in the User Manual as SVG Images.
    • Made function getTags() to deal with <a> tags and the hrefs.
    • Made function getImages() to download the images in the Manual.
    • Made a config.yml file for ease of maintenance of the script.
    • Made function getCSS() to download the CSS (more about which is given at API:Styling_content).
    • Made function getStyled() to improve the styling of the pages.
  • Week - 3 (June 21 - June 27)
    • Explored GitHub Actions, to run the program and generate the documentation on GitHub.
    • Added feature to zip the docs, thus reducing the file size by 25%.
    • Created GitHub Action to generate a zipped doc file and release it.
    • Changed getUrl() to getParsedUrl(), which now returns a parsed URL (using urllib.parse.urlparse()).
    • Miscellaneous code optimizations in cleanSoup(), for a cleaner and smaller code.