🐙

今、話題になっていないSlackのDocs風 新機能Canvasを使ってGitHubWikiやDocsを置き換えられないだろうか?

2023/07/05に公開

今、巷ではあまり聞かない注目のSlack新機能として、WikiやDocsとして活用できそうなCanvasという機能(有料機能)が順次リリースされています。
※まだ全てのワークスペースには導入されておらず、一部のワークスペースでのみ使用できる状態です。

Canvasとは?

ナレッジの検索や管理、共有が簡単にできる Slack の新しいスペースです。

https://slack.com/intl/ja-jp/features/canvas

  • Slackでメッセージを書く時と同じ機能の多くが提供されているため、マークダウンはもちろんチャンネルやユーザー補完、ファイルの添付、音声クリップなどが使用できる
  • Slackから離れずにドキュメントを書くことができ、Slackユーザーまたはチャンネル、さらにワークスペース全体に対して権限(閲覧、編集)を割り振ることができる
  • canvasに対してcanvasをカードとして埋め込んで、視覚的に構造化することができる

使用感

無料トライアルでSlack Canvasを使ってみます。

Canvasの作り方

Canvasの作り方には2パターンありそうです。

チャンネルに対してルートとなるCanvasを作成する

チャンネル右上部のアイコンから作成します。
チャンネル1つに対して1つだけCanvasを作ることができるようです。
意味合いとしてはチャンネルのdescriptionの拡張版といったところでしょうか。

一度作ってしまうともう別のフォーマットが選べないように見えますが、内容を全て削除して開き直すと一番最初と同じように別のフォーマットも選べます。

そしてこのCanvasは後述するフリーのキャンバスと違って一覧には表示されません。

チャンネルに紐づかないフリーのCanvasを作成する

画面左上部のcanvasから画面を開いて、新規作成ボタンから作成できます。
こちらはチャンネルに紐づかないので幾つでも自由に作ることができます。

Canvasの共有方法

CanvasはSlackのワークスペース、チャンネル、ユーザーそれぞれに対して共有できます。
実はエンジニア/ビジネスサイド両方が使えるドキュメントツールとしてこれが一番嬉しいポイントだと個人的には思っています!

これは例えばDMグループ/privateチャンネルに対しても作成/共有することができて、人事系の個人情報/機密情報なども情報が分散せずに、別ツールと権限の二重管理をせずにやりとりできます。
slackのチャンネルでも参加者を選定し、GoogleDocsでも共有メンバーを選定し、とする必要があったのは地味で漏れなどがありそうで大変でしたよね。

Canvasの書き方

キャンバスを新規作成、編集すると新規windowで開きます。
後はここでslackメッセージを入力するのと同じように文章を入力しましょう。

Canvas内で別のCanvasを新規作成で埋め込むとまた別のWindowで開きます。
これが嫌な場合は全画面にしておくとブラウザバックと同じような仕組みで行き来できます。

Canvasへの埋め込み

CanvasにCanvasを埋め込む

Canvasには好きなだけCanvasを埋め込むことができます。
他のサイトのリンクを貼るのと大きな変わりはありません。

埋め込みの方法はURLとCard方式が選べます。

添付ファイルを埋め込む

添付ファイルも自由に埋め込めます。
特定のフォーマットであればリッチな表示もしてくれるようです。
※golangのシンタックスがついていないようですが、別のgoファイルを添付した時にはシンタックスがつきました。謎です

行数の多いファイルを添付すると15行程度まで表示され、下へのスクロールはできませんでした。
もっと見るを押すと右側に展開される形式です。

列の分割

Canvas内では行ごとに最大3列まで分割できます。
例えばコードやデータのbefore/afterを見るのに使ったり、目次を構造的に作ったりするのに良さそうです。

コメント

各行に対してコメントができます。
slackでいうスレッドのような形になります。
コメントをいちいち開かないと見れないので活発に活用できるイメージは湧きませんでした。

まとめ

今までドキュメンテーションはGitHubのissueやwiki、GoogleDocsに書いてリンクを貼って共有ということが多かったです。

ですが、GitHubだと知識は集約できるもののどちらかというとディスカッション目的で使うことが多く、さらにはビジネスサイドへの展開がしづらいです。
Wikiに至ってはページごとに構造化することができずprefixで構造を代用するしかありませんでした。

GoogleDocsだとリンクが分散し、Slackでやりとりしている時に「あの時のやりとりが書かれたDocsどこだっけ?」となってしまうこともありました。
もちろんdocsごとにディレクトリに入れて構造化することはできますが、割と重労働になりがちでした。

しかし、今回のSlack Canvasでチャンネルに紐づけて、Cardとして構造的な目次を作れば見やすい形で構造化ができるのではないかと期待しています。
メインのワークスペースにCanvasが入ってきた時、実際に試してみるとしましょう。

Discussion