{"id":21125660,"url":"https://github.com/Supertolek/One-lesson-winui","last_synced_at":"2025-07-08T23:31:24.991Z","repository":{"id":218401575,"uuid":"744544900","full_name":"Supertolek/One-lesson-winui","owner":"Supertolek","description":"One Lesson is an app to store and edit course sheets.","archived":true,"fork":false,"pushed_at":"2025-01-28T12:51:45.000Z","size":18647,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-04T12:51:23.344Z","etag":null,"topics":["software","winui3","writing"],"latest_commit_sha":null,"homepage":"https://supertolek.github.io/One-lesson/","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Supertolek.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-01-17T14:17:25.000Z","updated_at":"2025-03-14T11:00:45.000Z","dependencies_parsed_at":"2024-03-14T17:35:36.017Z","dependency_job_id":"7daeff3f-093e-4ffa-af53-f6aa448f9405","html_url":"https://github.com/Supertolek/One-lesson-winui","commit_stats":null,"previous_names":["supertolek/one-lesson","supertolek/one-lesson-winui"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Supertolek/One-lesson-winui","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Supertolek%2FOne-lesson-winui","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Supertolek%2FOne-lesson-winui/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Supertolek%2FOne-lesson-winui/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Supertolek%2FOne-lesson-winui/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Supertolek","download_url":"https://codeload.github.com/Supertolek/One-lesson-winui/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Supertolek%2FOne-lesson-winui/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264365471,"owners_count":23596840,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["software","winui3","writing"],"created_at":"2024-11-20T04:36:15.591Z","updated_at":"2025-07-08T23:31:24.986Z","avatar_url":"https://github.com/Supertolek.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# One-lesson\n\nOne Lesson is an app to store and edit course sheets.  \n[One Lesson WebSite](https://supertolek.github.io/One-lesson/)  \nI will soon release a functionnal version of the One Lesson application.  \n[bug report / recommend features / show your hype](https://forms.gle/s9gmoJmgTwSaUUyA9)  \n[discord](https://discord.gg/JffuMqubE7)  \nMy email adress: supertolekmc@gmail.com\n\n## Why?\n\nI first decided to create this application beacause of a video from the YouTuber [Aywen](https://youtube.com/@AywenVideos).  \nHe gave us the ability to remix and createe a whole new version of his own programms, and I chose [Remember](https://github.com/Aywen1/remember).  \n[Remember](https://github.com/Aywen1/remember) was my choice because when i create a programm, I wannt it to be the most usefull for everyone, and this one could help some students looking for a free, open-source and distraction-free service for writing their lessons.\n\n## How?\n\nI might explain later, right now i don't have that much time.\n\n## For who?\n\n[One Lesson](https://github.com/Supertolek/One-lesson) is for students who want a pretty simple, yet complete application for writing their notes or their lessons.\n\n## Credits\n\nCredits to:  \n| Username / name                             | Reason                     |\n|---------------------------------------------|----------------------------|\n| [Aywen](https://youtube.com/@AywenVideos)   | For the initial idea       |\n| [Supertolek](https://github.com/Supertolek) | For coding the application |\n| LMC                                         | Later...                   |\n\n---\n\n## Features / Bug fixes comming\n\n| State | Type | Description |\n| ----- | ---- | ----------- |\n| 🟩 Solved   | 🔴 Bug     | Fix saving as .rtf `olb.0001` |\n| 🟥 Unsolved | 🔴 Bug     | Fix colors when saved from dark mode `olb.0002` |\n| 🟩 Solved   | 🔴 Bug     | 🌐 Issues between tabview / titlebar `olb.0003` |\n| 🟩 Solved   | 🔴 Bug     | RichEditBox height doesn't automaticaly adapt when opening a file `olb.0004` |\n| 🟥 Unsolved | 🔵 Deploy  | Create website `old.001` |\n| 🟥 Unsolved | 🔵 Deploy  | Create installer `old.002` |\n| 🟩 Solved   | 🟢 Feature | Add icon to .olf files `ola.0001` |\n| 🟥 Unsolved | 🟢 Feature | Text formating options `ola.0002` |\n| 🟥 Unsolved | 🟢 Feature | Tabs system `ola.0003` |\n| 🟩 Solved   | 🟢 Feature | 🌐 Keyboard accelerators `ola.0004` |\n| 🟥 Unsolved | 🟢 Feature | Pseudo-ai for multiple usages `ola.0005` |\n| 🟥 Unsolved | 🟢 Feature | A menu to change keybinds `ola.0006` |\n| 🟥 Unsolved | 🟢 Feature | A mind map designer `ola.0007` |\n\n🌐: used an answer from internet (stack overflow for example)\n\n## Bugs\n\n### 🟩 Fix saving as .rtf `olb.0001`\n\n**Description:**  \nWhen saving a file with .rtf extension, the file won't be saved.\n\n**Patch:**  \nI check if the file extension is correct, but only .olf is considered as correct.\n\n### 🟥 Fix colors when saved from dark mode `olb.0002`\n\n**Description:**  \nWhen saving using One Lesson with dark mode, the text is saved as white.\n\n### 🟩 🌐 Issues between tabview / titlebar `olb.0003`\n\n**Description:**  \nCannot interact with the tab bar because of the titlebar.\n\n**Patch:**\nUsing the Footer only as titlebar. (cannot longer interact with the footer, but there is nothing on it to interact with)\n\nMainWindow.xaml:\n```xaml\n\u003cTabView\u003e\n    \u003cTabView.TabStripHeader\u003e\n        \u003cGrid x:Name=\"ShellTitlebarInset\" Background=\"Transparent\"/\u003e\n    \u003c/TabView.TabStripHeader\u003e\n    \u003cTabView.TabStripFooter\u003e\n        \u003cGrid x:Name=\"CustomDragRegion\" Background=\"Transparent\" MinWidth=\"188\"/\u003e\n    \u003c/TabView.TabStripFooter\u003e\n    \u003c...\u003e\n    \u003c/...\u003e\n\u003c/TabView\u003e\n```\nMainWindow.xaml.cs:\n```cs\nnamespace One_Lesson\n{\n    public sealed partial class MainWindow : Window\n    {\n        public MainWindow()\n        {\n            InitializeComponent();\n            SetTitleBar(CustomDragRegion);\n            ExtendsContentIntoTitleBar = true;\n        }\n        ...\n    }\n}\n```\n\n🌐: from stack overflow\n\n## Deploy\n\n### 🟥 Create website `old.001`\n\n**Description:**\n- 🟥 Add a download source `old.001.1`\n- 🟥 Add pages `old.001.2`\n- 🟥 Make it reesponsive `old.001.3`\n\n### 🟥 Create installer `old.002`\n\n**Description:**\n- 🟥 Add a download source `old.001.1`\n- 🟥 Create the installer `old.002.1`\n\n## Features\n\n### 🟩 Add icon to .olf files `ola.0001`\n\n**Description:**  \nThe application have icons, but not the files.\n\n**Patch:**  \nI added more images using the toll included in visual studio.\n\n### 🟥 Text formating options `ola.0002`\n\n**Description:**  \nAdd more options for formating text (eg. color, size...)\n\n### 🟥 Tabs system `ola.0003`\n\n**Description:**  \nMake the tab bar usefull (store the document, title etc... in a variable in order to re-open the document when you open the tab)\n\n### 🟩 🌐 Keyboard accelerators `ola.0004`\n\n**Description:**  \nAdd keyboard shortcuts to increase the productivity.\n\n**Patch:**  \nAdd functions for the keyboard shortcut and add them into the element.\n\nMainWindow.xaml:\n```xaml\n\u003cMenuBar x:Name=\"MenuBarContainer\"\u003e\n    \u003cMenuBarItem\u003e\n        \u003cMenuFlyoutItem\u003e\n            \u003cMenuFlyoutItem.KeyboardAccelerators\u003e\n                \u003cKeyboardAccelerator Modifiers=\"Control\" Key=\"O\"/\u003e\n            \u003c/MenuFlyoutItem.KeyboardAccelerators\u003e\n        \u003c/MenuFlyoutItem\u003e\n        \u003cMenuFlyoutItem\u003e\n            \u003cMenuFlyoutItem.KeyboardAccelerators\u003e\n                \u003cKeyboardAccelerator Modifiers=\"Control\" Key=\"S\"/\u003e\n            \u003c/MenuFlyoutItem.KeyboardAccelerators\u003e\n        \u003c/MenuFlyoutItem\u003e\n    \u003c/MenuBarItem\u003e\n    \u003c...\u003e\u003c/...\u003e\n\u003c/MenuBar\u003e\n```\n\n🌐: winui 3 gallery\n\n### 🟥 Pseudo-ai for multiple usages `ola.0005`\n\n**Description:**  \nI will try to create a language parser. I will use it to resume automatically the lesson, create quiz to memorize the lesson etc...  \nIt might take a while, so if you have an idea, tell me. (and I already know [NLTK](https://www.nltk.org), but it doesn't work as i want and have no implementation for winui at my knowledge)\n\n## Contact\n\n### Dev (main)\n\n[✉️ Email : supertolekmc@gmail.com](mailto:supertolekmc@gmail.com)  \n🟣 Discord : @supertolek\n\n### Personal (if urgent)\n\n**⚠️ Please use this email adress only with an important reason.**  \n[✉️ Email : lequereth@gmail.com](mailto:lequereth@gmail.com)  \n🟣 Discord : @thomaslequere\n\n### Discord server\n\n[🟣 Discord server (invitation id: FZx4c528jY)](https://discord.gg/FZx4c528jY)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSupertolek%2FOne-lesson-winui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FSupertolek%2FOne-lesson-winui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSupertolek%2FOne-lesson-winui/lists"}