Skip to content

Thoth Tech - Company Handover Report 2025 TRIMESTER 1

Table of Contents

1. Executive Summary

2. Showcase Video

3. Leadership Team

4. Company Structure

5. Project 1: OnTrack

6. Project 2: SplashKit

Executive Summary

Thoth Tech is an education-focused technology company located in Melbourne, Australia. Thoth Tech’s mission is to build, operate, and deploy tools that enhance education outcomes by empowering students, connecting them with tutors, and facilitating personalised learning experiences.

We value excellence and collaboration. We strive to deliver all our products in exceptional quality, making sure it is sustainable in the long run. We continuously meet this goal while empowering our people through established frameworks and a safe and supportive learning environment.

This report will outline the company structure, objectives, and projects for Trimester 3, 2024. This trimester, Thoth Tech will be running the two main products: OnTrack and SplashKit.

Showcase Video

This video summarises the accomplishments made at Thoth Tech for Trimester 1 2025: Thoth Tech Company Showcase Video.

Leadership Team

Company Board

  • Glory Lee - Company Director
  • Andrew Cain - Product Owner (OnTrack & SplashKit)

Product Mentors

  • OnTrack: Nebula Alam
  • SplashKit: Olivia McKeon

Student Leadership

  • Atharv Sandip Bhandare – Senior Leader (OnTrack)
  • Eliya Barryevitch Geerlings - Senior Leader (OnTrack)
  • Amrith Jayadeep - Senior Leader (OnTrack)
  • Martin John Dolores - Junior Leader (OnTrack)
  • Samindi Situmya Ratnayake Mudiyanselage - Junior Leader (OnTrack)
  • Ibitope Ebenezer Fatoki - Junior Leader (OnTrack)
  • Ethan Rin – Senior Leader (SplashKit)
  • Joshua Peyton Fernandes - Junior Leader (SplashKit)
  • Oliver Alexander Quail - Junior Leader (SplashKit)

Leadership Responsibilities

These are the following responsibilities of the company student leadership throughout the trimester:

  1. Company Recriutment Presentation the First Junior Lecture: The leadership is responsible for introducing Thoth Tech to junior students and attracting new talents by showcasing the company’s purpose, culture, and opportunities.

    • Deliver a compelling presentation to inspire junior studensts to join.
    • Highlight company goals, unique opportunities, required skills and mindset, and previous successes.
    • Provide engaging delivery with visuals to attract motivated recruits.
  2. Onboarding Students: Ensure all new team members are welcomed, informed, and aligned with the company’s objectives.

    • Host multiple onboarding sessions to accommodate various schedules and learning styles.
    • Clearly outline team roles, meeting schedules, project goals, and expectations.
    • Provide accessible materials such as documentation and tutorials to help students onboard.
    • Establish a welcoming, collaborative culture from the beginning.
  3. Weekly Leadership Team Meetings: Regular meetings ensure communication, accountability, and leadership developmment across the company throughout the trimester.

    • Hold weekly meetings to dicuss progress, challenges, and strategies.
    • Assign clear action items with deadlines along with regular follow ups.
    • Use the meetings as an opportunity to ensure that each team aligns with the company-wide goals.
    • Discuss strategy for company deliverables with a clear structure.
  4. Mentorship and Support: The leadership team must guide and support all contributors by offering mentorship, resolving issues, and ensuring alignment with company standards.

    • Provide leadership and technical support to both peers and junior members.
    • Promote teamwork across different groups by encouraging knowledge sharing.
    • Support problem-solving by facilitating collaboration and creative thinking.
  5. Communication and Collaboration: Effective communication is essential for aligning items, fostering creativity, and maintaining productivity.

    • Create opportunities for shared learning.
    • Ensure all communication reflects company goals, values, and priorities.
    • Communicate key informatiom to team members via annoucements and updates.
  6. Company Deliverables: The leadership team is responsible for ensuring that all reports and videos accurately represent the work of the company and are completely in a timely manner.

    • Work with other members to gather relevant updates and documentation for deliverables.
    • Ensure each report or video aligns with Thoth Tech’s brand and voice.
    • Review deliverables for accuracy and completeness before submission.
    • Submit deliverables on time by one junior and one senior member on behalf of the company.
  7. Innovation and Best Practices: Leadership should set the tone for continuous improvement by encouraging new ideas and promoting a growth mindset.

    • Encourage evidence-based decisions and foster a learning culture.
    • Encourage team members to experiment, take ownership, and drive innovation.
    • Emphasize learning from mistakes as a core value of growth and iteration.
  8. Fostering Team Morale and Inclusivity: Maintain a postive, inclusive, and respectful environment is key to productivity and collaboration.

    • Promote inclusivity by ensuring all voices are heard and valued in discussions.
    • Act as role models for positive communication, teamwork, and respect.
    • Recognize and celebrate both individual and team successes.
    • Support conflict resolution and maintain open-ended communication between the team members.

Company Structure

Org chart

Project 1: OnTrack

Project Overview

OnTrack, also known as Doubtfire, is an innovative Learning Management System (LMS) designed specifically for skill-based course delivery. This platform enhances the connection between tutors and students, with a primary focus on Deakin University and other global educational institutions. OnTrack aims to elevate the educational experience by offering a structured, efficient, and interactive learning environment. The system is crafted to improve student engagement, boost learning outcomes, and streamline the teaching and learning process, benefiting both students and educators.

The OnTrack team is dedicated to continuously improving the platform by working on all planned deliverables each trimester. While the team strives to complete all objectives, any remaining deliverables are carried forward, encouraging the next generation of leaders to take ownership and drive the project forward. This approach ensures the long-term sustainability and evolution of OnTrack, fostering a culture of responsibility, innovation, and continuous enhancement for the benefit of future users.

User Manual

This section provides all the essential tutorials and contribution guides to help new team members set up their local environment and begin contributing to OnTrack confidently.

Tutorial Videos on Setting Up Your Local Development Environment

Contributing Guides

Completed Deliverables

Frontend Migration

Completed migrations:

  • unit-dates-selector.coffee
  • date-service.coffee
  • media-service.coffee
  • routing.coffee
  • outcome-service.coffee
  • analytics-service.coffee
  • unit-staff-editor.coffee
  • listener-service
  • progress-dashboard.coffee
  • student-task-status-pie-chart.coffee
  • tutorials.coffee
  • unit-details-editor.coffee
  • content-editable.coffee
  • group-member-contribution-assigner.coffee
  • task-ilo-alignment-rater.coffee
  • analytics.coffee
  • debug.coffee
  • portfolio-grade-select-step.coffee

In development migrations:

  • runtime.coffee
  • group-member-list.coffee
  • inbox.coffee
  • group-member-list
  • task-ilo-alignment-modal.coffee
  • group-set-manager.coffee
  • file-uploader.coffee
  • Students-list.coffee
  • portfolio-review-step.coffee
  • portfolios.coffee
  • group-selector

AppAttack x OnTrack

We successfully initiated a collaboration with the HardHat AppAttack team to conduct a two-phase security testing process for OnTrack.

  • Stage 1 vulnerability scanning was completed, and initial findings were received on 7 April 2025.

  • A complete workflow was designed to manage the vulnerability mitigation process, which included:

    1. Establishing scope and agreement with AppAttack,
    2. Categorizing vulnerabilities based on severity,
    3. Recruiting a dedicated patching team,
    4. Creating and assigning tickets in Microsoft Teams Planner,
    5. Prioritizing and addressing critical vulnerabilities first.
  • The team implemented fixes for multiple high-impact vulnerabilities, including:

    Vulnerability NameImpact Level
    ClickjackingSevere
    Insecure Direct Object Reference (IDOR)Major
    Malicious Code ExecutionMajor
    Exposed JavaScript Source Maps (False Positive)Major
    Session Hijacking and FixationSignificant
    Token Exposure via Local Storage and HTTP Headers (False Positive)Significant
    Misconfigured CORS (False Positive)Significant
  • Fixes for Clickjacking and IDOR vulnerabilities were completed and pull requests were raised to the upstream feature branch, with Clickjacking successfully merged.

  • Although the full retesting cycle is pending, the team initiated internal validation of key fixes based on the documentation provided by AppAttack. This ensured timely feedback loops and quality assurance in the absence of immediate external retesting.

  • The final End-of-Trimester security report from AppAttack is expected to be shared to support future OnTrack development cycles and to maintain ongoing platform security improvements.

SSRF Testing on OnTrack

  • Developed a Bash-based automated script for SSRF payload injection across API endpoints.
  • Performed multiple rounds of testing and logged potential vulnerabilities.
  • Worked on enhancing the script for scalability and integration with Burp Suite.
  • Collaborated with the patching team to address vulnerabilities discovered by the AppAttack phase.

Bug Fixes & Urgent Enhancements

  • Issues with the student calendar and notifications has been resolved and pull requests have been submitted.
  • Issues with building the app on Windows has been identified and a fix has been deployed into the upstream 8.0.x branch.

New Feature Additions

Staff Extension Management

  • Planner board tickets for the Staff Grant Extension feature have been created, outlining frontend and backend responsibilities in detail.
  • Backend development was completed for importing and exporting tutorial data using CSV format.
  • A new modal interface was implemented, allowing staff to enter extension durations and select multiple students simultaneously.
  • The backend now successfully grants extensions based on staff input, ensuring seamless interaction between UI and data layer.
  • A new in-system notification system was developed from scratch, allowing students to receive updates related to granted extensions directly within OnTrack.
  • Email notifications were also integrated, ensuring students are notified through multiple channels.
  • Initial UI wireframes and user flows were completed and used as the foundation for the final implementation.

Gauge Chart

  • Replaced the legacy progress burndown chart with an interactive ngx-charts-based gauge chart to provide a cleaner visual representation of student progress.
  • Dynamically displays key progress metrics including Target, Projected, To Submit, and To Complete using distinct color bands and percentage values in the form of a Gauge
  • Center value auto-updates based on the Marked percentage.
  • Interactive legend: Clicking on a legend item (e.g., “Marked”) isolates that segment on the gauge, temporarily hiding all others for focused viewing.

Student Self-Enrollment into Projects

  • An implementation plan has been proposed and has been adjusted accordingly to meet the project requirements. Progress has begun on the UI.

Student Self-Enrollment into Projects

  • An implementation plan has been proposed and has been adjusted accordingly to meet the project requirements. Progress has begun on the UI.

Tutor Times Module

  • Progress has begun both on the front-end and back-end, but has temporarily been put on pause due to outdated documentation of the feature that has lead to different understandings of the goal of the feature.

Staff Extension Management

  • Planner board tickets for the Staff Grant Extension feature have been created, outlining frontend and backend responsibilities in detail.
  • Backend development has been finalized for the CSV import/export of tutorial data.
  • Frontend work for the same functionality is underway, with integration currently in progress.
  • UI wireframes and user flow for the extension management interface have been completed, forming the foundation for frontend implementation.

List of Completed Deliverables

