From d580f3baa28a58b8a7c0f5da0fe54b7225468cfe Mon Sep 17 00:00:00 2001 From: Anagh Wadhwa Date: Mon, 30 Mar 2026 14:57:48 +1100 Subject: [PATCH 1/5] docs: align introduction with T1 2026 objectives --- src/content/docs/document/introduction.md | 28 ++++++++++++++++++----- 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/src/content/docs/document/introduction.md b/src/content/docs/document/introduction.md index 43b36574..29087e95 100644 --- a/src/content/docs/document/introduction.md +++ b/src/content/docs/document/introduction.md @@ -4,14 +4,30 @@ title: OnTrack Technical Documentation ## Introduction -Welcome to the OnTrack technical documentation website, your portal to innovative learning in the realm of skill-based education. Formerly known as Doubtfire, OnTrack represents a cutting-edge Learning Management System meticulously engineered to redefine the course delivery model. Rooted in the philosophy of providing students with practical experiences and prompt feedback, OnTrack bridges the gap between tutors and learners not only within Deakin University but also across global academic networks. +Welcome to the OnTrack (formerly Doubtfire) technical documentation portal. OnTrack is an open-source, lightweight learning management system designed to enhance education outcomes by empowering students through practical experience and personalised learning. -At its core, OnTrack comprises both frontend and backend components. The frontend, developed with TypeScript and Angular, delivers a seamless user experience characterized by intuitive navigation and dynamic interaction. Meanwhile, the backend, built on Ruby on Rails, forms the sturdy backbone upon which OnTrack's functionality thrives. Through the seamless integration of these components, OnTrack offers a powerful platform that transcends boundaries, fostering collaborative learning experiences. +## Our Mission and Values -Leveraging Docker for deployment, OnTrack exemplifies efficiency and flexibility, streamlining the deployment process for enhanced accessibility and responsiveness. Embracing the latest technologies, OnTrack embodies a commitment to innovation and excellence, setting new benchmarks in educational technology. +As a core project of Thoth Tech, we prioritise sustainability, innovation, and collaboration. Our goal is to foster a supportive environment where students can take ownership of their learning and develop the mindset of lifelong learners. -Our technical documentation website will serve as a beacon of knowledge, offering a comprehensive repository of all technical documentation including guides, manuals, tutorials, and reference materials spanning diverse domains. Whether you're a seasoned professional refining your expertise or an enthusiastic learner embarking on a new journey, our curated collection caters to individuals of all backgrounds and skill levels. +## Project Architecture & T1 2026 Focus -More than just a repository, our platform fosters a vibrant community of learners and experts alike, encouraging collaboration and knowledge sharing. Continuously updated to reflect the latest industry trends and best practices, our documentation ensures users have access to the most relevant and up-to-date information. +OnTrack is a decoupled system currently undergoing significant modernisation: +- **Frontend:** We are actively migrating from legacy AngularJS/CoffeeScript to **Angular 17 and TypeScript** to improve maintainability and accessibility. +- **Backend:** The platform is built on a robust **Ruby on Rails** backbone. +- **Deployment:** We utilise **Docker** to ensure deployment efficiency and flexibility. -With a user-friendly interface designed for seamless navigation, our website empowers users to explore topics of interest, search for specific information, and engage with curated content tailored to their needs. Join us on a journey of discovery, learning, and innovation as we unlock the boundless possibilities of technology together with OnTrack. Welcome aboard! +## Trimester Goals + +For the T1 2026 trimester, our work is organised into four key areas: +1. **Frontend Migration:** Modernising the web application to Angular 17. +2. **Security:** Remediating vulernabilities based on OWASP Top 10 guidelines. +3. **Features:** Developing new student-facing experimental modules. +4. **Documentation:** Maintaining this "beacon of knowledge" to ensure all guides and manuals are accurate and accessible. + +## Leadership + +- **Company Director:** Dr. Hourieh Khalajzadeh +- **Product Owner:** Prof. Andrew Cain +- **OnTrack Mentor:** Brian Dang +- **Senior Student Leader:** Steven Dalamaras \ No newline at end of file From 9a222af81b7be2b69c13af1f34730c6eb0cd3214 Mon Sep 17 00:00:00 2001 From: Anagh Wadhwa Date: Mon, 30 Mar 2026 18:47:11 +1100 Subject: [PATCH 2/5] docs: finalise T1 2026 documentation updates --- src/content/docs/setup/set.md | 64 ++++++++++++++++++----------------- 1 file changed, 33 insertions(+), 31 deletions(-) diff --git a/src/content/docs/setup/set.md b/src/content/docs/setup/set.md index a30622b1..06c96223 100644 --- a/src/content/docs/setup/set.md +++ b/src/content/docs/setup/set.md @@ -9,12 +9,20 @@ title: Initial Setup - Open the **OnTrack Planner Board** tab at the top to view and assign yourself to active tasks. - If you cannot see the board, contact Brain Dang to be added to the cohort's workspace. -## Configuring git (global) +## Configuring Git (Global) -If you haven’t already, you must configure git. +If this is your first time using Git on this machine, you must configure your identity. This information is attached to every commit you make. -1. Set your git username by git config –global user.name “FIRST_NAME LAST_NAME”, whereFIRST_NAME is your first name and LAST_NAME is your last name. -2. Set your git email by git config –global user.email “YOUR_EMAIL”, where YOUR_EMAIL is your email. It is advised that you use your @users.noreply.github.com email address, which is, by default, <username>@users.noreply.github.com, where <username> is your GitHub username. +1. **Set your name:** +'''bash +git config --global.username "Your Name" +2. **Set your email:** +'''bash +git config --global user.email "username@users.noreply.github.com" + +:::note[Privacy Tip] +Using your GitHub-provided noreply email address keeps your personal email private in the public commit history. You can find your specific address in your GitHub Email Settings. +::: ## Cloning the Documentation @@ -30,34 +38,32 @@ If you are on a Windows machine, then we recommend that you install WSL2. ## Get OnTrack Running on Local Machine -You need a terminal that supports shell scripts (on Windows, you need WSL2, Msys2, or Cygwin). +There are two ways to set up the project. We **strongly recommend** Option 1 for the most consistent experience. -1. Fork [doubtfire-deploy](https://github.com/doubtfire-lms/doubtfire-deploy), [doubtfire-api](https://github.com/doubtfire-lms/doubtfire-api), and [doubtfire-web](https://github.com/doubtfire-lms/doubtfire-web) -2. Clone your [doubtfire-deploy](https://github.com/doubtfire-lms/doubtfire-deploy). Make sure to fetch submodules to get the sub-projects. +### Option 1: VS Code Dev Containers (Recommended) -Terminal window +:::tip[Why choose this?] +This is the fastest setup method. It automatically configures Docker, Ruby, and Node.js inside a pre-set container, preventing almost all "it works on my machine" errors. +::: -git clone –recurse-submodules +1. **Prerequisites:** Install [Docker Desktop](https://www.docker.com/products/docker-desktop/) and the [Dev Containers Extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers) in VS Code. +2. **Fork & Clone:** Fork and clone the 'doubtfire-deploy' repository as described in the Manual Setup below. +3. **Launch:** Open the folder in VS Code. When the pop-up appears in the bottom right, click **"Reopen in Container"**. +4. **Wait:** VS Code will build the environment. Once finished, you are ready to develop! -1. cd into the directory. +### Option 2: Manual Local Setup -Terminal window +Use this method if you prefer to manage dependencies (Ruby, Node, etc.) directly on your host machine. **Note:** On Windows, you will need a terminal that supports shell scripts (WSL2, MSYS2, or Cygwin). +1. **Fork the repositories:** Fork [doubtfire-deploy](https://github.com/thoth-tech/doubtfire-deploy), [doubtfire-api](https://github.com/thoth-tech/doubtfire-api), and [doubtfire-web](https://github.com/thoth-tech/doubtfire-web). +2. **Clone with Submodules:** +'''bash +git clone --recurse submodules [https://github.com/YOUR_USERNAME/doubtfire-deploy](https://github.com/YOUR_USERNAME/doubtfire-deploy) cd doubtfire-deploy +3. **Configure Remotes:** Run the following command to set your fork as the remote: ./change_remotes.sh +4. **Add Team Remote:** Use the username provided by your Mentor: git remote add task-view-submission [https://github.com/PROVIDED_USERNAME/doubtfire-deploy](https://github.com/PROVIDED_USERNAME/doubtfire-deploy) +5. **Final Steps:** Follow the remaining instructions in the [doubtfire-deploy contributing file](https://github.com/doubtfire-lms/doubtfire-deploy/blob/development/CONTRIBUTING.md#working-with-docker-compose). -1. Open a terminal that supports sh scripts (on Windows, you require WSL2, Msys2, or Cygwin). Run the following command to set your fork as the remote. - -Terminal window - -./change_remotes.sh - -1. Your delivery lead provides you with the GitHub username to use in this command. This allows you to use git fetch task-view-submission, git pull task-view-submission, and git push task-view-submission. - -Terminal window - -git remote add task-view-submission - -1. You can now follow the remaining instructions, from instruction four, in the doubtfire-deploy [contributing file](https://github.com/doubtfire-lms/doubtfire-deploy/blob/development/CONTRIBUTING.md#working-with-docker-compose). ## What Next? @@ -67,15 +73,11 @@ Now that your environment is set up, familiarise yourself with the current proje - **T1 2026 Cohort Update:** Assist in updating all project references from 2025 to the current **T1 2026** cohort. - **Refine Guides and Tutorials:** Review existing setup files (like this one!) to ensure they match the current repository structure ('doubtfire-astro'). - **Techical Documentation:** - - **Timestamp & Author:** Implement a global "last updated" and "author" field for all documentation pages. - - **Repository Cleanup:** Tidy the Microsoft Teams and Sharepoint documentation repositories to remove redundant legacy files. +- **Timestamp & Author:** Implement a global "last updated" and "author" field for all documentation pages. +- **Repository Cleanup:** Tidy the Microsoft Teams and Sharepoint documentation repositories to remove redundant legacy files. - **Pull Request Management:** Monitor and close out any remaining pull requests against the documentation repositories to keep the main branch clean. ## Technical & Specialised Tasks - **Security & Databases:** If you have specialised knowledge in cyber-security or database adminstration, check the specialised tasks on the Planner board for implementation reviews. -- **Git Integration:** Examine how Git can be better implemented on the back-end of the OnTrack product as part of the current sprint. - -## Helpful Points - -- If you are using Windows as your primary operating system and you have not downloaded, installed, and/or set-up MinGW, then a former team found the Linux subsystem [WSL 2](https://docs.microsoft.com/en-us/windows/wsl/install) and [Docker Desktop WSL 2 backend](https://docs.docker.com/desktop/windows/wsl/) as a helpful development environment. +- **Git Integration:** Examine how Git can be better implemented on the back-end of the OnTrack product as part of the current sprint. \ No newline at end of file From 8a323f673c1f602748342175ea443110ea2e27f5 Mon Sep 17 00:00:00 2001 From: Anagh Wadhwa Date: Mon, 30 Mar 2026 19:00:18 +1100 Subject: [PATCH 3/5] docs: fix broken markdown syntax in set.md --- src/content/docs/setup/set.md | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/src/content/docs/setup/set.md b/src/content/docs/setup/set.md index 06c96223..61f11273 100644 --- a/src/content/docs/setup/set.md +++ b/src/content/docs/setup/set.md @@ -14,12 +14,13 @@ title: Initial Setup If this is your first time using Git on this machine, you must configure your identity. This information is attached to every commit you make. 1. **Set your name:** -'''bash +```bash git config --global.username "Your Name" +``` 2. **Set your email:** -'''bash +```bash git config --global user.email "username@users.noreply.github.com" - +``` :::note[Privacy Tip] Using your GitHub-provided noreply email address keeps your personal email private in the public commit history. You can find your specific address in your GitHub Email Settings. ::: @@ -29,8 +30,9 @@ Using your GitHub-provided noreply email address keeps your personal email priva This enables you to contribute to the project documentation. You should also read the [documentation contribution guidelines](https://github.com/thoth-tech/documentation/blob/main/CONTRIBUTING.md). Terminal window - +```bash git clone https://github.com/thoth-tech/doubtfire-astro.git +``` ## WSL2 @@ -57,11 +59,18 @@ Use this method if you prefer to manage dependencies (Ruby, Node, etc.) directly 1. **Fork the repositories:** Fork [doubtfire-deploy](https://github.com/thoth-tech/doubtfire-deploy), [doubtfire-api](https://github.com/thoth-tech/doubtfire-api), and [doubtfire-web](https://github.com/thoth-tech/doubtfire-web). 2. **Clone with Submodules:** -'''bash +```bash git clone --recurse submodules [https://github.com/YOUR_USERNAME/doubtfire-deploy](https://github.com/YOUR_USERNAME/doubtfire-deploy) +``` cd doubtfire-deploy -3. **Configure Remotes:** Run the following command to set your fork as the remote: ./change_remotes.sh -4. **Add Team Remote:** Use the username provided by your Mentor: git remote add task-view-submission [https://github.com/PROVIDED_USERNAME/doubtfire-deploy](https://github.com/PROVIDED_USERNAME/doubtfire-deploy) +3. **Configure Remotes:** Run the following command to set your fork as the remote: +```bash +./change_remotes.sh +``` +4. **Add Team Remote:** Use the username provided by your Mentor: +```bash +git remote add task-view-submission [https://github.com/PROVIDED_USERNAME/doubtfire-deploy](https://github.com/PROVIDED_USERNAME/doubtfire-deploy) +``` 5. **Final Steps:** Follow the remaining instructions in the [doubtfire-deploy contributing file](https://github.com/doubtfire-lms/doubtfire-deploy/blob/development/CONTRIBUTING.md#working-with-docker-compose). From 84e46a78390f3fe0b15e46ad4286037f4304b62f Mon Sep 17 00:00:00 2001 From: Anagh Wadhwa Date: Mon, 30 Mar 2026 19:05:07 +1100 Subject: [PATCH 4/5] docs: fix broken markdown syntax in set.md --- src/content/docs/setup/set.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/content/docs/setup/set.md b/src/content/docs/setup/set.md index 61f11273..ad951afd 100644 --- a/src/content/docs/setup/set.md +++ b/src/content/docs/setup/set.md @@ -61,8 +61,8 @@ Use this method if you prefer to manage dependencies (Ruby, Node, etc.) directly 2. **Clone with Submodules:** ```bash git clone --recurse submodules [https://github.com/YOUR_USERNAME/doubtfire-deploy](https://github.com/YOUR_USERNAME/doubtfire-deploy) -``` cd doubtfire-deploy +``` 3. **Configure Remotes:** Run the following command to set your fork as the remote: ```bash ./change_remotes.sh From 95931d8992c544404c987d7efc4dd8a4ce109b03 Mon Sep 17 00:00:00 2001 From: anaghwadhwa123 Date: Fri, 3 Apr 2026 17:19:11 +1100 Subject: [PATCH 5/5] docs: align introduction with technical documentation standards --- src/content/docs/document/introduction.md | 24 ++++------------------- 1 file changed, 4 insertions(+), 20 deletions(-) diff --git a/src/content/docs/document/introduction.md b/src/content/docs/document/introduction.md index 29087e95..962fc979 100644 --- a/src/content/docs/document/introduction.md +++ b/src/content/docs/document/introduction.md @@ -8,26 +8,10 @@ Welcome to the OnTrack (formerly Doubtfire) technical documentation portal. OnTr ## Our Mission and Values -As a core project of Thoth Tech, we prioritise sustainability, innovation, and collaboration. Our goal is to foster a supportive environment where students can take ownership of their learning and develop the mindset of lifelong learners. +The project prioritises sustainability, innovation, and collaboration. The goal is to foster a supportive environment where users can take ownership of their learning and develop a mindset of lifelong learning through structured feedback and task-based progression. -## Project Architecture & T1 2026 Focus +## Project Architecture -OnTrack is a decoupled system currently undergoing significant modernisation: -- **Frontend:** We are actively migrating from legacy AngularJS/CoffeeScript to **Angular 17 and TypeScript** to improve maintainability and accessibility. -- **Backend:** The platform is built on a robust **Ruby on Rails** backbone. -- **Deployment:** We utilise **Docker** to ensure deployment efficiency and flexibility. +At its core, OnTrack comprises both frontend and backend components.he frontend is developed with TypeScript and Angular, providing a dynamic and responsive user experience. The backend is built on Ruby on Rails, forming a robust API and data management layer. -## Trimester Goals - -For the T1 2026 trimester, our work is organised into four key areas: -1. **Frontend Migration:** Modernising the web application to Angular 17. -2. **Security:** Remediating vulernabilities based on OWASP Top 10 guidelines. -3. **Features:** Developing new student-facing experimental modules. -4. **Documentation:** Maintaining this "beacon of knowledge" to ensure all guides and manuals are accurate and accessible. - -## Leadership - -- **Company Director:** Dr. Hourieh Khalajzadeh -- **Product Owner:** Prof. Andrew Cain -- **OnTrack Mentor:** Brian Dang -- **Senior Student Leader:** Steven Dalamaras \ No newline at end of file +The platform leverages Docker for deployment, ensuring environment consistency and streamlining the setup process for contributors across various operating systems. \ No newline at end of file