Dhairya Majmudar SoK'24 Proposal : Extend the embedded documentation for supported Computer Algebra Systems
Project abstract
I would like to propose my project proposal to Extend the embedded documentation for supported Computer Algebra Systems
Cantor provides a graphical interface to multiple open-source computer algebra systems and programming languages. It is possible to download the documentation for some of the systems/languages from the KDE Store for easier and more direct search in the documentation from within Cantor. For this, the documentation that is usually available in HTML format is converted to Qt's help files (s.a. The Qt Help Framework) and is uploaded to KDE Store. At the moment only a few documentation files are available and the purpose of this project is to convert more of the publicly available documentation, tutorials, or books to Qt's help format.
Proposal
The goal of the project is to convert the documentation for programming languages available in cantor first into HTML files which further should be converted in the QT help files using Python scripting and which will be uploaded to the KDE Store.
Below is the flowchart for the whole process.
Programming Languages Documentation that has to be converted
- Julia
- KAlgebra
- Lua
- Maxima
- Octave
- Python
- Qalculate
- R
- Sage
- Scilage
Actions to be taken
- Identify the files that first have to be converted into HTML files and convert them into the HTML file format ( Currently in the KDE store download link for Programming languages Octave, Maxima and R is available )
- Later on convert the file to QT help format with the help of Python Scripting ( For doing so python scripts will be written in which the
BeautifulSoup
module will be used ) - Upload the files in the format of .qhp and .qhcp extensions ( QT Files ) to the KDE store so that they can be downloadable further by the users.
Timeline
Phase 1 ( 17 Jan - 24 Jan )
- Community Bonding
- Identifying the files which are already in the HTML format
- Writing Python scripts for those files
Phase 2 ( 25 Jan - 5 Feb )
- Converting the files into HTML format
- Writing Python scripts for the conversion to QT help file
- At the end of phase 2, one programming language documentation will be converted into QT help format
Phase 3 ( 6 Feb - 25 Feb )
- Converting the files into HTML format
- Writing Python scripts for the conversion to QT help file
- At the end of phase 3, three programming languages documentation will be converted into QT help format
Phase 4 ( 26 Feb - 15 March )
- Conversion of the remaining 4 documentation files will be done
- At the end of phase 4, all the programming languages documentation will be converted into QT help format
Phase 5 ( 16 March - 28 March )
- Working on reviews and suggestions from the mentor
- Conversion of any extra file if needed
- Uploading the files to the KDE store
Foreseen challenges
I might face challenges in writing the Python scripts for converting the HTML files into QT help files. But I think this challenge can be removed easily after I have converted 1 - 2 files by writing the python.
References / relevant background info
Hi, I am Dhaiyra Majmudar, an aspiring software developer with a consistent passion for learning and contributing to open source. Currently pursuing my second year of Bachelor in Electronic and Communication Engineering from the Indian Institute of Information Technology Kota ( IIIT Kota ) right from my freshman year, I was amazed by the various websites and applications present on the internet. I used to search how to create and modify such end-user applications there I came to know about open-source development. About how various organizations and developers work together to develop such applications that help millions of users and making there lives easy.
As of which I took part in several open-source programs which includes GSSoC’23, Hacktoberfest’23. While taking part in Hacktoberfest’23 I contributed in various popular codebases which includes Appwrite, Hyperswitch, and many more later on I continued my open-source contribution while contributing to Oppia Foundation and Circuitverse.
Currently, some of my positions of responsibility includes
- Web Development Lead of the Google Developers Student Club (GDSC) , IIIT Kotac
- Open Source Collaborator in Oppia foundation LAcE team ( Team responsible to enhance user experience and removing blocking from the release)
- Worked with Google Developers and removed several blockings for the upcoming release
- Web Team Member IIIT Kota ( Team responsible for maintaining the the official government website of IIIT Kota )
All of my PRs can be found in this link Github
Links to some of my contributions to Open Source during and after Hacktoberfest
- Contributions to Oppia Foundation
- Contribtions to circuitverse
- Contributions to Appwrite
- Contributions to Hyperswitch
How to reach you
(@dhairya-majmudar:matrix.org / N/A / majmudar777@gmail.com)
Note: we don't need (yet) your personal address/phone, it will be necessary only if you succeed the SoK and wants to get goodies.
/cc @teams/season-of-kde