NameTypeTask NameTask Attachment
Aditya Pratap Singh TomerMain ContributorCreate new Visualisation for Target Grade & Charthttps://github.com/thoth-tech/doubtfire-web/pull/326
Aditya Pratap Singh TomerMain ContributorMigrate Create Unit Modalhttps://github.com/thoth-tech/doubtfire-web/pull/350
Aditya Pratap Singh TomerMain ContributorMigrate Content Editablehttps://github.com/thoth-tech/doubtfire-web/pull/342
Aditya Pratap Singh TomerMain ContributorDesign Feature - Incorporate Contenthttps://github.com/thoth-tech/doubtfire-web/pull/365
Aditya Pratap Singh TomerMain ContributorCreate a new video guide/tutorial setting up dev environmenthttps://github.com/thoth-tech/doubtfire-web/pull/358
Aditya Pratap Singh TomerReviewerZip file upload ASAPhttps://github.com/thoth-tech/doubtfire-web/pull/291
Aditya Pratap Singh TomerReviewerMigrate file-uploaderhttps://github.com/thoth-tech/documentation/pull/599 https://github.com/thoth-tech/doubtfire-web/pull/366
Aditya Pratap Singh TomerReviewerSelf Enrolment feat: APIhttps://github.com/thoth-tech/doubtfire-api/pull/64
Aditya Pratap Singh TomerReviewerMigrate tutorials.coffeehttps://github.com/thoth-tech/documentation/pull/608 https://github.com/thoth-tech/doubtfire-web/pull/355
Agamveer SinghMain ContributorModify how units are handled and displayed in the study period (phase 3)https://github.com/thoth-tech/doubtfire-api/pull/62 https://github.com/thoth-tech/doubtfire-web/pull/323
Agamveer SinghMain ContributorCreate an overlay component that allows a user to find out more information about a unit.https://github.com/thoth-tech/doubtfire-web/pull/323
Agamveer SinghReviewerFix change_remotes.sh script to point to current upstreamhttps://github.com/thoth-tech/doubtfire-deploy/pull/24
Agamveer SinghReviewerMigrate group-member-list.coffeehttps://github.com/thoth-tech/documentation/pull/590 https://github.com/thoth-tech/doubtfire-web/pull/324
Agamveer SinghReviewerImplement a way for the containers to be added and deleted and units in the course map to be added, moved, swapped and deleted.https://github.com/thoth-tech/doubtfire-web/pull/309
Agamveer SinghReviewerPopulate the content of the unit component tab with drop down menus to filter the units that get displayed.https://github.com/thoth-tech/doubtfire-web/pull/308
Agamveer SinghReviewerMigrate progress-dashboard.coffeehttps://github.com/doubtfire-lms/doubtfire-web/pull/927 https://github.com/thoth-tech/documentation/pull/592 https://github.com/thoth-tech/doubtfire-web/pull/305
Alex BrownMain ContributorCreate proposal for Accessibility options with different colour themeshttps://github.com/doubtfire-lms/doubtfire-web/pull/932
Alex BrownReviewerAdd ability to mark unit as complete (phase 4)https://github.com/thoth-tech/doubtfire-web/pull/287
Alex BrownReviewerMigrate date-service.coffeehttps://github.com/doubtfire-lms/doubtfire-web/pull/931 https://github.com/thoth-tech/doubtfire-web/pull/280
Alex BrownReviewerFix change_remotes.sh script to point to current upstreamhttps://github.com/thoth-tech/doubtfire-deploy/pull/24
Alex BrownReviewerMigrate runtime.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/289
Alex BrownReviewerImport & Download list of tutorials by CSVhttps://github.com/thoth-tech/doubtfire-api/pull/59 https://github.com/thoth-tech/doubtfire-web/pull/314
Alex BrownReviewerMigrate unit-staff-editor.coffeehttps://github.com/thoth-tech/documentation/pull/607 https://github.com/thoth-tech/doubtfire-web/pull/334
Alex BrownReviewerNotifications for students not workinghttps://github.com/thoth-tech/doubtfire-api/pull/52
Alvin Odunga-CORS Vulnerability - Patch Fix and Validation
Amrith JayadeepMain ContributorBackend - Modify users Table to add Total Tutor Timehttps://github.com/thoth-tech/doubtfire-api/pull/53
Amrith JayadeepMain ContributorBackend: Organization Management, Site Administrator Logichttps://github.com/thoth-tech/doubtfire-api/pull/58
Amrith JayadeepMain ContributorNotifications for students not workinghttps://github.com/thoth-tech/doubtfire-api/pull/52
Amrith JayadeepMain ContributorFrontend: Organization Management, Site Administrator Logic and User Profileshttps://github.com/thoth-tech/doubtfire-web/pull/351
Amrith JayadeepReviewerMigrate outcome-service.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/302
Amrith JayadeepReviewerMigrate runtime.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/289
Amrith JayadeepReviewerImport & Download list of tutorials by CSVhttps://github.com/thoth-tech/doubtfire-api/pull/59 https://github.com/thoth-tech/doubtfire-web/pull/314
Amrith JayadeepReviewerWeb Security Audit: Broken Access Controlhttps://github.com/thoth-tech/doubtfire-astro/pull/34
Amrith JayadeepReviewerMigrate file-uploaderhttps://github.com/thoth-tech/documentation/pull/599 https://github.com/thoth-tech/doubtfire-web/pull/366
Amrith JayadeepReviewerMigrate students-list.coffeehttps://github.com/thoth-tech/documentation/pull/597 https://github.com/thoth-tech/doubtfire-web/pull/356
Amrith JayadeepReviewerSelf Enrolment feat: APIhttps://github.com/thoth-tech/doubtfire-api/pull/64
Anmol SainiReviewerCreate new Visualisation for Target Grade & Charthttps://github.com/thoth-tech/doubtfire-web/pull/326
Anmol SainiReviewerImport & Download list of tutorials by CSVhttps://github.com/thoth-tech/doubtfire-api/pull/59 https://github.com/thoth-tech/doubtfire-web/pull/314
Anmol SainiReviewerFrontend: Organization Management, Site Administrator Logic and User Profileshttps://github.com/thoth-tech/doubtfire-web/pull/351
Anmol SainiMain ContributiorMigrate groups.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/375
Anmol SainiMain ContributiorMigrate service.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/376
Atharv Sandip BhandareMain ContributorContract, Vulnerabilities, and End of Trimester security Reporthttps://github.com/thoth-tech/doubtfire-astro/pull/27
Atharv Sandip BhandareReviewerSecurity Issue: Session Hijacking via Forced Session Fixationhttps://github.com/thoth-tech/doubtfire-api/pull/61
Atharv Sandip BhandareMain ContributorMigrate progress-burndown-chart.coffeehttps://github.com/thoth-tech/documentation/pull/582 https://github.com/thoth-tech/doubtfire-web/pull/294
Atharv Sandip BhandareReviewerMigrate media-service.coffeehttps://github.com/doubtfire-lms/doubtfire-web/pull/929 https://github.com/thoth-tech/documentation/pull/580 https://github.com/thoth-tech/doubtfire-web/pull/284
Atharv Sandip BhandareReviewerMigrate routing.coffeehttps://github.com/thoth-tech/documentation/pull/584 https://github.com/thoth-tech/doubtfire-web/pull/296
Atharv Sandip BhandareMain ContributorSecurity Issue: Clickjacking via Missing Security Headershttps://github.com/thoth-tech/documentation/pull/593 https://github.com/thoth-tech/doubtfire-deploy/pull/28 https://github.com/thoth-tech/doubtfire-deploy/pull/29 https://github.com/thoth-tech/doubtfire-web/pull/321 https://github.com/thoth-tech/doubtfire-web/pull/322
Atharv Sandip BhandareMain ContributorSecurity Issue: Insecure Direct Object Ref - Unauthorized Access to Staff Infohttps://github.com/thoth-tech/documentation/pull/598 https://github.com/thoth-tech/doubtfire-api/pull/63
Atharv Sandip BhandareReviewerSecurity Issue: Malicious Code Executionhttps://github.com/thoth-tech/doubtfire-api/pull/65 https://github.com/thoth-tech/doubtfire-astro/pull/35 https://github.com/thoth-tech/doubtfire-web/pull/333 https://github.com/user-attachments/assets/12e0f75b-3941-45ff-82ce-c588c14a9554
Atharv Sandip BhandareReviewerCreate Visualisation Servicehttps://github.com/thoth-tech/doubtfire-web/pull/283
Atharv Sandip BhandareReviewerMigrate outcome-service.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/302
Atharv Sandip BhandareReviewerWeb Security Audit: Server-Side Request Forgery (SSRF)https://github.com/thoth-tech/doubtfire-astro/pull/28
Atharv Sandip BhandareReviewerCreate new Visualisation for Target Grade & Charthttps://github.com/thoth-tech/doubtfire-web/pull/326
Atharv Sandip BhandareReviewerMigrate group-member-list.coffeehttps://github.com/thoth-tech/documentation/pull/590 https://github.com/thoth-tech/doubtfire-web/pull/324
Atharv Sandip BhandareReviewerMigrate analytics-service.coffeehttps://github.com/doubtfire-lms/doubtfire-web/pull/930 https://github.com/thoth-tech/documentation/pull/587 https://github.com/thoth-tech/doubtfire-web/pull/292
Atharv Sandip BhandareReviewerMigrate progress-dashboard.coffeehttps://github.com/doubtfire-lms/doubtfire-web/pull/927 https://github.com/thoth-tech/documentation/pull/592 https://github.com/thoth-tech/doubtfire-web/pull/305
Atharv Sandip BhandareReviewerMigrate student-task-status-pie-chart.coffeehttps://github.com/doubtfire-lms/doubtfire-web/pull/928 https://github.com/thoth-tech/doubtfire-web/pull/300
Atharv Sandip BhandareReviewerMigrate portfolio-grade-select-step.coffeehttps://github.com/thoth-tech/documentation/pull/595 https://github.com/thoth-tech/doubtfire-web/pull/328
Atharv Sandip BhandareReviewerMigrate listener-service.coffeehttps://github.com/thoth-tech/documentation/pull/578 https://github.com/thoth-tech/doubtfire-web/pull/281
Atharv Sandip BhandareReviewerSecurity Issue: Session Hijacking - Insufficient Session Bindinghttps://github.com/thoth-tech/doubtfire-api/pull/61
Atharv Sandip BhandareReviewerWeb Security Audit: Injectionhttps://github.com/thoth-tech/doubtfire-astro/pull/36
Atharv Sandip BhandareReviewerFix: 9.x Burndown Data Visualisationhttps://github.com/thoth-tech/doubtfire-web/pull/331
Atharv Sandip BhandareReviewerMigrate analytics.coffeehttps://github.com/thoth-tech/documentation/pull/586 https://github.com/thoth-tech/documentation/pull/605 https://github.com/thoth-tech/doubtfire-web/pull/295
Atharv Sandip BhandareReviewerMigrate debug.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/299
Atharv Sandip BhandareReviewerMigrate group-member-contribution-assigner.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/339
Atharv Sandip BhandareReviewerMigration: task-ilo-alignment-raterhttps://github.com/thoth-tech/documentation/pull/603 https://github.com/thoth-tech/doubtfire-web/pull/338
Atharv Sandip BhandareReviewerSecurity Issue: Exposed JavaScript Source Maphttps://github.com/thoth-tech/documentation/pull/596 https://github.com/thoth-tech/doubtfire-astro/pull/37/commits
Atharv Sandip BhandareReviewerSecurity Issue: Insecure Token Exposure via Client-Side Storage and HTTP Headershttps://github.com/thoth-tech/doubtfire-astro/pull/38
Atharv Sandip BhandareReviewerWeb Security Audit: Identification and Authentication Failureshttps://github.com/thoth-tech/doubtfire-astro/pull/29
Atharv Sandip BhandareReviewerSecurity Issue: Exploitable CORS Configurationhttps://github.com/thoth-tech/doubtfire-astro/pull/41
Chelaka Yasodhana PathberiyageMain ContributorMigrate unit-dates-selector.coffeehttps://github.com/thoth-tech/documentation/pull/588 https://github.com/thoth-tech/doubtfire-web/pull/304
Chelaka Yasodhana PathberiyageMain ContributorMigrate portfolio-review-step.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/362
Chelaka Yasodhana PathberiyageReviewerMigrate portfolio-grade-select-step.coffeehttps://github.com/thoth-tech/documentation/pull/595 https://github.com/thoth-tech/doubtfire-web/pull/328
Chelaka Yasodhana PathberiyageReviewerMigrate unit-staff-editor.coffeehttps://github.com/thoth-tech/documentation/pull/607 https://github.com/thoth-tech/doubtfire-web/pull/334
Chelaka Yasodhana PathberiyageReviewerMigrate students-list.coffeehttps://github.com/thoth-tech/documentation/pull/597 https://github.com/thoth-tech/doubtfire-web/pull/356
Chelaka Yasodhana PathberiyageReviewerMigrate unit-details-editor.coffeehttps://github.com/thoth-tech/documentation/pull/606 https://github.com/thoth-tech/doubtfire-web/pull/370
Chelaka Yasodhana PathberiyageReviewerSelf Enrolment feat: UI placeholdershttps://github.com/thoth-tech/doubtfire-web/pull/306
Dau Duot AtemMain ContributorMigrate inbox.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/349
Dau Duot AtemReviewerImport & Download list of tutorials by CSVhttps://github.com/thoth-tech/doubtfire-api/pull/59 https://github.com/thoth-tech/doubtfire-web/pull/314
Dau Duot AtemReviewerFrontend: Organization Management, Site Administrator Logic and User Profileshttps://github.com/thoth-tech/doubtfire-web/pull/351
Dau Duot AtemReviewerMigrate content-editable.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/310
Disuru Pasanjith Rathnayake Rathnayake Thudugala Bandulage-Migrate alignment-bar-chart.coffee
Disuru Pasanjith Rathnayake Rathnayake Thudugala BandulageMain ContributorMigrate routing.coffeehttps://github.com/thoth-tech/documentation/pull/584 https://github.com/thoth-tech/doubtfire-web/pull/296
Disuru Pasanjith Rathnayake Rathnayake Thudugala BandulageMain ContributorMigration: task-ilo-alignment-raterhttps://github.com/thoth-tech/documentation/pull/603 https://github.com/thoth-tech/doubtfire-web/pull/338
Disuru Pasanjith Rathnayake Rathnayake Thudugala BandulageMain ContributorMigration: Component task-ilo-alignment-modal.coffeehttps://github.com/thoth-tech/documentation/pull/589
Disuru Pasanjith Rathnayake Rathnayake Thudugala BandulageReviewerMigrate student-task-status-pie-chart.coffeehttps://github.com/doubtfire-lms/doubtfire-web/pull/928 https://github.com/thoth-tech/doubtfire-web/pull/300
Disuru Pasanjith Rathnayake Rathnayake Thudugala BandulageReviewerMigrate analytics.coffeehttps://github.com/thoth-tech/documentation/pull/586 https://github.com/thoth-tech/documentation/pull/605 https://github.com/thoth-tech/doubtfire-web/pull/295
Disuru Pasanjith Rathnayake Rathnayake Thudugala BandulageReviewerMigrate unit-details-editor.coffeehttps://github.com/thoth-tech/documentation/pull/606 https://github.com/thoth-tech/doubtfire-web/pull/370
Disuru Pasanjith Rathnayake Rathnayake Thudugala BandulageReviewerFrontend Work - Tutor Timeshttps://github.com/thoth-tech/doubtfire-web/pull/363
Disuru Pasanjith Rathnayake Rathnayake Thudugala BandulageReviewerMigrate portfolios.coffeehttps://github.com/thoth-tech/documentation/pull/591 https://github.com/thoth-tech/doubtfire-web/pull/317
Disuru Pasanjith Rathnayake Rathnayake Thudugala BandulageReviewer[big task] Migrate filters.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/315
Duy NguyenMain ContributorCreate example templates for course maps.https://github.com/thoth-tech/doubtfire-api/pull/54
Duy NguyenMain ContributorImplement a way for the containers to be added and deleted and units in the course map to be added, moved, swapped and deleted.https://github.com/thoth-tech/doubtfire-web/pull/309
Duy NguyenMain ContributorAdd visual indicators for unit status
Duy NguyenMain ContributorCreate Requirement entity in the backendhttps://github.com/thoth-tech/doubtfire-api/pull/68
Duy NguyenReviewerAdd ability to mark unit as complete (phase 4)https://github.com/thoth-tech/doubtfire-web/pull/287
Duy NguyenReviewerModify how units are handled and displayed in the study period (phase 3)https://github.com/thoth-tech/doubtfire-api/pull/62 https://github.com/thoth-tech/doubtfire-web/pull/323
Duy NguyenReviewerPopulate the content of the unit component tab with drop down menus to filter the units that get displayed.https://github.com/thoth-tech/doubtfire-web/pull/308
Duy NguyenReviewerSelf Enrolment feat: APIhttps://github.com/thoth-tech/doubtfire-api/pull/64
Duy NguyenReviewerMigrate group-selector.coffeehttps://github.com/thoth-tech/documentation/pull/601 https://github.com/thoth-tech/doubtfire-web/pull/337
Edward NguyenMain ContributorAdd ability to mark unit as complete (phase 4)https://github.com/thoth-tech/doubtfire-web/pull/287
Edward NguyenMain ContributorPopulate the content of the unit component tab with drop down menus to filter the units that get displayed.https://github.com/thoth-tech/doubtfire-web/pull/308
Edward NguyenReviewerMigrate runtime.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/289
Edward NguyenReviewerImplement a way for the containers to be added and deleted and units in the course map to be added, moved, swapped and deleted.https://github.com/thoth-tech/doubtfire-web/pull/309
Edward NguyenReviewerMigrate file-uploaderhttps://github.com/thoth-tech/documentation/pull/599 https://github.com/thoth-tech/doubtfire-web/pull/366
Edward NguyenReviewerCreate Requirement entity in the backendhttps://github.com/thoth-tech/doubtfire-api/pull/68
Ekam BhullarMain ContributorMigrate group-member-contribution-assigner.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/339
Ekam BhullarMain ContributorFrontend Work - Tutor Timeshttps://github.com/thoth-tech/doubtfire-web/pull/363
Ekam BhullarMain ContributorMigrate group-selector.coffeehttps://github.com/thoth-tech/documentation/pull/601 https://github.com/thoth-tech/doubtfire-web/pull/337
Ekam BhullarMain ContributorRedesign Tutor Time feature to work automaticallyhttps://github.com/thoth-tech/doubtfire-astro/pull/32
Ekam BhullarReviewerBackend - Database Trigger for Auto-Update for Total Tutor Timehttps://github.com/martindolores/doubtfire-api/pull/1
Ekam BhullarReviewerBackend - Modify users Table to add Total Tutor Timehttps://github.com/thoth-tech/doubtfire-api/pull/53
Ekam BhullarReviewerBackend - Redesign Tutor Time Featurehttps://github.com/thoth-tech/doubtfire-astro/pull/30 https://github.com/thoth-tech/doubtfire-astro/pull/33
Ekam BhullarReviewerSecure Settings Endpointhttps://github.com/thoth-tech/doubtfire-api/pull/67
Ekam BhullarReviewerMigrate group-set-managerhttps://github.com/thoth-tech/documentation/pull/604 https://github.com/thoth-tech/doubtfire-web/pull/361
Ekam BhullarReviewerSelf Enrolment feat: UI placeholdershttps://github.com/thoth-tech/doubtfire-web/pull/306
Ekam BhullarReviewerCreate proposal for Accessibility options with different colour themeshttps://github.com/doubtfire-lms/doubtfire-web/pull/932
Eliya GeerlingsMain ContributorMigrate local-storage.coffee
Eliya GeerlingsMain ContributorZip file upload ASAPhttps://github.com/thoth-tech/doubtfire-web/pull/291
Eliya GeerlingsMain ContributorClarify requirements, make plans for executionhttps://github.com/thoth-tech/documentation/pull/581
Eliya GeerlingsMain ContributorFix CI lint checks in thoth-tech/documentationhttps://github.com/thoth-tech/documentation/pull/585
Eliya GeerlingsMain ContributorIdentify and fix build issues on windows on 8.0.x branchhttps://github.com/doubtfire-lms/doubtfire-web/pull/922
Eliya GeerlingsMain ContributorSelf Enrolment feat: APIhttps://github.com/thoth-tech/doubtfire-api/pull/64
Eliya GeerlingsMain ContributorSelf Enrolment feat: UI placeholdershttps://github.com/thoth-tech/doubtfire-web/pull/306
Eliya GeerlingsMain ContributorFix build issue on windows for 9.x branchhttps://github.com/doubtfire-lms/doubtfire-web/pull/925
Eliya GeerlingsReviewerCreate Visualisation Servicehttps://github.com/thoth-tech/doubtfire-web/pull/283
Eliya GeerlingsReviewerAdd ability to mark unit as complete (phase 4)https://github.com/thoth-tech/doubtfire-web/pull/287
Eliya GeerlingsReviewerBackend - Create new table tutor_timeshttps://github.com/thoth-tech/doubtfire-api/pull/51
Eliya GeerlingsReviewerBackend - Modify users Table to add Total Tutor Timehttps://github.com/thoth-tech/doubtfire-api/pull/53
Eliya GeerlingsReviewerCreate example templates for course maps.https://github.com/thoth-tech/doubtfire-api/pull/54
Eliya GeerlingsReviewerMigrate unit-dates-selector.coffeehttps://github.com/thoth-tech/documentation/pull/588 https://github.com/thoth-tech/doubtfire-web/pull/304
Eliya GeerlingsReviewerBackend: Organization Management, Site Administrator Logichttps://github.com/thoth-tech/doubtfire-api/pull/58
Eliya GeerlingsReviewerFix change_remotes.sh script to point to current upstreamhttps://github.com/thoth-tech/doubtfire-deploy/pull/24
Eliya GeerlingsReviewerBackend - Redesign Tutor Time Featurehttps://github.com/thoth-tech/doubtfire-astro/pull/30 https://github.com/thoth-tech/doubtfire-astro/pull/33
Eliya GeerlingsReviewerFrontend Work: Form Validationhttps://github.com/thoth-tech/doubtfire-web/pull/285
Eliya GeerlingsReviewerEnhance draft comments to save locally per task, rather than accross all tasks.https://github.com/thoth-tech/doubtfire-web/pull/301
Eliya GeerlingsReviewerNotifications for students not workinghttps://github.com/thoth-tech/doubtfire-api/pull/52
Eliya GeerlingsReviewerBackend Work: Set up notification systemhttps://github.com/thoth-tech/doubtfire-api/pull/60
Eliya GeerlingsReviewerMigrate content-editable.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/310
Eliya GeerlingsReviewer[big task] Migrate filters.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/315
Hasindu Deshitha WelarathneMain ContributorMigrate debug.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/299
Hasindu Deshitha WelarathneMain ContributorMigrate students-list.coffeehttps://github.com/thoth-tech/documentation/pull/597 https://github.com/thoth-tech/doubtfire-web/pull/356
Hasindu Deshitha WelarathneReviewerFix: 9.x Burndown Data Visualisationhttps://github.com/thoth-tech/doubtfire-web/pull/331
Hasindu Deshitha WelarathneReviewerMigrate group-selector.coffeehttps://github.com/thoth-tech/documentation/pull/601 https://github.com/thoth-tech/doubtfire-web/pull/337
Hasindu Deshitha WelarathneReviewerMigrate tutorials.coffeehttps://github.com/thoth-tech/documentation/pull/608 https://github.com/thoth-tech/doubtfire-web/pull/355
Ibi Fatoki-Security Issue: Session Hijacking via Forced Session Fixation
Ibi FatokiMain ContributorWeb Security Audit: Server-Side Request Forgery (SSRF)https://github.com/thoth-tech/doubtfire-astro/pull/28
Ibi FatokiMain ContributorSecurity Issue: Malicious Code Executionhttps://github.com/thoth-tech/doubtfire-api/pull/65 https://github.com/thoth-tech/doubtfire-astro/pull/35 https://github.com/thoth-tech/doubtfire-web/pull/333 https://github.com/user-attachments/assets/12e0f75b-3941-45ff-82ce-c588c14a9554
Ibi FatokiMain ContributorSecurity Issue: Exploitable CORS Configurationhttps://github.com/thoth-tech/doubtfire-astro/pull/41
Ibi FatokiReviewerBackend: Organization Management, Site Administrator Logichttps://github.com/thoth-tech/doubtfire-api/pull/58
Ibi FatokiReviewerDesign Feature - Incorporate Contenthttps://github.com/thoth-tech/doubtfire-web/pull/365
Ibi FatokiReviewerMigrate unit-staff-editor.coffeehttps://github.com/thoth-tech/documentation/pull/607 https://github.com/thoth-tech/doubtfire-web/pull/334
Ibi FatokiReviewerWeb Security Audit: Broken Access Controlhttps://github.com/thoth-tech/doubtfire-astro/pull/34
Ibi FatokiReviewerSecurity Issue: Clickjacking via Missing Security Headershttps://github.com/thoth-tech/documentation/pull/593 https://github.com/thoth-tech/doubtfire-deploy/pull/28 https://github.com/thoth-tech/doubtfire-deploy/pull/29 https://github.com/thoth-tech/doubtfire-web/pull/321 https://github.com/thoth-tech/doubtfire-web/pull/322
Ibi FatokiReviewerSecurity Issue: Session Hijacking - Insufficient Session Bindinghttps://github.com/thoth-tech/doubtfire-api/pull/61
Ibi FatokiReviewerWeb Security Audit: Injectionhttps://github.com/thoth-tech/doubtfire-astro/pull/36
Ibi FatokiReviewerMigrate debug.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/299
Ibi FatokiReviewerSecurity Issue: Exposed JavaScript Source Maphttps://github.com/thoth-tech/documentation/pull/596 https://github.com/thoth-tech/doubtfire-astro/pull/37/commits
Ibi FatokiReviewerSecurity Issue: Insecure Token Exposure via Client-Side Storage and HTTP Headershttps://github.com/thoth-tech/doubtfire-astro/pull/38
Ibi FatokiReviewerWeb Security Audit: Identification and Authentication Failureshttps://github.com/thoth-tech/doubtfire-astro/pull/29
Ibi FatokiReviewerEnhance draft comments to save locally per task, rather than accross all tasks.https://github.com/thoth-tech/doubtfire-web/pull/301
Ibi FatokiReviewerMigrate content-editable.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/310
Iris Chen-Security Issue: Session Hijacking via Forced Session Fixation
Iris ChenMain ContributorSecure Settings Endpointhttps://github.com/thoth-tech/doubtfire-api/pull/67
Iris ChenMain ContributorWeb Security Audit: Broken Access Controlhttps://github.com/thoth-tech/doubtfire-astro/pull/34
Iris ChenMain ContributorWeb Security Audit: Injectionhttps://github.com/thoth-tech/doubtfire-astro/pull/36
Iris ChenReviewerWeb Security Audit: Server-Side Request Forgery (SSRF)https://github.com/thoth-tech/doubtfire-astro/pull/28
Iris ChenReviewerCreate new Visualisation for Target Grade & Charthttps://github.com/thoth-tech/doubtfire-web/pull/326
Iris ChenReviewerSecurity Issue: Clickjacking via Missing Security Headershttps://github.com/thoth-tech/documentation/pull/593 https://github.com/thoth-tech/doubtfire-deploy/pull/28 https://github.com/thoth-tech/doubtfire-deploy/pull/29 https://github.com/thoth-tech/doubtfire-web/pull/321 https://github.com/thoth-tech/doubtfire-web/pull/322
Iris ChenReviewerSecurity Issue: Malicious Code Executionhttps://github.com/thoth-tech/doubtfire-api/pull/65 https://github.com/thoth-tech/doubtfire-astro/pull/35 https://github.com/thoth-tech/doubtfire-web/pull/333 https://github.com/user-attachments/assets/12e0f75b-3941-45ff-82ce-c588c14a9554
Iris ChenReviewerSecurity Issue: Session Hijacking - Insufficient Session Bindinghttps://github.com/thoth-tech/doubtfire-api/pull/61
Iris ChenReviewerSecurity Issue: Exposed JavaScript Source Maphttps://github.com/thoth-tech/documentation/pull/596 https://github.com/thoth-tech/doubtfire-astro/pull/37/commits
Iris ChenReviewerWeb Security Audit: Identification and Authentication Failureshttps://github.com/thoth-tech/doubtfire-astro/pull/29
Iris ChenReviewerEnhance draft comments to save locally per task, rather than accross all tasks.https://github.com/thoth-tech/doubtfire-web/pull/301
Iris ChenReviewerMigrate tutorials.coffeehttps://github.com/thoth-tech/documentation/pull/608 https://github.com/thoth-tech/doubtfire-web/pull/355
Iris ChenReviewerSecurity Issue: Exploitable CORS Configurationhttps://github.com/thoth-tech/doubtfire-astro/pull/41
Jason Mark VellucciMain ContributorMigrate date-service.coffeehttps://github.com/doubtfire-lms/doubtfire-web/pull/931 https://github.com/thoth-tech/doubtfire-web/pull/280
Jason Mark VellucciMain ContributorMigrate unit-staff-editor.coffeehttps://github.com/thoth-tech/documentation/pull/607 https://github.com/thoth-tech/doubtfire-web/pull/334
Jason Mark VellucciMain ContributorMigrate tutorials.coffeehttps://github.com/thoth-tech/documentation/pull/608 https://github.com/thoth-tech/doubtfire-web/pull/355
Jason Mark VellucciReviewerMigrate outcome-service.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/302
Jason Mark VellucciReviewerSecurity Issue: Malicious Code Executionhttps://github.com/thoth-tech/doubtfire-api/pull/65 https://github.com/thoth-tech/doubtfire-astro/pull/35 https://github.com/thoth-tech/doubtfire-web/pull/333 https://github.com/user-attachments/assets/12e0f75b-3941-45ff-82ce-c588c14a9554
Jason Mark VellucciReviewerMigrate portfolio-review-step.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/362
Jason Mark VellucciReviewerSelf Enrolment feat: UI placeholdershttps://github.com/thoth-tech/doubtfire-web/pull/306
Jason Mark VellucciReviewerUpdate documentation in doubtfire-astro for staff grant extension new APIs and FE componentshttps://github.com/thoth-tech/doubtfire-astro/pull/40
Joe Iwasaki Maclean-Extend the UI to select multiple students to grant extension
Joe Iwasaki MacleanMain ContributorFrontend Work: API integration for form submissionhttps://github.com/thoth-tech/doubtfire-web/pull/330
Joe Iwasaki MacleanReviewerFrontend work: Grant Extension Form UIhttps://github.com/thoth-tech/doubtfire-web/pull/285
Joe Iwasaki MacleanReviewerMigrate media-service.coffeehttps://github.com/doubtfire-lms/doubtfire-web/pull/929 https://github.com/thoth-tech/documentation/pull/580 https://github.com/thoth-tech/doubtfire-web/pull/284
Joe Iwasaki MacleanReviewerMigrate analytics-service.coffeehttps://github.com/doubtfire-lms/doubtfire-web/pull/930 https://github.com/thoth-tech/documentation/pull/587 https://github.com/thoth-tech/doubtfire-web/pull/292
Joe Iwasaki MacleanReviewerFrontend Work: Form Validationhttps://github.com/thoth-tech/doubtfire-web/pull/285
Joe Iwasaki MacleanReviewerMigrate listener-service.coffeehttps://github.com/thoth-tech/documentation/pull/578 https://github.com/thoth-tech/doubtfire-web/pull/281
Joe Iwasaki MacleanReviewerBackend Work: Set up notification systemhttps://github.com/thoth-tech/doubtfire-api/pull/60
Joe Iwasaki MacleanReviewerBackend- In-system notification systemhttps://github.com/thoth-tech/doubtfire-api/pull/69
Joe Iwasaki MacleanReviewerCreate API Endpoint for Granting Extensionshttps://github.com/thoth-tech/doubtfire-api/pull/56
Joe Iwasaki MacleanReviewerFrontend Work: Set up notification UIhttps://github.com/thoth-tech/doubtfire-web/pull/353
Joe Iwasaki MacleanReviewerFrontend Work: Student search and selectionhttps://github.com/thoth-tech/doubtfire-web/pull/359
Josh BevanReviewerFix typo in /edit_profilehttps://github.com/doubtfire-lms/doubtfire-web/pull/921 https://github.com/thoth-tech/doubtfire-web/pull/279
Josh BevanReviewerBackend - Create new table tutor_timeshttps://github.com/thoth-tech/doubtfire-api/pull/51
Josh BevanReviewerWeb Security Audit: Server-Side Request Forgery (SSRF)https://github.com/thoth-tech/doubtfire-astro/pull/28
Josh BevanReviewerSecurity Issue: Session Hijacking - Insufficient Session Bindinghttps://github.com/thoth-tech/doubtfire-api/pull/61
Josh BevanReviewerCreate proposal for Accessibility options with different colour themeshttps://github.com/doubtfire-lms/doubtfire-web/pull/932
Jude Rozairo-CORS Vulnerability - Patch Fix and Validation
Jude Rozairo-OWASP Top 10 report and action items
Jude RozairoMain ContributorEnhance draft comments to save locally per task, rather than accross all tasks.https://github.com/thoth-tech/doubtfire-web/pull/301
Jude RozairoMain ContributorHistory of Target Grade change Pagination
Jude RozairoReviewerFix typo in /edit_profilehttps://github.com/doubtfire-lms/doubtfire-web/pull/921 https://github.com/thoth-tech/doubtfire-web/pull/279
Jude RozairoReviewerZip file upload ASAPhttps://github.com/thoth-tech/doubtfire-web/pull/291
Jude RozairoReviewerCreate new Visualisation for Target Grade & Charthttps://github.com/thoth-tech/doubtfire-web/pull/326
Jude RozairoReviewerMigrate debug.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/299
Jude RozairoReviewerMigrate students-list.coffeehttps://github.com/thoth-tech/documentation/pull/597 https://github.com/thoth-tech/doubtfire-web/pull/356
Lachlan Mackie RobinsonMain ContributorCreate Visualisation Servicehttps://github.com/thoth-tech/doubtfire-web/pull/283
Lachlan Mackie RobinsonMain ContributorMigrate progress-dashboard.coffeehttps://github.com/doubtfire-lms/doubtfire-web/pull/927 https://github.com/thoth-tech/documentation/pull/592 https://github.com/thoth-tech/doubtfire-web/pull/305
Lachlan Mackie RobinsonMain ContributorMigrate student-task-status-pie-chart.coffeehttps://github.com/doubtfire-lms/doubtfire-web/pull/928 https://github.com/thoth-tech/doubtfire-web/pull/300
Lachlan Mackie RobinsonMain ContributorMigrate listener-service.coffeehttps://github.com/thoth-tech/documentation/pull/578 https://github.com/thoth-tech/doubtfire-web/pull/281
Lachlan Mackie RobinsonMain ContributorFix: 9.x Burndown Data Visualisationhttps://github.com/thoth-tech/doubtfire-web/pull/331
Lachlan Mackie RobinsonMain ContributorFix: Astro index imagehttps://github.com/thoth-tech/doubtfire-astro/pull/26
Lachlan Mackie RobinsonMain ContributorSecurity Issue: Exposed JavaScript Source Maphttps://github.com/thoth-tech/documentation/pull/596 https://github.com/thoth-tech/doubtfire-astro/pull/37/commits
Lachlan Mackie RobinsonMain ContributorSecurity Issue: Insecure Token Exposure via Client-Side Storage and HTTP Headershttps://github.com/thoth-tech/doubtfire-astro/pull/38
Lachlan Mackie RobinsonReviewerMigrate media-service.coffeehttps://github.com/doubtfire-lms/doubtfire-web/pull/929 https://github.com/thoth-tech/documentation/pull/580 https://github.com/thoth-tech/doubtfire-web/pull/284
Lachlan Mackie RobinsonReviewerMigrate analytics-service.coffeehttps://github.com/doubtfire-lms/doubtfire-web/pull/930 https://github.com/thoth-tech/documentation/pull/587 https://github.com/thoth-tech/doubtfire-web/pull/292
Lachlan Mackie RobinsonReviewerMigrate portfolio-grade-select-step.coffeehttps://github.com/thoth-tech/documentation/pull/595 https://github.com/thoth-tech/doubtfire-web/pull/328
Lachlan Mackie RobinsonReviewerMigrate unit-staff-editor.coffeehttps://github.com/thoth-tech/documentation/pull/607 https://github.com/thoth-tech/doubtfire-web/pull/334
Lachlan Mackie RobinsonReviewerSecurity Issue: Clickjacking via Missing Security Headershttps://github.com/thoth-tech/documentation/pull/593 https://github.com/thoth-tech/doubtfire-deploy/pull/28 https://github.com/thoth-tech/doubtfire-deploy/pull/29 https://github.com/thoth-tech/doubtfire-web/pull/321 https://github.com/thoth-tech/doubtfire-web/pull/322
Lachlan Mackie RobinsonReviewerMigration: task-ilo-alignment-raterhttps://github.com/thoth-tech/documentation/pull/603 https://github.com/thoth-tech/doubtfire-web/pull/338
Lachlan Mackie RobinsonReviewerCreate a new video guide/tutorial setting up dev environmenthttps://github.com/thoth-tech/doubtfire-web/pull/358
Lachlan Mackie RobinsonReviewerMigration: Component task-ilo-alignment-modal.coffeehttps://github.com/thoth-tech/documentation/pull/589
Lachlan Mackie RobinsonReviewer[big task] Migrate filters.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/315
Lovleen KalaMain ContributorMigrate group-member-list.coffeehttps://github.com/thoth-tech/documentation/pull/590 https://github.com/thoth-tech/doubtfire-web/pull/324
Lovleen KalaMain ContributorMigrate file-uploaderhttps://github.com/thoth-tech/documentation/pull/599 https://github.com/thoth-tech/doubtfire-web/pull/366
Lovleen KalaMain ContributorMigrate group-set-managerhttps://github.com/thoth-tech/documentation/pull/604 https://github.com/thoth-tech/doubtfire-web/pull/361
Lovleen KalaReviewerModify how units are handled and displayed in the study period (phase 3)https://github.com/thoth-tech/doubtfire-api/pull/62 https://github.com/thoth-tech/doubtfire-web/pull/323
Lovleen KalaReviewerBackend: Organization Management, Site Administrator Logichttps://github.com/thoth-tech/doubtfire-api/pull/58
Lovleen KalaReviewerFix change_remotes.sh script to point to current upstreamhttps://github.com/thoth-tech/doubtfire-deploy/pull/24
Lovleen KalaReviewerDesign Feature - Incorporate Contenthttps://github.com/thoth-tech/doubtfire-web/pull/365
Lovleen KalaReviewerMigrate analytics-service.coffeehttps://github.com/doubtfire-lms/doubtfire-web/pull/930 https://github.com/thoth-tech/documentation/pull/587 https://github.com/thoth-tech/doubtfire-web/pull/292
Lovleen KalaReviewerMigrate progress-dashboard.coffeehttps://github.com/doubtfire-lms/doubtfire-web/pull/927 https://github.com/thoth-tech/documentation/pull/592 https://github.com/thoth-tech/doubtfire-web/pull/305
Lovleen KalaReviewerFrontend Work - Tutor Timeshttps://github.com/thoth-tech/doubtfire-web/pull/363
Lovleen KalaReviewerMigrate group-selector.coffeehttps://github.com/thoth-tech/documentation/pull/601 https://github.com/thoth-tech/doubtfire-web/pull/337
Martin John DoloresMain ContributorBackend Work - Tutor Times
Martin John DoloresMain ContributorBackend - Create POST and PUT endpoint to record/edit Tutor Timehttps://github.com/martindolores/doubtfire-api/pull/2
Martin John DoloresMain ContributorBackend - Create new table tutor_timeshttps://github.com/thoth-tech/doubtfire-api/pull/51
Martin John DoloresMain ContributorBackend - Database Trigger for Auto-Update for Total Tutor Timehttps://github.com/martindolores/doubtfire-api/pull/1
Martin John DoloresMain ContributorBackend - Create session_activities table
Martin John DoloresMain ContributorMigrate content-editable.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/310
Martin John DoloresMain Contributor[big task] Migrate filters.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/315
Martin John DoloresReviewerFix typo in /edit_profilehttps://github.com/doubtfire-lms/doubtfire-web/pull/921 https://github.com/thoth-tech/doubtfire-web/pull/279
Martin John DoloresReviewerBackend - Modify users Table to add Total Tutor Timehttps://github.com/thoth-tech/doubtfire-api/pull/53
Martin John DoloresReviewerCreate example templates for course maps.https://github.com/thoth-tech/doubtfire-api/pull/54
Martin John DoloresReviewerMigrate unit-dates-selector.coffeehttps://github.com/thoth-tech/documentation/pull/588 https://github.com/thoth-tech/doubtfire-web/pull/304
Martin John DoloresReviewerBackend - Redesign Tutor Time Featurehttps://github.com/thoth-tech/doubtfire-astro/pull/30 https://github.com/thoth-tech/doubtfire-astro/pull/33
Martin John DoloresReviewerNotifications for students not workinghttps://github.com/thoth-tech/doubtfire-api/pull/52
Martin John DoloresReviewerMigrate tutorials.coffeehttps://github.com/thoth-tech/documentation/pull/608 https://github.com/thoth-tech/doubtfire-web/pull/355
Martin John DoloresReviewerRedesign Tutor Time feature to work automaticallyhttps://github.com/thoth-tech/doubtfire-astro/pull/32
Pasindu FernandoMain ContributorMigrate portfolio-grade-select-step.coffeehttps://github.com/thoth-tech/documentation/pull/595 https://github.com/thoth-tech/doubtfire-web/pull/328
Pasindu FernandoMain ContributorMigrate analytics.coffeehttps://github.com/thoth-tech/documentation/pull/586 https://github.com/thoth-tech/documentation/pull/605 https://github.com/thoth-tech/doubtfire-web/pull/295
Pasindu FernandoMain ContributorMigrate unit-details-editor.coffeehttps://github.com/thoth-tech/documentation/pull/606 https://github.com/thoth-tech/doubtfire-web/pull/370
Pasindu FernandoReviewerMigrate routing.coffeehttps://github.com/thoth-tech/documentation/pull/584 https://github.com/thoth-tech/doubtfire-web/pull/296
Pasindu FernandoReviewerMigrate progress-dashboard.coffeehttps://github.com/doubtfire-lms/doubtfire-web/pull/927 https://github.com/thoth-tech/documentation/pull/592 https://github.com/thoth-tech/doubtfire-web/pull/305
Pasindu FernandoReviewerMigrate inbox.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/349
Pasindu FernandoReviewerMigrate group-member-contribution-assigner.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/339
Pasindu FernandoReviewerMigrate portfolio-review-step.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/362
Pasindu FernandoReviewerFrontend Work: Student search and selectionhttps://github.com/thoth-tech/doubtfire-web/pull/359
Pasindu FernandoReviewerMigrate portfolios.coffeehttps://github.com/thoth-tech/documentation/pull/591 https://github.com/thoth-tech/doubtfire-web/pull/317
Sahiru Heshan Withanage-Extend the UI to select multiple students to grant extension
Sahiru Heshan WithanageMain ContributorBackend Work: Set up notification systemhttps://github.com/thoth-tech/doubtfire-api/pull/60
Sahiru Heshan WithanageMain ContributorCreate API Endpoint for Granting Extensionshttps://github.com/thoth-tech/doubtfire-api/pull/56
Sahiru Heshan WithanageMain ContributorFrontend Work: Student search and selectionhttps://github.com/thoth-tech/doubtfire-web/pull/359
Sahiru Heshan WithanageReviewerFrontend work: Grant Extension Form UIhttps://github.com/thoth-tech/doubtfire-web/pull/285
Sahiru Heshan WithanageReviewerMigrate routing.coffeehttps://github.com/thoth-tech/documentation/pull/584 https://github.com/thoth-tech/doubtfire-web/pull/296
Sahiru Heshan WithanageReviewerMigrate student-task-status-pie-chart.coffeehttps://github.com/doubtfire-lms/doubtfire-web/pull/928 https://github.com/thoth-tech/doubtfire-web/pull/300
Sahiru Heshan WithanageReviewerMigrate inbox.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/349
Sahiru Heshan WithanageReviewerFrontend Work: Form Validationhttps://github.com/thoth-tech/doubtfire-web/pull/285
Sahiru Heshan WithanageReviewerMigrate group-member-contribution-assigner.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/339
Sahiru Heshan WithanageReviewerMigration: task-ilo-alignment-raterhttps://github.com/thoth-tech/documentation/pull/603 https://github.com/thoth-tech/doubtfire-web/pull/338
Sahiru Heshan WithanageReviewerFrontend Work: API integration for form submissionhttps://github.com/thoth-tech/doubtfire-web/pull/330
Sahiru Heshan WithanageReviewerBackend- In-system notification systemhttps://github.com/thoth-tech/doubtfire-api/pull/69
Sahiru Heshan WithanageReviewerFrontend Work: Set up notification UIhttps://github.com/thoth-tech/doubtfire-web/pull/353
Samindi Situmya Ratnayake Mudiyanselage-Extend the UI to select multiple students to grant extension
Samindi Situmya Ratnayake MudiyanselageMain ContributorFeature exploration: Staff Grant Extension
Samindi Situmya Ratnayake MudiyanselageMain ContributorImport & Download list of tutorials by CSVhttps://github.com/thoth-tech/doubtfire-api/pull/59 https://github.com/thoth-tech/doubtfire-web/pull/314
Samindi Situmya Ratnayake MudiyanselageMain ContributorWeb Security Audit: Identification and Authentication Failureshttps://github.com/thoth-tech/doubtfire-astro/pull/29
Samindi Situmya Ratnayake MudiyanselageMain ContributorBackend- In-system notification systemhttps://github.com/thoth-tech/doubtfire-api/pull/69
Samindi Situmya Ratnayake MudiyanselageMain ContributorFrontend Work: Set up notification UIhttps://github.com/thoth-tech/doubtfire-web/pull/353
Samindi Situmya Ratnayake MudiyanselageMain ContributorUpdate documentation in doubtfire-astro for staff grant extension new APIs and FE componentshttps://github.com/thoth-tech/doubtfire-astro/pull/40
Samindi Situmya Ratnayake MudiyanselageReviewerFrontend work: Grant Extension Form UIhttps://github.com/thoth-tech/doubtfire-web/pull/285
Samindi Situmya Ratnayake MudiyanselageReviewerZip file upload ASAPhttps://github.com/thoth-tech/doubtfire-web/pull/291
Samindi Situmya Ratnayake MudiyanselageReviewerBackend - Create new table tutor_timeshttps://github.com/thoth-tech/doubtfire-api/pull/51
Samindi Situmya Ratnayake MudiyanselageReviewerCreate example templates for course maps.https://github.com/thoth-tech/doubtfire-api/pull/54
Samindi Situmya Ratnayake MudiyanselageReviewerFrontend Work: Form Validationhttps://github.com/thoth-tech/doubtfire-web/pull/285
Samindi Situmya Ratnayake MudiyanselageReviewerSecurity Issue: Insecure Token Exposure via Client-Side Storage and HTTP Headershttps://github.com/thoth-tech/doubtfire-astro/pull/38
Samindi Situmya Ratnayake MudiyanselageReviewerFrontend Work: API integration for form submissionhttps://github.com/thoth-tech/doubtfire-web/pull/330
Samindi Situmya Ratnayake MudiyanselageReviewerBackend Work: Set up notification systemhttps://github.com/thoth-tech/doubtfire-api/pull/60
Samindi Situmya Ratnayake MudiyanselageReviewerCreate API Endpoint for Granting Extensionshttps://github.com/thoth-tech/doubtfire-api/pull/56
Su Myat Thiri-Migrate alignment-bar-chart.coffee
Su Myat ThiriReviewerMigrate unit-dates-selector.coffeehttps://github.com/thoth-tech/documentation/pull/588 https://github.com/thoth-tech/doubtfire-web/pull/304
Su Myat ThiriReviewerMigrate outcome-service.coffeehttps://github.com/thoth-tech/doubtfire-web/pull/302
Su Myat ThiriReviewerMigrate tutorials.coffeehttps://github.com/thoth-tech/documentation/pull/608 https://github.com/thoth-tech/doubtfire-web/pull/355
Su Myat ThiriReviewerUpdate documentation in doubtfire-astro for staff grant extension new APIs and FE componentshttps://github.com/thoth-tech/doubtfire-astro/pull/40
Tan Tai NguyenMain ContributorMigrate portfolios.coffee
Xin Huang-Clickjacking: X-Frame-Options header - Patch Fix and Validation
Zara Lauren Danziger-Migrate alignment-bar-chart.coffee
Zara Lauren DanzigerMain ContributorMigrate media-service.coffeehttps://github.com/doubtfire-lms/doubtfire-web/pull/929 https://github.com/thoth-tech/documentation/pull/580 https://github.com/thoth-tech/doubtfire-web/pull/284
Zara Lauren DanzigerMain ContributorMigrate analytics-service.coffeehttps://github.com/doubtfire-lms/doubtfire-web/pull/930 https://github.com/thoth-tech/documentation/pull/587 https://github.com/thoth-tech/doubtfire-web/pull/292
Zara Lauren DanzigerMain ContributorMigrate portfolios.coffeehttps://github.com/thoth-tech/documentation/pull/591 https://github.com/thoth-tech/doubtfire-web/pull/317
Zara Lauren DanzigerReviewerMigrate date-service.coffeehttps://github.com/doubtfire-lms/doubtfire-web/pull/931 https://github.com/thoth-tech/doubtfire-web/pull/280
Zara Lauren DanzigerReviewerMigrate group-member-list.coffeehttps://github.com/thoth-tech/documentation/pull/590 https://github.com/thoth-tech/doubtfire-web/pull/324
Zara Lauren DanzigerReviewerFrontend Work: Form Validationhttps://github.com/thoth-tech/doubtfire-web/pull/285
Zara Lauren DanzigerReviewerMigrate listener-service.coffeehttps://github.com/thoth-tech/documentation/pull/578 https://github.com/thoth-tech/doubtfire-web/pull/281
Zara Lauren DanzigerReviewerFix: 9.x Burndown Data Visualisationhttps://github.com/thoth-tech/doubtfire-web/pull/331
Zara Lauren DanzigerReviewerMigrate analytics.coffeehttps://github.com/thoth-tech/documentation/pull/586 https://github.com/thoth-tech/documentation/pull/605 https://github.com/thoth-tech/doubtfire-web/pull/295
Zara Lauren DanzigerReviewerMigrate group-set-managerhttps://github.com/thoth-tech/documentation/pull/604 https://github.com/thoth-tech/doubtfire-web/pull/361
Zara Lauren DanzigerReviewerMigrate tutorials.coffeehttps://github.com/thoth-tech/documentation/pull/608 https://github.com/thoth-tech/doubtfire-web/pull/355

