You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+40-6Lines changed: 40 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,8 +1,13 @@
1
1
# Project Ignite
2
-
A temporary replacement Device Manager Application (DMA) for schools after [Mobile Guardian was hacked](https://www.channelnewsasia.com/singapore/mobile-guardian-application-remove-cybersecurity-incident-moe-4526676).<br>
2
+
Project Ignite is a new Device Manager Application (DMA) for schools developed after [Mobile Guardian was hacked](https://www.channelnewsasia.com/singapore/mobile-guardian-application-remove-cybersecurity-incident-moe-4526676).
3
+
<br>
4
+
Project Ignite focuses on ensuring the **Security** and **Privacy** of students as well as being as **Fail-Proof** as possible. The chrome extension for students is **designed to work even if the server goes offline** after it has been properly set up. Moreover, the chrome extension does not collect any data from students' devices (as of version 0.1).
5
+
<br>
3
6
The first version of this application was made in less than 3 days and is currently under testing.
7
+
<br><br>
8
+
I believe that Singapore needs our own solution for a DMA to accommodate for the various needs of students and teachers. In the future, Project Ignite be more than just a DMA. It will be an all in one software to help teachers facilitate learning through various tools and feature that will keep student intrigued to learning. These features will be synced to the complex timetable schools in Singapore have. It will also come with software to help schools create these complex timetables.
4
9
<br>
5
-
I have always believed that Singapore needed our own internal solution for a DMA to accommodate for the various needs of studnets and teachers. Thus I plan to further develop this project after my GCE O'Level examinations.<br>
10
+
Thus, I plan to further develop this project after my GCE O'Level examinations.<br>
6
11
<br>
7
12
The server is based off a past project which is based off a tutorial found [here](https://www.digitalocean.com/community/tutorials/how-to-add-authentication-to-your-app-with-flask-login).
8
13
<br>
@@ -12,16 +17,45 @@ This project is made possible thanks to [Free DNS](https://freedns.afraid.org/).
12
17
<imgsrc="https://bulma.io/assets/images/made-with-bulma.png"alt="Made with Bulma"width="256"height="48">
13
18
</a>
14
19
20
+
****
21
+
22
+
## Security
23
+
This full stack application does not collect any personal data nor does it have any major control over the users' devices. Thus even if compromised, there is nothing much to steal or control.
24
+
25
+
## Feature Timeline
26
+
-**End of October 2024**
27
+
- Multiple profile Support
28
+
<br><br>
29
+
-**End of November 2024**
30
+
- Ability to handle more than 5,000 blocked sites
31
+
- "Live class" feature, which includes the following features:
32
+
- "Look Up" mode. Temporarily locks students' devices to force them to pay attention to the teacher. Triggered by the teacher.
33
+
- "Live Screen" mode. Streams teachers' computer screens to students, allowing them to take screenshots and rewind if needed. <br>This is especially useful when teachers are going through answers for a test. Students can take screenshot or rewind so that they can copy their corrections later and spend more time understanding what they did wrongly.<br>(Ability to rewind can be disabled)
34
+
- "Live Management". Allows teachers, during a live class session, to see the sites students are visiting, push sites for students to visit, and, enforce a custom set of rules for which sites students are allowed to visit.
35
+
- "Q&A". Allows students to post questions to the teacher without disrupting the entire lesson.
36
+
- "Live Polls". Allows teachers to create multiple choice or open ended polls. This is useful when teachers show questions in their slides and ask students to answer.
37
+
<br><br>
38
+
-**By 3rd quarter of December 2024**
39
+
- Documentation for Ignite DMA
40
+
<br><br>
41
+
-**End of June 2025**
42
+
- Documentation for Ignite DMA
43
+
<br><br>
44
+
-**Future Goals**
45
+
- Timetable generation and ability to sync with "Live class" system
46
+
- iPad and Windows Client for students using these devices
47
+
- Point system linked to "Live Polls". Points can be used in...
48
+
49
+
15
50
## Important Notes
16
51
1.**THERE IS A LIMIT OF 5,000 BLOCKED SITES PER STUDENT** due to the usage of `declarativeNetRequest`. As stated in the [documentation](https://developer.chrome.com/docs/extensions/reference/api/declarativeNetRequest#dynamic-rules):
17
52
> An extension can have at least 5000 dynamic rules. This is exposed as the `MAX_NUMBER_OF_UNSAFE_DYNAMIC_RULES`.
18
53
19
54
2. The extension checks for updates from the profile every 30 seconds. You can force a refresh by pressing `Refresh Profile` in the options page.
20
55
21
-
3.**FOR ADMINISTRATORS:** When force installing the extension on students' devices, `Site Access` must be set to `On all sites` in order for the extensions to work properly. Please ensure you enforce this rule.<br>
22
-
Even if you cannot enforce this setting, it will by default have access to all sites. A fullscreen popup will annoy students if they attempt to try to change the setting. The extension will also switch to `legacyWebBlocking` to stop students from visiting the blocked webpage should this popup fail to launch.
23
-
## Security
24
-
This full stack application does not collect any personal data nor does it have any major control over the users' devices. Thus even if compromised, there is nothing to lose.
56
+
3.**FOR ADMINISTRATORS:** When force installing the extension on students' devices, extension needs access to `file://` URLs and `Site Access` must be set to `On all sites` in order for the extensions to work properly. Please ensure you enforce this rule.<br>
57
+
Even if you cannot enforce this setting, it will by default have access to all sites. A full screen popup will annoy students if they attempt to try to change the setting. The extension will also switch to `legacyWebBlocking` to stop students from visiting the blocked webpage should this popup fail to launch.
58
+
25
59
26
60
## TODO
27
61
-[x] Extension: Implement `declarativeNetRequest` API
0 commit comments