{"id":15016671,"url":"https://github.com/electricduck/booski","last_synced_at":"2025-10-10T07:32:39.042Z","repository":{"id":240448501,"uuid":"802663247","full_name":"electricduck/booski","owner":"electricduck","description":"🦋 Bluesky cross-poster for inferior services","archived":false,"fork":false,"pushed_at":"2024-10-28T17:38:38.000Z","size":322,"stargazers_count":4,"open_issues_count":4,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-09-12T00:30:04.745Z","etag":null,"topics":["atproto","bluesky","cross-posting","csharp","dotnet","mastodon","telegram"],"latest_commit_sha":null,"homepage":"https://booski.zio.blue","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/electricduck.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-05-18T23:08:03.000Z","updated_at":"2025-03-20T09:26:55.000Z","dependencies_parsed_at":"2024-05-21T00:27:56.391Z","dependency_job_id":"291a48bc-4758-434a-9b21-82e21a3cecbe","html_url":"https://github.com/electricduck/booski","commit_stats":{"total_commits":129,"total_committers":1,"mean_commits":129.0,"dds":0.0,"last_synced_commit":"2ce8c65d420c7f095184eae84aed6632234103f4"},"previous_names":["electricduck/booski"],"tags_count":25,"template":false,"template_full_name":null,"purl":"pkg:github/electricduck/booski","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/electricduck%2Fbooski","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/electricduck%2Fbooski/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/electricduck%2Fbooski/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/electricduck%2Fbooski/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/electricduck","download_url":"https://codeload.github.com/electricduck/booski/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/electricduck%2Fbooski/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279003189,"owners_count":26083533,"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","status":"online","status_checked_at":"2025-10-10T02:00:06.843Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["atproto","bluesky","cross-posting","csharp","dotnet","mastodon","telegram"],"created_at":"2024-09-24T19:49:13.362Z","updated_at":"2025-10-10T07:32:38.621Z","avatar_url":"https://github.com/electricduck.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003e\n    Booski\n\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003cstrong\u003eBooski\u003c/strong\u003e is a Bluesky cross-poster for inferior services\u003cbr /\u003e\u003cem\u003e(and a .NET library for \u003ca href=\"https://atproto.com/\"\u003eATProto\u003c/a\u003e and \u003ca href=\"https://bsky.social/\"\u003eBluesky\u003c/a\u003e)\u003c/em\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003cstrong\u003e\n        \u003ca href=\"https://github.com/electricduck/booski/releases/latest\"\u003e⬇️ Get Booski\u003c/a\u003e \u0026nbsp;|\u0026nbsp;\n        \u003ca href=\"https://github.com/electricduck/booski/wiki\"\u003e📖 Read Docs\u003c/a\u003e \u0026nbsp;|\u0026nbsp;\n        \u003ca href=\"https://github.com/electricduck/booski/issues/new\"\u003e💣 Submit Issue\u003c/a\u003e \u0026nbsp;|\u0026nbsp;\n        \u003ca href=\"https://bsky.app/profile/booski.zio.blue\"\u003e🦋 @booski.zio.blue\u003c/a\u003e\n    \u003c/strong\u003e\n\u003c/p\u003e\n\n\u003chr /\u003e\n\n## ✨ Quick Start\n\n\u003e  This Quick Start makes general assumptions about your environment, such as using Linux (x86_64). For a more comprehensive guide, see [Docs](https://github.com/electricduck/booski/wiki).\n\n```sh\ncd ~/.local/bin\nwget https://github.com/electricduck/booski/releases/download/v%2F0.x%2F0.5/booski-0.5-linux-x64.bin\nchmod +x booski-0.5-linux-x64.bin\n./booski-0.5-linux-x64.bin start --no-daemon\n```\n\n## 🏗️ Building\n\nThis repository currently houses two tangentially related projects (under `./src`): the Bluesky cross-poster (`Booski`), and a general-purpose Bluesky library (`Booski.Lib`).\n\n\u003e For some background, Booski began life as a Bluesky library. Shortly into development, these plans folded as maitaining a library (especially for an ever-evolving unstable API) is a hard task at scale and [another, more feature-complete, Bluesky library already exists](https://github.com/drasticactions/FishyFlip). Instead of ditching weeks-worth of work that created the library (it's some of my best work, if I do say so myself) it was decided to utilize it for the new cross-poster, which itself became **Booski**, and the library became **Booski.Lib**.\n\u003e\n\u003e **Booski.Lib** is still being developed, as its used in other various personal projects, but it will never be considered truely stable or feature-complete. However, you are welcome to use it in your own projects (sorry, there's no NuGet package) and [submit tickets]([https://github.com/electricduck/booski/labels/Lib](https://github.com/electricduck/booski/issues/new)) (tagging with [Lib](https://github.com/electricduck/booski/labels/Lib)).\n\n### Setting Up\n\n#### Prerequisites\n\n* **[.NET](https://dotnet.microsoft.com/)**\n   * [Version 9.0](https://dotnet.microsoft.com/en-us/download/dotnet/9.0) (and above) required. Due to [dotnet/runtime#72604](https://github.com/dotnet/runtime/issues/72604#issuecomment-1440708052), older versions are not supported.\n* **Linux**, **Windows**, or **macOS**\n* **Bash**\n   * Scripts under `tools/bash/` require this shell. There are currently no native scripts for Windows/PowerShell.\n\n#### Getting\n\n```sh\ngit clone https://github.com/electricduck/booski.git\ncd booski\ngit submodule sync\ngit submodule update --init --recursive\n```\n\n##### Future Pulls\n\nWhen updating in the future, don't forget to update submodules with:\n\n```\ngit submodule update --recursive\n```\n\n**Do not** use `git submodule foreach git pull`: this blindly updates all submodules to their latest version, not the commit this parent repo has checked out. This is important for some submodules that are checked out at specific tags/commits (such as `./lib/Telegram.Bot`).\n\n### Building\n\n_(Todo)_\n\n### Using\n\n#### _Booski_\n\n_(Todo)_\n\n#### _Booski.Lib_\n\n_(Todo)_\n\n\u003c!--\n## 🤝 Acknowledgements\n\n_(Todo)_\n--\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Felectricduck%2Fbooski","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Felectricduck%2Fbooski","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Felectricduck%2Fbooski/lists"}