Roadmap

AppAttack x OnTrack

Although the team successfully addressed 7 of the initially reported vulnerabilities, 3 critical issues remain unresolved due to time constraints in the current trimester:

  • Publicly Accessible API Documentation via Swagger
  • Privilege Escalation – Tutor Accessing Admin Pages
  • Insufficient Token Entropy
  • These issues have been logged for future action and will be passed on to the incoming development cohort.
  • The AppAttack x OnTrack initiative is designed as a cyclical vulnerability resolution process, where ongoing findings from HardHat will be reviewed, prioritised, and patched incrementally by future teams.
  • End of Trimester Security Report with new vulnerabilities have been received for future cohorts to work upon.
  • Patch plans are available in the security board to ensure smooth continuity.

Onboarding Guide for New OnTrack Contributors

An onboarding guide is planned to support new students joining the OnTrack project in future trimesters. This guide will be published in the OnTrack technical documentation (doubtfire-astro) and will include:

  • Environment setup instructions (Node, Docker, Git access),
  • Navigating the Planner board and understanding task structure,
  • Contribution process (feature branches, PR creation, peer reviews),
  • Common setup errors and FAQs. This task is currently not started and will be prioritized in the next trimester to streamline onboarding and reduce dependency on live mentorship.

Bug Fixes & Urgent Enhancements

