{"id":16692626,"url":"https://github.com/platisd/skonaki","last_synced_at":"2025-03-21T18:33:45.025Z","repository":{"id":200603251,"uuid":"705902755","full_name":"platisd/skonaki","owner":"platisd","description":"Create cheatsheets out of videos","archived":false,"fork":false,"pushed_at":"2024-12-28T21:43:14.000Z","size":554,"stargazers_count":15,"open_issues_count":2,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-01T08:51:27.904Z","etag":null,"topics":["cheating","cheatsheet","notes","openai"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/platisd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2023-10-16T23:27:24.000Z","updated_at":"2025-02-23T01:43:56.000Z","dependencies_parsed_at":null,"dependency_job_id":"037f5b7a-5da2-4d94-86e8-4f58d99bbb04","html_url":"https://github.com/platisd/skonaki","commit_stats":null,"previous_names":["platisd/skonaki"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/platisd%2Fskonaki","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/platisd%2Fskonaki/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/platisd%2Fskonaki/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/platisd%2Fskonaki/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/platisd","download_url":"https://codeload.github.com/platisd/skonaki/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244153529,"owners_count":20407001,"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":["cheating","cheatsheet","notes","openai"],"created_at":"2024-10-12T16:27:53.057Z","updated_at":"2025-03-21T18:33:44.431Z","avatar_url":"https://github.com/platisd.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# skonaki ✍️\n\nStudy smarter, not harder: Create cheatsheets out of videos 🪄\n\n![skonaki logo](skonaki-logo-small.png)\n\n\n## What is `skonaki`?\n\n`skonaki` is a tool that allows you to create cheatsheets out of videos.\u003cbr\u003e\nIt is a command line tool that takes a path (or a URL) to a video or audio file and produces\na list of bullet points with the most important information from the video.\nThe bullet points are accompanied by timestamps, in case you need to refer back\nto the video and check a specific part for yourself.\u003cbr\u003e\nYou can determine how often you would like to \"sample\" the video and, if you choose,\nyou could take control of the cheatsheet generation process by providing your own\nprompts.\n\nWhile `skonaki` cannot and should not replace studying, it can accelerate your learning\nprocess by allowing you to quickly go through recordings and produce a set of notes\nthat you can further refine and study from.\n\nThe name `skonaki` comes from the Greek word \"σκονάκι\" (skonaki), which means \"cheatsheet\".\n\n![skonaki sample output](skonaki-output.png)\n\n## Why use `skonaki`?\n\n`skonaki` is a tool that can help you study smarter, not harder.\nI used it to avoid having to watch the video lectures at a course I am taking.\nYou could use it to create notes out of your recordings, meetings, or even podcasts.\n\n## How does `skonaki` work?\n\nUltimately, what `skonaki` does is split audio from video, then transcribe it using either\nthe Whisper OpenAI API or by running Whisper locally and finally use the transcription to create a cheatsheet with the most\nimportant information from the video.\nThe cheatsheet generation is done by using the ChatCompletion API by OpenAI.\nIt's been tested to work on Ubuntu with `ffmpeg` installed.\u003cbr\u003e\nIf a URL is provided, `skonaki` will download the video using [yt-dlp](https://github.com/yt-dlp/yt-dlp).\nCurrently, only publicly available media are supported. Create an issue if you need support for\nsomething more or download the video yourself and pass the path to `skonaki`.\n\n### Installation\n\n* Dependencies\n  * To use `skonaki` you need to install its dependencies first by `pip install --user -r requirements.txt`.\n  * The Whisper OpenAI API is used by default. To instead use Whisper locally, install the Whisper library (including all other dependencies) by `pip install --user -r requirements-local-whisper.txt`.\n* OpenAI API key\n  * You need to get an [OpenAI API key](https://platform.openai.com/account/api-keys).\n    This is a paid service and it's used for the transcription and the cheatsheet generation.\n  * Set the `OPENAI_API_KEY` environment variable to your API key or pass it as an argument to `skonaki.py`.\n\nRun `skonaki.py --help` to see all available options.\n\n### Comparison with other tools\n\nSeveral tools help create notes, summaries, etc. out of videos.\nThe main difference is that most of them are web services that only require you to\nprovide a link to the video and they do the rest for you.\nI wanted to avoid handling video URLs since that's its own project and didn't want to bother.\n\nHere's my very \"scientific\" comparison of `skonaki` with other tools.\nI did not bother with those that required signing up or had a paywall:\n\n* [youtubesummarizer.com](https://youtubesummarizer.com/)\n  * Works pretty well, there are some ads and I like the executive summary part that they also provide. I'd say the quality of the results is similar to `skonaki`.\n* [summarize.tech](https://www.summarize.tech/)\n  * Wasn't very impressed with the results. It summarizes OKish but wouldn't be good enough for studying purposes.\n* [notegpt.io](https://notegpt.io/)\n  * Rather quick, I only tried their web version, while it also comes as a plugin. While the summary was on point, I found it too short to use for studying purposes. Great for summarizing though.\n\n| Tool                  | Summaries | Timestamps | Customization | Notes                                                                                      |\n| --------------------- | --------- | ---------- | ------------- | ------------------------------------------------------------------------------------------ |\n| `skonaki`             | 🏆         | ✅          | ✅             | Can customize anything from the prompt used, to how often a \"summary\" is produced          |\n| youtubesummarizer.com | 🏆         | ❌          | 😒             | There's a sliding scale for how long the summary should be, but doesn't get too \"detailed\" |\n| summarize.tech        | 😒         | ✅          | ❌             | No customization, their summary is not very suitable for studying                          |\n| notegpt.io            | 😒         | ❌          | ❌             | The summary is pretty good, but not detailed enough for studying                           |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fplatisd%2Fskonaki","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fplatisd%2Fskonaki","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fplatisd%2Fskonaki/lists"}