{"id":21161182,"url":"https://github.com/hasnep/slack-archiver","last_synced_at":"2025-03-14T16:10:32.969Z","repository":{"id":178017816,"uuid":"660548096","full_name":"Hasnep/slack-archiver","owner":"Hasnep","description":"🗃️ A tool to archive Slack links","archived":false,"fork":false,"pushed_at":"2023-07-02T09:13:09.000Z","size":16,"stargazers_count":0,"open_issues_count":2,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-21T09:27:21.397Z","etag":null,"topics":["archiver","slack"],"latest_commit_sha":null,"homepage":"","language":"Julia","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/Hasnep.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":"2023-06-30T08:56:00.000Z","updated_at":"2023-07-12T14:03:15.000Z","dependencies_parsed_at":null,"dependency_job_id":"17abb2b2-219e-4514-93b5-d72e06c9fe6f","html_url":"https://github.com/Hasnep/slack-archiver","commit_stats":null,"previous_names":["hasnep/slack-archiver"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hasnep%2Fslack-archiver","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hasnep%2Fslack-archiver/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hasnep%2Fslack-archiver/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hasnep%2Fslack-archiver/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Hasnep","download_url":"https://codeload.github.com/Hasnep/slack-archiver/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243606954,"owners_count":20318314,"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":["archiver","slack"],"created_at":"2024-11-20T13:08:40.686Z","updated_at":"2025-03-14T16:10:32.963Z","avatar_url":"https://github.com/Hasnep.png","language":"Julia","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Slack Archiver\n\nA tool to scan files containing Slack links, then archive the conversations in those links to a GitHub repository and replace the Slack links with links to the archives.\n\n## Setup\n\n### GitHub Token\n\n- [Generate a GitHub token](https://github.com/settings/tokens), select \"classic token\" and tick the \"repo\" scope, then generate the token.\n- Copy the token and paste into a `.env` file, with the name `GITHUB_TOKEN=...`\n\n### Slack Token\n\n- [Create a new Slack app](https://api.slack.com/apps) and choose \"from an app manifest\".\n- After choosing the workspace, copy and paste the contents of `./app-manifest.json`\n- Open your Slack app's basic information page, and press \"Install your app\", then allow the app to access information.\n- Select \"OAuth \u0026 Permissions\" from the app's sidebar and copy the User OAuth token for your workspace, paste it into a `.env` file with the name `SLACK_TOKEN=...`\n\n### Configuration\n\nConfiguration is specified in a `config.toml` file, the fields are:\n\n- `github_username` - the owner of the repo being used for archiving\n- `github_repo_name` - the name of the repo being used for archiving\n- `git_name` - the name that will be associated with the git commits\n- `git_email` - the email that will be associated with the git commits\n- `slack_workspace` - the name of your Slack workspace, e.g. `julialang`\n- `github_token_environment_variable` and `slack_token_environment_variable` - optional, the names of the environment variables that will be checked for your tokens, default to `GITHUB_TOKEN` and `SLACK_TOKEN` respectively\n\n## Running\n\nInstall the project's dependencies:\n\n```shell\njulia --project=. -e 'import Pkg; Pkg.instantiate()'\n```\n\nThen run the `src/SlackArchiver.jl` file, passing the paths to files containing Slack links that you want archived.\nThe files will automatically be overwritten with ones containing the new archived links.\n\n```shell\njulia --project=. src/SlackArchiver.jl ./path-to/my-file.md ./path-to/another-file.md\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhasnep%2Fslack-archiver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhasnep%2Fslack-archiver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhasnep%2Fslack-archiver/lists"}