Bug resolution and urgent frontend/backend enhancements are ongoing processes tracked in dedicated Planner buckets and will be continued by future teams as part of regular maintenance.

Planned Improvements

Ongoing improvements such as UI redesigns, grade tracking features, model migrations, and structural standardization are in the pipeline and recommended for future development cycles.

Panopto Video Integration

Integration with Panopto for secure video uploads, metadata handling, and embedding is fully scoped but remains in backlog for future implementation across frontend and backend components.

OnTrack Documentation Website

Efforts to centralize OnTrack’s technical documentation and create a dedicated onboarding experience remain in backlog, with plans to unify API and backend docs in upcoming trimesters.

Multiple Organisations Support

Planned enhancements to support multi-organisation functionality-including switching logic, access control, and org-based context switching-remain in backlog for future implementation.

Incorporate Content in OnTrack

A new feature to enable content integration within OnTrack-including API updates, frontend component builds, and database schema changes is fully scoped but remains in backlog.

Tutor Times Feature

A full-stack Tutor Times feature-spanning frontend integration, session tracking services, analytics APIs, and documentation has been fully scoped but remains in backlog for future development.

Staff Grant Extension

While the feature is functionally complete, remaining backlog items such as performance testing and error handling are pending and may be addressed in future sprints if required.

Authentication Module

