{"id":15134655,"url":"https://github.com/willnilges/grab","last_synced_at":"2026-01-15T22:57:45.091Z","repository":{"id":181061179,"uuid":"666142448","full_name":"WillNilges/grab","owner":"WillNilges","description":"Threads -\u003e Wiki: A bot that allows you to save threads from your messaging platform to your knowledge base with a single command","archived":false,"fork":false,"pushed_at":"2024-01-03T04:59:17.000Z","size":5916,"stargazers_count":2,"open_issues_count":15,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-04T04:43:41.652Z","etag":null,"topics":["bot","documentation","go","mediawiki","slack"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/WillNilges.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-07-13T20:15:06.000Z","updated_at":"2024-06-24T19:16:31.000Z","dependencies_parsed_at":"2024-09-21T09:00:31.801Z","dependency_job_id":null,"html_url":"https://github.com/WillNilges/grab","commit_stats":null,"previous_names":["willnilges/grab"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WillNilges%2Fgrab","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WillNilges%2Fgrab/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WillNilges%2Fgrab/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WillNilges%2Fgrab/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/WillNilges","download_url":"https://codeload.github.com/WillNilges/grab/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247123098,"owners_count":20887259,"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":["bot","documentation","go","mediawiki","slack"],"created_at":"2024-09-26T05:23:27.480Z","updated_at":"2026-01-15T22:57:45.086Z","avatar_url":"https://github.com/WillNilges.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Grab\n\n[![GitHub go.mod Go version of a Go module](https://img.shields.io/github/go-mod/go-version/willnilges/grab.svg)](https://github.com/willnilges/grab)\n![You actually did ask for this](https://img.shields.io/badge/you_actually-asked_for_this-red)\n![Hosted By CSH](https://img.shields.io/badge/powered_by-csh.rit.edu-pink?logo=data:image/svg%2bxml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDEzLjAuMiwgU1ZHIEV4cG9ydCBQbHVnLUluICAtLT4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4KPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHhtbG5zOmE9Imh0dHA6Ly9ucy5hZG9iZS5jb20vQWRvYmVTVkdWaWV3ZXJFeHRlbnNpb25zLzMuMC8iIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iNTQwcHgiIGhlaWdodD0iNTI1cHgiIHZpZXdCb3g9Ii0wLjAxNCAwLjAyOCA1NDAgNTI1IiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IC0wLjAxNCAwLjAyOCA1NDAgNTI1IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPGRlZnM+CjwvZGVmcz4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00MjAsMTM1VjMwYzAtMTYuNTY5LTEzLjQzMy0zMC0zMC0zMEgzMEMxMy40MzEsMCwwLDEzLjQzMSwwLDMwVjQ5NSAgYzAsMTYuNTY3LDEzLjQzMSwzMCwzMCwzMGgzNjBjMTYuNTY3LDAsMzAtMTMuNDMzLDMwLTMwVjM5MGgtOTBWNDIwYzAsOC4yODQtNi43MTUsMTUtMTUsMTVIMTA1Yy04LjI4NCwwLTE1LTYuNzE2LTE1LTE1VjEwNSAgYzAtOC4yODQsNi43MTYtMTUsMTUtMTVoMjEwYzguMjg1LDAsMTUsNi43MTYsMTUsMTV2MzBINDIweiIvPgo8cGF0aCBkPSJNMjkyLjUsMTE5Ljk5OUgxMjcuNTAxYy00LjE0MywwLTcuNSwzLjM1Ny03LjUsNy41VjI4NWMwLDQuMTQzLDMuMzU3LDcuNDk5LDcuNSw3LjQ5OWgxMDEuMjVjMi4wNzEsMCwzLjc1LDEuNjgsMy43NSwzLjc1MSAgdjQ0Ljk5OWMwLDIuMDcxLTEuNjc5LDMuNzUtMy43NSwzLjc1SDE5MS4yNWMtMi4wNzEsMC0zLjc1LTEuNjc5LTMuNzUtMy43NVYzMjIuNWgtNjcuNDk5VjM5Ny41YzAsNC4xNDIsMy4zNTcsNy41LDcuNSw3LjVIMjkyLjUgIGM0LjE0MywwLDcuNS0zLjM1OCw3LjUtNy41VjI0MGMwLTQuMTQzLTMuMzU3LTcuNS03LjUtNy41SDE5MS4yNWMtMi4wNzEsMC0zLjc1LTEuNjc5LTMuNzUtMy43NWwtMC4wMDEtNDUgIGMwLTIuMDcxLDEuNjc5LTMuNzUsMy43NS0zLjc1aDM3LjUwMWMyLjA3MSwwLDMuNzUsMS42NzksMy43NSwzLjc1bDAuMDAxLDE4Ljc1SDMwMHYtNzUuMDAxICBDMzAwLDEyMy4zNTYsMjk2LjY0MywxMTkuOTk5LDI5Mi41LDExOS45OTl6Ii8+Cjxwb2x5Z29uIHBvaW50cz0iNDIwLDMwMCA0MjAsMzYwIDMzMCwzNjAgMzMwLDE2NSA0MjAsMTY1IDQyMCwyMjUgNDUwLDIyNSA0NTAsMCA1NDAsMCA1NDAsNTI1IDQ1MCw1MjUgNDUwLDMwMCAiLz4KPC9zdmc+)\n\n\u003cp align=\"center\"\u003e\n  \u003cimg height=\"300px\" src=\"https://github.com/WillNilges/grab/blob/8aa627c6dc2e49be53e4b897033c35795fc28399/static/images/grabbit_head.png\" alt=\"Oxford the Grabbit\"\u003e\n\u003c/p\u003e\n\n### Turn chat platform discussions into real documentation!\n\nGrab is an application that connects your messaging platform to your knowledge base. Simply tag the bot on a thread, and easily transfer knowledge generated in your messaging platform to a proper, more permanent home. Slack might be expensive, but information can be priceless!\n\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd colspan=\"2\"\u003eChat\u003c/td\u003e\n    \u003ctd colspan=\"2\"\u003eWiki\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003eSlack\u003c/td\u003e\n    \u003ctd\u003e ✅ \u003c/td\u003e\n    \u003ctd\u003eMediaWiki\u003c/td\u003e\n    \u003ctd\u003e ✅ \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003eDiscord\u003c/td\u003e\n    \u003ctd\u003e ❌ \u003c/td\u003e\n    \u003ctd\u003eConfluence\u003c/td\u003e\n    \u003ctd\u003e ❌ \u003c/td\u003e\n  \u003c/tr\u003e\n    \u003ctr\u003e\n    \u003ctd\u003eMS Teams\u003c/td\u003e\n    \u003ctd\u003e ❌ \u003c/td\u003e\n    \u003ctd\u003eSharePoint\u003c/td\u003e\n    \u003ctd\u003e ❌ \u003c/td\u003e\n  \u003c/tr\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n    \u003ctd\u003eMatrix\u003c/td\u003e\n    \u003ctd\u003e ❌ \u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://www.dokuwiki.org/dokuwiki\"\u003eDokuWiki\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e ❌ \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003c/tr\u003e\n    \u003ctd\u003eZulip \u003c/td\u003e\n    \u003ctd\u003e ❌ \u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"https://www.bookstackapp.com/\"\u003eBookStack\u003c/a\u003e\u003c/td\u003e\n    \u003ctd\u003e ❌ \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n### Why?\n\nIt has been my experience that in a lot of techncial communities, people collaborate on Slack, Discord, etc, and generate a lot of useful information, but that information often does not make it into a wiki and gets lost. This app aims to lower the barrier to entry for documentation, and and help people spend less time searching and more time doing.\n\nBack in 2022, I had the idea for this project, and then a friend told me that there are already [plenty](https://www.getguru.com/) [of](https://www.backupery.com/products/backupery-for-slack/) [startups](http://landria.io/) charging people $N/seat/month or some other ludicrous amount for this kind of service. I think that's way too much, so I made my own. \n\n### Status\n\nGrab is currently under development and absolutely not ready for public consumption. Check the [issues](https://github.com/WillNilges/grab/issues) tab for progress on development. **If you'd like to contribute, feel free to comment on an issue!**\n\n### Roadmap™\n- AI summarization\n- Confluence integration\n- Discord integration\n- BookStack integration\n- MS Teams integration\n- SharePoint integration\n\n### Setup\n\nThis app is designed to be containerized and deployed on OpenShift or other K8s-flavored platform. Deploy it from Git, build it, and provide the environment variables listed in `.env.template.` You'll need a postgres database somewhere.\n\nTo serve your dev instance, you can use ngrok:\n\n```\nngrok http --domain \u003cyour ngrok domain\u003e 8080\n```\n\nYou can run grab baremetal in development:\n\n```\ngo run .\n```\n\nYou can also debug it with `gdb` if you need to:\n\n```\n go build -gcflags=all=\"-N -l\" \u0026\u0026 gdb grab\n```\n\n#### Wisdom\n\n- In the `.env` file, You MUST use `\u003cwiki url\u003e/api.php` to point to your wiki!!!\n- The app only initializes the DB once on startup, if it needs to. If you drop your DB, restart the app.\n\n### Credits\n\n[Christine Espeleta](https://github.com/chrissye0) for creating Oxford, the Grabbit!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwillnilges%2Fgrab","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwillnilges%2Fgrab","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwillnilges%2Fgrab/lists"}