The authentication module including third-party sign-ons, secure cookie handling, and internal password management is in backlog and scoped for future implementation.

Security Enhancement

Pending security tasks including CI/CD testing integration, access control fixes, audit issue resolutions, and standardizing authentication—are in backlog for future implementation and hardening.

CourseFlow Feature

CourseFlow aims to introduce interactive components for displaying unit details, credit points, and course requirements currently scoped and in backlog for future frontend development.

Frontend Migration: AngularJS & CoffeeScript → Angular & TypeScript

Migration of legacy AngularJS and CoffeeScript components to Angular 17 and TypeScript is underway, with several modules completed and others still in progress and under review.

Open Issues

  • The purpose of this section is to flag things that may interfere with the future team’s ability to work on the project, and to give advice as to how these issues could be fixed in the future.
  • Despite steady progress across technical deliverables, the OnTrack team has encountered several persistent issues that may impact continuity and learning outcomes for future cohorts:

Skills Gap & Onboarding Challenges

Many students join OnTrack with the intent to learn and contribute meaningfully. However, the steep learning curve particularly around complex technologies like Angular, TypeScript, and legacy CoffeeScript has made it difficult for newcomers to get started. Without structured technical onboarding, many spend the first 3–4 weeks simply trying to understand the system, which delays their ability to contribute effectively.

Development Environment & Compatibility Issues

Setting up the local development environment remains a significant hurdle, especially for peers using lower spec Windows machines. Docker image sizes are large, and the performance gap compared to Mac users creates an uneven learning experience. Compatibility differences between branches (e.g., 8.0.x vs 9.x) also lead to frequent build issues, creating confusion and discouraging ongoing contributions.

Lack of Training & Documentation Support

While OnTrack encourages open contributions, many team members struggle due to limited training in core concepts (e.g., Git workflows, Angular framework, Typescript, and Docker). There is an implicit expectation that students are already proficient, which often isn’t the case this leads to frustration and reduced engagement. Structured training sessions and technical documentation tailored for beginners would significantly improve project onboarding.

Fragmented Review and Contribution Workflow

The process for reviewing Planner board tasks, GitHub pull requests, and migration progress lacks consistency. Without clear ownership and review pathways, some completed work sits idle or gets delayed due to unclear approval hierarchies.

Recommendations for Future Teams

  • Introduce a structured onboarding program covering setup, Git, and core stack training.
  • Create a beginner-friendly setup guide tailored for Windows environments.
  • Regularly audit compatibility across OnTrack branches and Docker images.
  • Communicate with mentors or sub-leads to guide and unblock newcomers.
  • Encourage documentation of common issues and fixes directly within the repo.
  • Leverage the resources listed in the User Manual section, which includes:

Lessons Learned

  • Throughout the trimester, the OnTrack team gained valuable insights into effective collaboration, workflow management, and the importance of technical readiness. The following lessons are shared to help future teams avoid common pitfalls and adopt practices that support sustained progress and learning.

Mentorship and Leadership Engagement

  • Mentors played a pivotal role in guiding the team, clarifying complex tasks, and helping contributors stay aligned with deadlines. However, low attendance in mentor meetings created knowledge gaps for some students, leading to missed updates and slower progress. Future cohorts should prioritize regular mentor engagement to stay informed and unblock technical or process-related issues early.

Planner Board Usage and Task Management

  • A common challenge observed was the inconsistent use of the Planner board. Tasks were often left unupdated, causing confusion around team progress and responsibility. Familiarity with Planner usage, card ownership, and regular updates is essential for maintaining transparency, accountability, and momentum in collaborative work.

GitHub Fluency and Frontend Migration

  • A significant number of contributors struggled with frontend migration tasks due to limited experience with GitHub and version control best practices. This impacted review cycles and slowed down feature delivery. It is highly recommended that new team members undergo early Git and GitHub training, particularly around pull requests, branching strategies, and commit hygiene.

Continuous Learning and Skill Development

  • Capstone projects like OnTrack require more than just effort they demand continuous upskilling. Many students realized mid-trimester that improving their understanding of technologies like Angular, TypeScript, and Docker was essential to contribute effectively. Future teams should proactively allocate time for learning, especially when entering unfamiliar technical domains.

Time Management and Self-Discipline

  • Delayed deliverables and unfinished tasks were often linked to weak time management. Without consistent planning and regular progress tracking, students found it difficult to meet sprint goals. Future cohorts should adopt strategies like weekly planning, setting personal deadlines, and using reminders to stay on track and contribute reliably.

Final Advice

  • New teams may assume that deep technical knowledge is required before contributing. However, what truly matters is consistency, communication, and a willingness to learn. Investing time early to understand the workflow, connect with mentors, and get comfortable with the tools will yield strong contributions by the end of the trimester.

Product Development Life Cycle

We continue to use Agile methodologies to deliver updates and new features for OnTrack. Our approach includes 2-week sprints focused on completing tasks, and weekly stand-up meetings to assess progress, share updates, discuss roadblocks, and assign new tasks via Teams Planner cards.

New Tasks

  • New tasks are assigned by the project mentor during the weekly stand-up meetings. Once you areassigned a task, be sure to assign yourself to the corresponding Teams Planner card and attach your draft or completed pull request when you begin work.
  • If you have an idea for a new feature or enhancement, schedule a meeting with the project mentor to discuss it. Upon approval, create a new card or backlog column in Teams Planner to track the task.
  • If the feature is large, start researching the benefits and challenges, and create a Spike document, which can be committed to the documentation repository.
  • Spike templates are available in the documentation repository.

Definition of Done

A task is considered complete once it has been fully tested, functions as expected, and is documented in a well-organized pull request. The task must also undergo peer review and be approved by your mentor. Ensure that the corresponding Teams Planner card is updated and keep in communication with your reviewer and mentor until your contribution is merged into the upstream doubtfire-lms repository.

Task Review

  • Each pull request requires a mandatory peer review before a mentor review. After creating the pull request, contact a teammate to review it. Tag them as the reviewer in both the Teams Planner card and the GitHub pull request.
  • As a reviewer, ensure that you test the code by pulling the changes locally and reviewing the syntax, logic, and output. If any changes are needed, update the contribution and notify the reviewer.
  • Once the updates are made, the pull request will be automatically updated.
  • After the peer review is complete, notify the mentor for their review. Once approved, you can submit the pull request to the upstream repository for the final review.

Testing

  • For frontend changes, test the functionality in the browser or run specification tests as needed.
  • For backend changes, use browser interactions or tools like Postman to test functionality.
  • Additionally, GitHub CI Actions will run tests automatically when changes are pushed.
  • In the pull request template, include detailed instructions on how others can test your changes.
  • Always provide before-and-after screenshots to show the outcome of your modifications.

Branching Strategy

  • When starting a new contribution, fork all three thoth-tech repositories (deploy, web, and API) to your GitHub profile.
  • Create a new branch from the development branch of the relevant repository. For example, for frontend migrations, you would create a branch from the doubtfire-web development branch.\
  • Follow the Branch Prefixes and Commit Message Format in the Contributing Guide when naming branches and creating commits.

Product Architecture

OnTrack is developed as a collaborative open-source project built on top of the Doubtfire-LMS ecosystem. It comprises four key components:

  • Doubtfire-Web: The frontend application responsible for user interface and interactions. Built using Angular.
  • Doubtfire-API: The backend service that handles business logic and communicates with the database. Built using Ruby on Rails.
  • Database: A structured relational database (e.g., MariaDB) that stores all persistent application data.
  • Doubtfire-Deploy: Infrastructure scripts and configuration used to deploy OnTrack in a stable and maintainable environment, primarily using Docker and associated CI/CD tools.

OnTrack is maintained and enhanced by ThothTech, a student-led capstone development team at Deakin University. The project is forked from the official Doubtfire-LMS repository, which is managed by Company Directors and Mentors. The LMS environment represents the production-grade implementation, while ThothTech serves as the innovation space where new features, patches, and improvements are developed, tested, and refined before potential upstream contribution.

Tech Stack

  • Frontend: Currently being migrated from AngularJS and CoffeeScript to Angular 17 and TypeScript. The stack also includes HTML, SCSS, and Tailwind CSS.

  • Backend: Built on Ruby on Rails with the Grape Framework. It uses MariaDB as the database engine. Docker is used for deployment and local development.

Source Code

The following are the relevant GitHub repositories to this project:

Login Credentials

Refer to the Working with Dev Containers section of the Contributing Guide for authentication credentials for locally deployed OnTrack.

Project 2: SplashKit

Project Overview

SplashKit is an open-source software development framework designed to simplify game and application developement for beginners and students. It was primarily coded in C++ but has since offer supports for addition languages such as C#, Python, Pascal, and JavaScript.

SplashKit provides users with a set of pre-built libraries for graphics, sound, input handlindg and more, making it easier to create interactive applications. It also offers an extensive documentation and tutorials designed to help students get started quickly and maximise their use of the SDK. This wealth of resources empowers learners to progress at their own pace and fully explore the capabilities of SplashKit, making it an invaluable tool for both beginners and more advanced users.

SplashKit ran with the following projects during T1 2025:

SplashKit Website & Tutorials

Powered by the Starlight framework, the revamped SplashKit website aims to offer an enriched and user-friendly experience for developers and learners. The SplashKit Website will also feature tutorials aimed at helping students learn and explore SplashKit’s functionality. The focus is on developing smaller, high-quality tutorials across C++, C#, and Python, rather than extensive series.

SplashKit Expansion

The Expansion team is responsible for maintaining and enhancing the SplashKit core. This includes bug fixes, feature improvements, units testing, and refining installation and usage workflows through package creation and addressing installation issues.

SplashKit Online

SplashKit Online is developing a web-based IDE that allows students to write and run code directly in their browsers. Initially launched as a prototype in 2023, the 2025 goal is to mature this tool into a comprehensive product, including further C# support and refining the embedded version for the SplashKit website.

Arcade Machines

The university has acquired four arcade machines equipped with Raspberry Pi 3B+ units, designed to showcase games developed with SplashKit. The short-term goal is to prepare these platforms for students to display their SplashKit creations. The medium-term goal is to streamline the process for first-year students to easily upload and test their games.

User Manual

A suite of resources for getting started with SplashKit can be found on the SplashKit Product Page of the Thoth Tech Documentation site. The below details some specific contributing documents that sit in the repositories for the relevant teams.

Arcade Machines

SplashKit Website & Tutorials

SplashKit Expansion

SplashKit Online

Completed Deliverables

SplashKit Expansion

  • Expanded Unit Tests to Cover the of basics.cpp:

    • Work that started last trimester was added to to complete unit test coverage for the basics.cpp file.
  • Added new Unit Tests for the Graphics Module:

    • A new unit testing suite was added to the graphics module to reduce the number of bugs that make it to production.
  • Documented macOS Build and Test Instructions:

    • These were added to the top-level readme for four different commands aimed at making the process easier to complete.
  • Added new Helper Scripts and CMake Presets to the Build Process of SplashKit:

    • Catch helper scripts and CMake presets were added to simplifier building the project and enable the use of the CMake Tools extension for VS Code.
  • Updated Raspberry Pis to use Newer Libraries:

    • The pigpio library was changed to WiringPi and SSH to allow for support of newer Raspberry Pi models.
  • Bug fix for Using CMake with Raspberry Pi:

    • A fix was added that allowed for Cmake to more easily recognise a Raspberry Pi.
  • Bug fixes for the Window Class:

    • Added missing methods to the C# implementation of draw_pixel_on_window functions.
    • Fixed missing attributes in the header documentation for the Window class.
    • Removed overloads for get_pixel() that shouldn’t exists.
    • Updated class to user proper destructor.

SplashKit Website & Tutorials

  • Implementation References Update:

    • The implementation reference has been updated to include instances when the functions are used in other usage examples, resulting in a larger number of references.
  • Usage Examples Identifier:

    • The function headers in API Documentation has been updated to indicate which functions has examples created or implementation for it references, resulting in a better user experience and visibility.
  • Game Showcase Updates:

    • A script has been created to generate the each game showcase markdown files automatically using a JSON that stores all of the showcases’ data.
    • A new page has been created to allow users to test out the games online using SplashKit Online Lite.
  • SplashKit Blog Addition:

    • Created new blog posts about the usage examples and implementation references on the API Documentation and the new Algolia DocSearch engine.
  • Usage Examples Expansion:

    • Significantly expanded usage examples across various categories which improve the overall quality of the site.Addition include comprehensive examples for Graphics, Geometery, Audio, Interface, and Networking functions.
  • Beyond SplashKit Expansion:

    • Considerable addition to the Beyond SplashKit iniatives with examples created primarily for Graphics and Geometery functions.
  • Updated README File:

    • Updated the CONTRIBUTING markdown file for the usage examples to improve overall clarity of the process.
  • Documentation site Updates:

    • Updated the Usage Examples documentation to reflect the new contributing process, helping students contribute effciently.
    • Created a styling guide for usage example, standardizing the process and improving consistency across examples.
    • Created a unit testing guide on how the unit testing creation process.
    • Created a tips and ticks guide which contain information that members can use to streamlime their development process.

SplashKit Online

  • Added Support for Custom Themes:

    • Centralised all colour related styling into a single file, allowing for easy overriding off variables to create new themes.
    • Removed duplicate colours that created an inconsistenant user interface.
  • Restructured Main Project Repository

    • Restructured the main repository with the goal of making it easier to work on and improve ease of maintainability in future.
  • Added Support for C# in IDE

    • The C# programming language was added as a new language option that students can work with in the browser IDE.
  • Added Support for Mobile Screen Sizes

    • SplashKit Online now can be used on mobile devices, allowing greater access to the IDE.
    • Additionally restructured CSS so that adding more screen sizes will be far simplier.
  • Overhauled Project Documentation

    • The project’s documentation was overhauled and updated to be reflect the current state of the project.

List of Completed Deliverables

NameTypeTask NameTask Attachment
Anish SampsonMain ContributorFont Named - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/545
Anish SampsonMain ContributorLine Intersection Point - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/464
Anish SampsonMain ContributorLine Normal - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/455
Anish SampsonMain ContributorPoint in Quad - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/431#issue-2990452267
Anish SampsonMain ContributorDistant Point on Circle - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/430#issue-2990429376
Anish SampsonMain ContributorGet System Font - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/435#issue-2999025131
Anish SampsonReviewerCircle Quad Intersect - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/445
Anish SampsonReviewerCircle Triangle Intersect - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/452
Anish SampsonReviewerClosest Point on Line - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/432
Anish SampsonReviewerClosest Point on Rect From Circle - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/433
Anish SampsonReviewerEnd Panel - Interface - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/501
Anish SampsonReviewerOpen Connection - Networking - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/500
Anish SampsonReviewerPoint Line Distance - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/542
Anish SampsonReviewerRandom Color - Color - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/514
Anish SampsonReviewerSet Interface Font - Interface - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/503
Anish SampsonReviewerSet font style (Overload) - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/506
Anish SampsonReviewerTangent Points - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/447
Anish SampsonReviewerClosest Point on Line From Circle - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/429
Anish SampsonReviewerDisplay Height - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/366
Anish SampsonReviewerSet Music Volume - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/416
Anish SampsonReviewerOption Flip X - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/389
Anish SampsonReviewerText Height - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/360
Cameron Stewart HumphriesMain ContributorClosest Point on Line - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/432
Cameron Stewart HumphriesMain ContributorClosest Point on Rect From Circle - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/433
Cameron Stewart HumphriesMain ContributorPush Clip - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/397
Cameron Stewart HumphriesMain ContributorReview Raspberry Pi tutorialshttps://github.com/thoth-tech/splashkit.io-starlight/pull/492
Cameron Stewart HumphriesMain ContributorRework documentationhttps://github.com/thoth-tech/SplashkitOnline/pull/122
Cameron Stewart HumphriesReviewerRefactor CSS and HTML to support theming and later mobile supporthttps://github.com/thoth-tech/SplashkitOnline/pull/116
Cameron Stewart HumphriesReviewerWidest points - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/446
Cameron Stewart HumphriesReviewerAdd support for custom themeshttps://github.com/thoth-tech/SplashkitOnline/pull/118
Cameron Stewart HumphriesReviewerDisplay X - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/356
Cameron Stewart HumphriesReviewerDraw Pixel on window - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/379
Cameron Stewart HumphriesReviewerFade Music In Named - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/415
Cameron Stewart HumphriesReviewerFade Music Out - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/414
Cameron Stewart HumphriesReviewerLine Intersection Point - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/464
Cameron Stewart HumphriesReviewerLoad Music - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/413
Cameron Stewart HumphriesReviewerMusic Name - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/412
Cameron Stewart HumphriesReviewerPause Music - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/411
Cameron Stewart HumphriesReviewerC# Support - CSharpWasm support JS sidehttps://github.com/thoth-tech/SplashkitOnline/pull/120
Daniel Carroll-LeonardMain ContributorUpdate usage-examples CONTRIBUTING.mdxhttps://github.com/thoth-tech/splashkit.io-starlight/pull/367
Daniel Carroll-LeonardMain ContributorAdd script to set up and launch usage exampleshttps://github.com/thoth-tech/splashkit.io-starlight/pull/463
Daniel Carroll-LeonardMain ContributorCode coveragehttps://github.com/thoth-tech/splashkit-core/pull/110
Daniel Carroll-LeonardMain ContributorImprove unit testing workflowhttps://github.com/thoth-tech/documentation/pull/594
Daniel Carroll-LeonardMain ContributorUnit testing guidehttps://github.com/thoth-tech/ThothTech-Documentation-Website/pull/139
Daniel Carroll-LeonardMain ContributorUnit tests for basics.cpphttps://github.com/thoth-tech/splashkit-core/pull/98
Daniel Carroll-LeonardMain ContributorAdd method for DrawPixel to Window class (C#)https://github.com/thoth-tech/splashkit-core/pull/105 https://github.com/thoth-tech/splashkit-core/pull/105#pullrequestreview-2838709777
Daniel Carroll-LeonardMain ContributorAdd missing destructor methods (C#)https://github.com/thoth-tech/splashkit-core/pull/109 https://github.com/thoth-tech/splashkit-core/pull/109#pullrequestreview-2838664924
Daniel Carroll-LeonardMain ContributorAdd missing methods to Window class (C#)https://github.com/thoth-tech/splashkit-core/pull/108 https://github.com/thoth-tech/splashkit-core/pull/108#pullrequestreview-2838688022
Daniel Carroll-LeonardMain ContributorFix Pascal Compilation
Daniel Carroll-LeonardMain ContributorLine from (point to point) - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/359
Daniel Carroll-LeonardMain ContributorRemove Unnecessary GetPixel Overloadshttps://github.com/thoth-tech/splashkit-core/pull/112 https://github.com/thoth-tech/splashkit-core/pull/112#pullrequestreview-2838590391
Daniel Carroll-LeonardMain ContributorAdd Catch2 helper scripts and CMake presetshttps://github.com/thoth-tech/splashkit-core/pull/106
Daniel Carroll-LeonardMain ContributorTips and tricks guidehttps://github.com/thoth-tech/ThothTech-Documentation-Website/pull/140
Daniel Carroll-LeonardReviewerResume Music - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/409
Daniel Carroll-LeonardReviewerSwap RPi Library from pigpio to WiringPihttps://github.com/thoth-tech/splashkit-core/pull/111
Daniel Carroll-LeonardReviewerClosest Point on Line From Circle - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/429
Daniel Carroll-LeonardReviewerDisplay X - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/356
Daniel Carroll-LeonardReviewerLine from (start with offset) - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/364
Daniel Carroll-LeonardReviewerUsing Animations Tutorial - Python Language Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/406
Daniel Garcia VargasMain ContributorC# Support - Add C# WebAssembly Translator and JavaScript Method Export Generatorhttps://github.com/thoth-tech/splashkit-translator/pull/24
Daniel Garcia VargasMain ContributorC# Support - Generate binding in the C# sidehttps://github.com/thoth-tech/SplashkitOnline/pull/117
Daniel Garcia VargasMain ContributorC# Support - Understand auto-generated api.jsonhttps://github.com/thoth-tech/SplashkitOnline/pull/117
Daniel Garcia VargasMain ContributorC# Support - CSharpWasm support JS sidehttps://github.com/thoth-tech/SplashkitOnline/pull/120
Daniel Garcia VargasReviewerImplement mobile support for editorhttps://github.com/thoth-tech/SplashkitOnline/pull/121
DeepakMain ContributorFill circle on bitmap - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/477/files
DeepakMain ContributorLine from (using vector) - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/476
DeepakMain ContributorDraw quad on bitmap - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/494
DeepakReviewerDraw circle on window - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/402
DeepakReviewerDraw triangle - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/525
DeepakReviewerFill circle on window - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/533
DeepakReviewerFill circle on window - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/523/files
DeepakReviewerFill triangle on window - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/534
DeepakReviewerFree font - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/532
DeepakReviewerFill triangle - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/453
Dhruv JanghuMain ContributorFree all fonts - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/383
Dhruv JanghuMain ContributorLine intersects lines - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/422
Dhruv JanghuReviewerCircle Intersect version 2 - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/450
Dhruv JanghuReviewerCircles Intersect - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/469
Dhruv JanghuReviewerFill rectangle - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/394
Dhruv JanghuReviewerStop Music - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/417
Ethan RinMain ContributorText width - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/361
Ethan RinMain ContributorUpdate the API pages’ linkhttps://github.com/thoth-tech/splashkit.io-starlight/pull/378
Ethan RinMain ContributorUpdate the Usage Examples Documentationhttps://github.com/thoth-tech/ThothTech-Documentation-Website/pull/135
Ethan RinMain ContributorGameshow Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/505
Ethan RinMain ContributorSplashKit Blogs Additionhttps://github.com/thoth-tech/splashkit.io-starlight/pull/478
Ethan RinMain ContributorText Height - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/360
Ethan RinMain ContributorUpdate Script to Add Usage Examples Functionhttps://github.com/thoth-tech/splashkit.io-starlight/pull/408
Ethan RinReviewerPlay Music - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/410
Ethan RinReviewerSet interface border color - Interface - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/504
Ethan RinReviewerDisplay Width - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/365
Ethan RinReviewerLine Normal - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/455
Ethan RinReviewerCircle At - Geometry - Usage Examplehttps://github.com/thoth-tech/splashkit.io-starlight/pull/423
Ethan RinReviewerCircle Intersect version 1 - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/376
Ethan RinReviewerFill Ellipse on Window - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/377
Josh FernandesMain ContributorFix up Cmake bug for RPihttps://github.com/splashkit/splashkit-core/pull/208 https://github.com/thoth-tech/splashkit-core/pull/104
Josh FernandesMain ContributorSwap RPi Library from pigpio to WiringPihttps://github.com/thoth-tech/splashkit-core/pull/111
Josh FernandesMain ContributorCircle Intersect version 1 - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/376
Josh FernandesReviewerUnit testing guidehttps://github.com/thoth-tech/ThothTech-Documentation-Website/pull/139
Josh FernandesReviewerDisplay Name - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/363
Josh FernandesReviewerAdd Catch2 helper scripts and CMake presetshttps://github.com/thoth-tech/splashkit-core/pull/106
Josh FernandesReviewerBitmap Name - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/393
Josh FernandesReviewerDisplay Details - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/362
Josh FernandesReviewerFill Ellipse on Window - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/377
Josh FernandesReviewerPop Clip - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/419
Julian BurtonMain ContributorGet font style (Overload) - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/499
Julian BurtonMain ContributorSet font style (Overload) - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/506
Julian BurtonMain ContributorSet font style - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/441
Julian BurtonMain ContributorGet font style name as string - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/392/files
Julian BurtonReviewerText width - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/361
Julian BurtonReviewerButton (no label) - Interface - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/468
Julian BurtonReviewerDraw Pixel on window - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/379
Julian BurtonReviewerFade Music In Named - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/415
Julian BurtonReviewerFade Music Out - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/414
Julian BurtonReviewerLoad Music - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/413
Julian BurtonReviewerMusic Name - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/412
Julian BurtonReviewerOption Scale Bmp - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/372
Julian BurtonReviewerPause Music - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/411
Lam Quoc Huy HuynhMain ContributorFill rectangle - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/394
Lam Quoc Huy HuynhMain ContributorHSB - Color - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/510
Lam Quoc Huy HuynhMain ContributorHex To Ipv4 - Networking - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/509
Lam Quoc Huy HuynhMain ContributorJson Count Keys- Json - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/512
Lam Quoc Huy HuynhMain ContributorJson From Color- Json - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/511
Lam Quoc Huy HuynhMain ContributorJson Read Number As Integer - Json - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/513
Lam Quoc Huy HuynhMain ContributorRandom Color - Color - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/514
Lam Quoc Huy HuynhMain ContributorDraw line on window- Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/421
Lam Quoc Huy HuynhMain ContributorOption Flip X - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/389
Lam Quoc Huy HuynhMain ContributorOption Flip Y - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/390
Lam Quoc Huy HuynhReviewerClear screen - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/374
Lam Quoc Huy HuynhReviewerClosest point on lines - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/425
Lam Quoc Huy HuynhReviewerTangent Points - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/447
Lam Quoc Huy HuynhReviewerWidest points - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/446
Lam Quoc Huy HuynhReviewerDisplay Width - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/365
Lam Quoc Huy HuynhReviewerDraw quad - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/420
Lam Quoc Huy HuynhReviewerDraw rectangle - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/385
Lam Quoc Huy HuynhReviewerLine from (point to point) - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/359
Lam Quoc Huy HuynhReviewerOption Rotate Bmp - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/368
Lam Quoc Huy HuynhReviewerPoint in Quad - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/431#issue-2990452267
Lam Quoc Huy HuynhReviewerDisplay Y - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/357
Muhammad DanialMain ContributorDraw circle on bitmap - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/521
Muhammad DanialMain ContributorDraw circle record - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/491
Muhammad DanialMain ContributorUsing Animations Tutorial - Python Language Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/406
Muhammad DanialReviewerFill circle on bitmap - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/477/files
Muhammad DanialReviewerLoad font - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/472
Muhammad DanialReviewerSet font style - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/441
Muhammad Sufian JavidMain ContributorDistant point on Circle heading - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/470
Muhammad Sufian JavidMain ContributorEnd Panel - Interface - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/501
Muhammad Sufian JavidMain ContributorLabel Element - Interface - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/502
Muhammad Sufian JavidMain ContributorMove sprite by vector - Sprites - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/496
Muhammad Sufian JavidMain ContributorOpen Connection - Networking - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/500
Muhammad Sufian JavidMain ContributorRay circle intersect distance - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/486
Oliver Alexander QuailMain ContributorAdd print support to Splashkit documentationhttps://github.com/thoth-tech/ThothTech-Documentation-Website/pull/137
Oliver Alexander QuailMain ContributorRestructure SplashKit Repo
Oliver Alexander QuailMain ContributorImplement mobile support for editorhttps://github.com/thoth-tech/SplashkitOnline/pull/121
Oliver Alexander QuailMain ContributorRefactor CSS and HTML to support theming and later mobile supporthttps://github.com/thoth-tech/SplashkitOnline/pull/116
Oliver Alexander QuailReviewerC# Support - Add C# WebAssembly Translator and JavaScript Method Export Generatorhttps://github.com/thoth-tech/splashkit-translator/pull/24
Oliver Alexander QuailReviewerC# Support - Generate binding in the C# sidehttps://github.com/thoth-tech/SplashkitOnline/pull/117
Oliver Alexander QuailReviewerC# Support - Understand auto-generated api.jsonhttps://github.com/thoth-tech/SplashkitOnline/pull/117
Oliver Alexander QuailReviewerAdd method for DrawPixel to Window class (C#)https://github.com/thoth-tech/splashkit-core/pull/105 https://github.com/thoth-tech/splashkit-core/pull/105#pullrequestreview-2838709777
Oliver Alexander QuailReviewerAdd missing destructor methods (C#)https://github.com/thoth-tech/splashkit-core/pull/109 https://github.com/thoth-tech/splashkit-core/pull/109#pullrequestreview-2838664924
Oliver Alexander QuailReviewerAdd missing methods to Window class (C#)https://github.com/thoth-tech/splashkit-core/pull/108 https://github.com/thoth-tech/splashkit-core/pull/108#pullrequestreview-2838688022
Oliver Alexander QuailReviewerAdd support for custom themeshttps://github.com/thoth-tech/SplashkitOnline/pull/118
Oliver Alexander QuailReviewerRemove Unnecessary GetPixel Overloadshttps://github.com/thoth-tech/splashkit-core/pull/112 https://github.com/thoth-tech/splashkit-core/pull/112#pullrequestreview-2838590391
Oliver Alexander QuailReviewerRework documentationhttps://github.com/thoth-tech/SplashkitOnline/pull/122
Oliver Alexander QuailReviewerC# Support - CSharpWasm support JS sidehttps://github.com/thoth-tech/SplashkitOnline/pull/120
Paavan KalraMain ContributorFill ellipse - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/518
Paavan KalraMain ContributorFill quad - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/519
Paavan KalraMain ContributorLine intersects circle - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/424
Paavan KalraMain ContributorCircle At - Geometry - Usage Examplehttps://github.com/thoth-tech/splashkit.io-starlight/pull/423
Paavan KalraMain ContributorPoint in Circle- Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/483
Paavan KalraReviewerHex To Ipv4 - Networking - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/509
Paavan KalraReviewerJson Count Keys- Json - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/512
Paavan KalraReviewerJson From Color- Json - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/511
Paavan KalraReviewerLine from (using vector) - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/476
Paavan KalraReviewerRay circle intersect distance - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/486
Paavan KalraReviewerSet Clip - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/539
Paavan KalraReviewerLine Intersection Point - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/464
Paavan KalraReviewerLine Normal - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/455
Paavan KalraReviewerPoint in Quad - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/431#issue-2990452267
Paavan KalraReviewerLines Intersect Rect - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/434#issue-2998994645
Prabhjot SinghMain ContributorCircle Triangle Intersect - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/452
Prabhjot SinghMain ContributorDraw triangle - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/525
Prabhjot SinghMain ContributorFill circle on window - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/523/files
Prabhjot SinghMain ContributorPoint Line Distance - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/542
Prabhjot SinghMain ContributorFill triangle - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/453
Prabhjot SinghMain ContributorHas font name as string - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/436#issue-2999152195
Prabhjot SinghMain ContributorLines Intersect Rect - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/434#issue-2998994645
Prabhjot SinghReviewerMove sprite by vector - Sprites - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/496
Prabhjot SinghReviewerDraw quad - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/420
Prabhjot SinghReviewerDraw line on window- Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/421
Prasanna Pradeep Kumara Silva SingharaMain ContributorDraw_circle_on_bitmap Usage example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/522/
Prasanna Pradeep Kumara Silva SingharaMain ContributorOption Line Width - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/387
Prasanna Pradeep Kumara Silva SingharaReviewerHSB - Color - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/510
Prasanna Pradeep Kumara Silva SingharaReviewerLine intersects circle - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/424
Prasanna Pradeep Kumara Silva SingharaReviewerLine intersects lines - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/422
Prasanna Pradeep Kumara Silva SingharaReviewerRead message - Networking - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/538
Prasanna Pradeep Kumara Silva SingharaReviewerReview Raspberry Pi tutorialshttps://github.com/thoth-tech/splashkit.io-starlight/pull/492
Prasanna Pradeep Kumara Silva SingharaReviewerClosest Point on Line From Circle - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/429
Prasanna Pradeep Kumara Silva SingharaReviewerDistant Point on Circle - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/430#issue-2990429376
Prasanna Pradeep Kumara Silva SingharaReviewerOption Flip Y - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/390
Rachel Mei Alonzo ChuMain ContributorAdding identifier to mark function with usage example in API dochttps://github.com/thoth-tech/splashkit.io-starlight/pull/439
Rachel Mei Alonzo ChuMain ContributorClear screen - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/374
Rachel Mei Alonzo ChuMain ContributorFill Ellipse on Window - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/377
Rachel Mei Alonzo ChuReviewerUpdate the API pages’ linkhttps://github.com/thoth-tech/splashkit.io-starlight/pull/378
Rachel Mei Alonzo ChuReviewerFree all fonts - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/383
Rachel Mei Alonzo ChuReviewerPoint on Line - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/471
Rachel Mei Alonzo ChuReviewerDisplay Height - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/366
Rachel Mei Alonzo ChuReviewerLine from (point to point) - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/359
Rachel Mei Alonzo ChuReviewerLine from (start with offset) - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/364
Rachel Mei Alonzo ChuReviewerOption Scale Bmp - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/372
Rachel Mei Alonzo ChuReviewerCurrent Clip - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/488
Rachel Mei Alonzo ChuReviewerGet font style name as string - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/392/files
Rachel Mei Alonzo ChuReviewerHas font name as string - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/436#issue-2999152195
Rachel Mei Alonzo ChuReviewerText Height - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/360
Rachel Mei Alonzo ChuReviewerUpdate Script to Add Usage Examples Functionhttps://github.com/thoth-tech/splashkit.io-starlight/pull/408
SakshamMain ContributorHas font - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/535
SakshamMain ContributorHeader - Interface - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/497
SakshamMain ContributorLoad font - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/472
SakshamMain ContributorPoint on Line - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/471
SakshamMain ContributorRead message - Networking - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/538
SakshamMain ContributorRefresh screen - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/524
SakshamReviewerColor slider at position - Interface - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/544
SakshamReviewerDraw circle record - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/491
SakshamReviewerDraw line on bitmap - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/540
SakshamReviewerFill rectangle on window - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/507
SakshamReviewerFill triangle - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/453
Sam StajnkoReviewerRefactor CSS and HTML to support theming and later mobile supporthttps://github.com/thoth-tech/SplashkitOnline/pull/116
Sam StajnkoMain ContributorAdd method for DrawPixel to Window class (C#)https://github.com/thoth-tech/splashkit-core/pull/105 https://github.com/thoth-tech/splashkit-core/pull/105#pullrequestreview-2838709777
Sam StajnkoMain ContributorAdd missing destructor methods (C#)https://github.com/thoth-tech/splashkit-core/pull/109 https://github.com/thoth-tech/splashkit-core/pull/109#pullrequestreview-2838664924
Sam StajnkoMain ContributorAdd missing methods to Window class (C#)https://github.com/thoth-tech/splashkit-core/pull/108 https://github.com/thoth-tech/splashkit-core/pull/108#pullrequestreview-2838688022
Sam StajnkoMain ContributorDraw quad - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/420
Sam StajnkoMain ContributorOption Rotate Bmp - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/368
Sam StajnkoMain ContributorRemove Unnecessary GetPixel Overloadshttps://github.com/thoth-tech/splashkit-core/pull/112 https://github.com/thoth-tech/splashkit-core/pull/112#pullrequestreview-2838590391
Sam StajnkoReviewerDisplay Name - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/363
Sam StajnkoReviewerDraw Pixel on window - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/379
Sam StajnkoReviewerDraw rectangle - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/385
Sam StajnkoReviewerImplement mobile support for editorhttps://github.com/thoth-tech/SplashkitOnline/pull/121
Sam StajnkoReviewerOption Scale Bmp - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/372
Sam StajnkoReviewerRework documentationhttps://github.com/thoth-tech/SplashkitOnline/pull/122
Sam WongMain ContributorCircle Quad Intersect - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/445
Sam WongMain ContributorLines From (with rectangle) - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/444
Sam WongMain ContributorBitmap Name - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/393
Sam WongReviewerFont Named - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/545
Sam WongReviewerPush Clip - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/397
Sam WongReviewerDisplay Y - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/357
Shen TianMain ContributorClosest point on lines - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/425
Shen TianMain ContributorFill circle on window - Graphics - Usage Example Update
Shen TianReviewerDistant point on Circle heading - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/470
Shen TianReviewerLines From (with triangle) - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/438
Simon RhookMain ContributorPlay Music - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/410
Simon RhookMain ContributorResume Music - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/409
Simon RhookMain ContributorUsage Example Styling Guidehttps://github.com/thoth-tech/ThothTech-Documentation-Website/pull/138
Simon RhookMain ContributorUpdate OOP Styling On Documentation Sitehttps://github.com/thoth-tech/ThothTech-Documentation-Website/pull/141/commits/46bf8bd557f56c8e72c83d945cd9666c161825b8
Simon RhookMain ContributorDisplay Width - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/365
Simon RhookMain ContributorFade Music In Named - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/415
Simon RhookMain ContributorFade Music Out - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/414
Simon RhookMain ContributorLoad Music - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/413
Simon RhookMain ContributorDisplay Details - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/362
Simon RhookMain ContributorDisplay Y - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/357
Simon RhookMain ContributorDraw line- Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/384
Simon RhookReviewerClear screen - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/374
Simon RhookReviewerText width - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/361
Simon RhookReviewerUpdate the API pages’ linkhttps://github.com/thoth-tech/splashkit.io-starlight/pull/378
Simon RhookReviewerDisplay Height - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/366
Simon RhookReviewerDisplay Name - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/363
Simon RhookReviewerDisplay X - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/356
Simon RhookReviewerDraw rectangle - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/385
Simon RhookReviewerLine from (start with offset) - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/364
Simon RhookReviewerMusic Name - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/412
Simon RhookReviewerOption Rotate Bmp - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/368
Simon RhookReviewerPause Music - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/411
Simon RhookReviewerSet Music Volume - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/416
Simon RhookReviewerStop Music - Audio - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/417
Simon RhookReviewerGet System Font - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/435#issue-2999025131
Simon RhookReviewerOption Line Width - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/387
Simon RhookReviewerTips and tricks guidehttps://github.com/thoth-tech/ThothTech-Documentation-Website/pull/140
Theiss Shar NielsenMain ContributorFill quad on bitmap - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/554
Theiss Shar NielsenMain ContributorLines From (with triangle) - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/438
Theiss Shar NielsenMain ContributorAdd support for custom themeshttps://github.com/thoth-tech/SplashkitOnline/pull/118
Theiss Shar NielsenMain ContributorCurrent Clip - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/488
Theiss Shar NielsenMain ContributorPop Clip - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/419
Theiss Shar NielsenReviewerLines From (with rectangle) - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/444
Theiss Shar NielsenReviewerDisplay Details - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/362
Theiss Shar NielsenReviewerDraw line- Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/384
Theiss Shar NielsenReviewerDraw quad on bitmap - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/494
Theiss Shar NielsenReviewerLines Intersect Rect - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/434#issue-2998994645
Theiss Shar NielsenReviewerOption Flip X - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/389
Theiss Shar NielsenReviewerOption Flip Y - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/390
Theiss Shar NielsenReviewerOption Line Width - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/387
Theiss Shar NielsenReviewerPoint in Circle- Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/483
Triet LamMain ContributorSet Clip - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/539
Triet LamMain ContributorTangent Points - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/447
Triet LamMain ContributorWidest points - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/446
Triet LamReviewerClosest point on lines - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/425
Triet LamReviewerLabel Element - Interface - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/502
Triet LamReviewerCurrent Clip - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/488
Triet LamReviewerPoint in Circle- Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/483
Tuan Trung PhamMain ContributorButton (no label) - Interface - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/468
Tuan Trung PhamMain ContributorCircle Intersect version 2 - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/450
Tuan Trung PhamMain ContributorDraw pixel - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/467/files
Tuan Trung PhamMain ContributorFill rectangle on window - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/507
Tuan Trung PhamMain ContributorSet Interface Font - Interface - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/503
Tuan Trung PhamMain ContributorSet interface border color - Interface - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/504
Tuan Trung PhamReviewerCode coveragehttps://github.com/thoth-tech/splashkit-core/pull/110
Tuan Trung PhamReviewerFill ellipse - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/518
Tuan Trung PhamReviewerFill quad - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/519
Tuan Trung PhamReviewerUnit testing guidehttps://github.com/thoth-tech/ThothTech-Documentation-Website/pull/139
Tuan Trung PhamReviewerCircle Intersect version 1 - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/376
Tuan Trung PhamReviewerDistant Point on Circle - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/430#issue-2990429376
Tuan Trung PhamReviewerGet System Font - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/435#issue-2999025131
Tuan Trung PhamReviewerPop Clip - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/419
Vipin KumarMain ContributorCircles Intersect - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/469
Vipin KumarMain ContributorColor slider at position - Interface - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/544
Vipin KumarMain ContributorDraw circle on window - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/402
Vipin KumarMain ContributorDraw line on bitmap - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/540
Vipin KumarMain ContributorFill circle on window - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/533
Vipin KumarMain ContributorFill triangle on window - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/534
Vipin KumarMain ContributorFree font - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/532
Vipin KumarMain ContributorLine from (coordinates) - Geometry - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/405
Vipin KumarReviewerDraw circle on bitmap - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/521
Vipin KumarReviewerDraw pixel - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/467/files
Vipin KumarReviewerGet font style (Overload) - Graphics - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/499
Vipin KumarReviewerHas font - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/535
Vipin KumarReviewerHeader - Interface - Usage Example Creationhttps://github.com/thoth-tech/splashkit.io-starlight/pull/497
Vipin KumarReviewerRefresh screen - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/524
Vipin KumarReviewerHas font name as string - Graphics - Usage Example Updatehttps://github.com/thoth-tech/splashkit.io-starlight/pull/436#issue-2999152195

Roadmap

SplashKit Expansion

  • Comprehensive Testing and Debugging: Develop a thorough test suite for SplashKit libraries to ensure stability across the library.
  • Unit Tests Revision: Refactor existing unit tests to ensure that each tests run independently, with a focus on addressing shared state issues.
  • SplashKit Libraries addition to NuGet: Add the required SplashKit libraries to the existing NuGet package with a proper icon, description, and documentation of the packaging process.
  • Rust Translation: Port the SplashKit framework to Rust, expanding its accessibility and allowing developers using Rust to take advantage of SplashKit’s features and capabilities.
  • Fix Pascal Memory Leaks: Investigate and fix the issues with Pascal programs memory leaks after compilation with FPC.
  • Functions Header Revision: Review the current header information to ensure accuracy for each functions.

SplashKit Website & Tutorials

  • Expand Onboarding Hub: Continue building the onboarding hub to include information about learning paths, guides, and tutorial templates to allow for an easier transition.
  • Further Usage Example Expansion: Create examples for every SplashKit function to improve accessibility for users.
  • API Documentation Updates: Further refine the information in the API Documentation page to improve clarity and accuracy.
  • Advanced Tutorials: Develop in-depth tutorials on AI and advanced game development topics.
  • Tutorials Review and Refinement: A thorough review of each tutorials to ensure that they are up-to-date and align with our current standards.
  • Data Analytics Integration: Integrate data analytics to track the most-viewed pages on the website, allowing for data-driven decisions.
  • Netlify Build Process Improvement: Update the configuration of the site deployment so that each deploys are only built when needed, decreasing build minutes.
  • Beyond SplashKit Project: Further develop resources showcasing users how to program without SplashKit.

SplashKit Online

  • C# Support: Continue developing browser-based C# compilation and execution features.
  • Autocomplete Improvement: Improve the functionality of the search autocomplete to support C++ languages result.
  • Debugging Features: Investigate and implement debugging features regarding breakpoints and variable watch window.
  • Further Features Refinements: Continue developing SplashKit Online features to improve user experience and functionality of the platform.

Arcade Machine

  • Consolidate Documentation:

    • Centralise all documentation in a single location or repository to improve accessibility and ensure consistency across projects.
  • Add Additional Modes to the Arcade Machine Software:

    • Kiosk Mode: Display only published games, making it ideal for showcasing at events or exhibitions.
    • Normal Mode: Show both published and test games, catering to developers and testers.
  • Implement Voting System:

    • Integrate a voting system to give greater significance to the star ranking currently available on the machines, enhancing user engagement and feedback mechanisms.
  • Correct C# Compatibility for ARM:

    • Address the issue of .NET not running correctly in the emulated Raspberry Pi environment used for C++ games, ensuring seamless compatibility for C# games.
  • Implement Versioning for Compiled Games:

    • Introduce versioning to manage updates effectively, reducing potential issues with game compatibility and ensuring a smooth update process.
  • Continue Development of Flipper Game Packaging Tool:

    • Advance the development of the Flipper tool to streamline game packaging, deployment, and compatibility across platforms.

Open Issues

Onboarding Process and Information

Although the Onboarding documentation has been updated to streamline the process and provide clear guidance, there will still challenges during the onboarding phase. There will difficulties with setting up developement environments or understanding the workflow process. Through help hub sessions and mentorship, we were to somewhat address concerns but this issues suggest that while the documentation is a good foundation, it may benefit from further refinement. This could be adding step-by-step tutorials or a more structured onboarding checklist.

Task Review Process

While the requirement of each task to go through two peer reviews followed by a mentor review helps ensure quality and maintain high coding standards, it has also led to a significant bottleneck in the workflow. As the volume of tasks increase, the number of reviewers often falls short, causing many completed task to remain in a pending state for extended period. This delay can hinder overall progress and reduce team momentum. Without a more scalable review process or improved review scheduling, the current approach may continue to strain the efficiency of the team.

Lack of Communication between Groups

While regular stand-ups meetings with overlapping members from different sub-products exist, there is still a noticable lack of a collaborative efforts across teams. As a result, oppportunities for synergy between products are missed where shared challenged could arise across teams and allow for chances to reduce duplication in problem resolution. Moving forward, the company should consider creating more opportunities for collaboration with cross-functional discussions, shared planning sessions, or joint tasks could help bridge this gap and promote a stronger sense of team across the entire ecosystem.

Lessons Learned

The Importance of Collaboration

This trimester offered a clear reminder of how essential effective is to the success of a project. While individual contributions are important, greater progress happens when team works together, share ideas or knowledge, and support one another. Instances where collaboration sparked often led to faster problem-solving, innovative ideas, and higher-quality outcomes. Moving forward, creating a more connected and communicative team culture is key to reaching the true potential of the company.

Further Onboarding Refinements

Despite improvements to the onboarding documentation, this trimester revealed areas that still need to be addressed. Some members found the setup process confusing, ran into build issues, or lacked clarity on where to start. This highlights the need for more structured onboarding, potentially with interactive guides, videos, or more designated support for new members.

Balancing Contributions and Reviews

As the trimester progressed, it became clear that balancing the rate of new contributions with capacity of peer reviews is essential for maintaining the project’s momentum and efficiency. While students were increasingly productive in terms of pull requests, the review process often lagged behind, creating a backlog of tasks needing feedback. Building a stronger culture and emphasis around reviewing, dedicated review times, or review responsibilities assignment could lead to a better balance between contribtutions and reviews, allowing for a more efficient development cycle.

Product Development Life Cycle

New Task

In SplashKit, we place a strong emphasis on reponsiblity and accountablity; this means individuals are encouraged to ownership and self-assign tasks/cards to themselves. Members are free to assign themselves to any card unless noted otherwise. To ensure clarity and alignment with project’s goals, the process of creating a new task are listed below:

  • Problem or Opportunity Idenfication: If you notice any areas of improvement or come across an idea for new features, discuss it with a mentor. This can be done via stand-ups/team meetings or direct one-on-one communication with the mentor.
  • Approval: Upon discussion, the mentor will evaluate the relevance and feasibility of the task brough up and if approved, this card should be made in Planner to outline its scope and requirements.
  • Assignment: After the card is created, you can assign yourself to it but you must ensure that the tasks’s objectives are fully understood before work begins.
  • Collaboration (if necessary): For larger or complex tasks, it can be coordinated with other members to determine if the task needs collaboration to complete.

Definition of Done

A task is only considered fully done once it has been completed, submitted as a pull request, and reviewed by two other students who approve it (see below). Once a mentor reviews it, it may be considered fully complete or potentially moved back to “doing” if deemed unsatisfactory.

Task Review

Two mandatory peer reviews must be completed before the mentor reivew. Once a pull request is created:

  1. Contact a Reviewer: You can either reach out a teammate for review or forward your pull request to the team channel. Upon agreement, tag them under the Teams Planner card and GitHub pull request as the reviewer.
  2. Reviewer Responsibilities: Review the code by:
    • Checking syntax, logic, and output.
    • Pulling the changes onto your local machine to test functionality.
  3. Feedback Process: If the reviewer requests changes:
    • Update the contribution based on the feedback.
    • Notify the reviewer once changes are committed and pushed. This will automatically update the pull request, eliminating the need to create a new one.
  4. Completion of Peer Reviews: Once two peer reviews are completed and the contribution is deemed correct, the pull request can be moved to the “Mentor Review” column.

Watch this tutorial video by Satika Jayawardena for a step-by-step guide on creating and reviewing pull requests.

Once the pull request is in the “Mentor Review” column, a mentor will review the work. If satisfactory, it will be marked as complete and moved to the current sprint’s “Complete” column. If additional changes are needed, the task may be moved back to “Doing” for further refinement.

Testing

Testing strategies depend on the project – please see each project’s onboarding information for more details.

Branching Strategy

Refer to the Branch Prefixes and Commit Message Format sections of the Git Contributions Guide for guidelines on creating Git branches and commits for contributions.

Product Architecture

The SplashKit ecosystem is a comprehensive set of tools and platforms that streamline game development and support learning for both beginnners and experienced developers. The architecture consists of interconnected components, each with a specific purpose, working together to deliver a smooth and integrated experience:

SplashKit SDK (Core Foundation)

At the core of the SplashKit ecosystem is the SplashKit SDK, a powerful toolkit built with C++, SDL, and OpenGL. It provides essential game development featues such as graphics rendering, input handling, and audio support. Through automated translation into languages like C#, Python, and Pascal, the SDK broadens its accessibility across various programming communities.

  • Integration: The SDK powers all games developed within the ecosystem, supports tools like SplashKit Online, and forms the basis of the games showcased on the SplashKit.io website.

SplashKit.io Website (User Portal)

The SplashKit website acts as the primary interface for developers with access to the API documentation, Installation Guides, and Tutorials. It was built using Astro Starlight, React, SolidJS, and TailwindCSS to ensure responsive user-friendly experience. Integration using Dockerised deployment with NodeJS ensures scalability and consistency.

  • Interaction: The website saw integration with SplashKit Online, allowing for interactive examples and development tools. It also showcases functions’ examples along with games developed using SplashKit with a recently added feature where users can test out the game online.

SplashKit Online (Interactive Development)

SplashKit Online extends the capabilities of the SDK with a web-based IDE that allows for real-time coding and testing without the need for local installations. It’s powered by WebAssembly (WASM) and Emscripten, the platform currently supports coding with C++ and JavaScript.

  • Role in Ecosystem: This component is an exciting and innovative tool that can used during onboarding new developers, especially for beginners, allowing them to experiment with SplashKit without any setup.

Arcade Machine (Hardware Integration)

Developed in collaboration with Deakin University, the arcade machines run on Raspberry Pi hardware, leveraging emulationstation and retropie. These machines allow developers to test and showcase their games in a real-world arcade environment, offering a tactile experience that bridges software and hardware.

  • Interaction: Games created using the SplashKit SDK can be directly uploaded and tested on these machines, demonstrating the SDK’s versatility.

Source Code