Crocos Wiki を Crowi として公開しました
既にお知らせしてあったとおり、株式会社クロコスは今月いっぱいでヤフー株式会社に吸収合併されます。
ま、出せるもんは出しておけ、ということで準備を進めてきたのですが、Crocos社内で使っていた Wiki ツールを公開します。 実は前からしてたんですがw、もうちょっとアレコレこうしてからバーンと公開しよー!と思っていたらなんかバタバタしてるうちに開発あまり進まなかったので(ありがち)、結局いろいろ道半ば状態ですが、一旦バーンとしちゃいますw
Crowi - The Simple & Powerful Communication Tool Based on Wiki
設計思想は「コミュニケーションツールとしてのWiki」です。
読み方は「クロウウィ」です。由来はもちろん、Crocos Wiki ですw 開発を始めたきっかけですが、創業した年の年末年始休みで
ドキュメントを共有したいがまともなWikiツールがない (当時はとりあえずRedmineのWikiをつかってました)
くらいの感じで、最初3日くらいで形をつくりました。 最初のバージョンは、非常に中途半端でアレだったんですが、わりと使えちゃうから1年半位放置したまま運用してて、とはいえもっと色んな機能つけたい、便利にしたいと本腰いれてやりはじめ、ボチボチとデザインを変えたり機能を追加してきて ... 今に至る、というかんじです。
現在のクロコスでは、すべてのコミュニケーションのベースに、Wiki を据えたいと思い、こうしたツールに明るいエンジニア職の人以外にも積極的に使ってもらえるように推進してきました。
特に、Wikiに情報を載せていくこと徹底する前は、「以前話したことがあると思うんだけど、いつだっけ」といった、意思決定の根拠が残らず、確認をしたり、同じことをまた話したりする無駄がありましたが
というフローが身についてからは、認識のズレ (話した時は「あーそうだよね、うんうん」とお互いなったのに、書き起こしてみたら認識違っていたみたいなこと) がなくなったり、後から見返せるようになったりなど、情報がよく回るようになりました。
まず、記法ですが、昔であればはてな記法とかPukiWiki記法とかいろいろありましたが、方言含めやっぱりグローバルに Markdown で間違いないでしょ、という感じなので、当然 Markdown で書けるようになっています。 (そういや Wiki の当初のバージョンでは、Markdownにくわえ、はてな記法とRawテキスト の3種類をサポートしてましたが、やめちゃいました)
リアルタイムプレビューというほどでもないですが、横に一応プレビューも出ます。
一番こだわったのはここで、 / で終わるページが必ずリストビューになっています。 /user/ にアクセスすれば /user/sotarok や /user/yudoufu などの下層ページが自動的にリストされます。 リストとページを行ったり来たりして、遡れたり掘れたり、というのが気持ちよく出来るように考えました。
/どこそこ/2014/10/31/ほげほげ といった形でページを作成しておけば、
/どこそこ/ にアクセスすればどこそこの記事一覧が、
/どこそこ/2014/ にアクセスすれば2014年に書いたどこそこの記事一覧が、
/どこそこ/2014/10/ にアクセスすれば2014年10月に書いたどこそこの記事一覧が、
表示される、みたいなイメージです。これが一番好きなところです。
また、リストページでタイムライン表示では、それを展開できるようにしました。ページを廻らなくても見られるようにですね。
また、これは副産物的に出来たのですが、 /user/.+/日報/ といった正規表現を含むURLでアクセスすると、例えばこの例であれば全員の日報一覧を出す、などの仕掛けもあります。 はたして便利なのかわかりませんがw、とりあえず日報一覧、くらいの活用はしています。
まだダサイのでデザインとかはまだ色々考えています。^^;
右上から「今日のメモ」をクリックすると、 /user/sotarok/2014/10/31/xxxxx のようなページにすぐジャンプできるようになります。 今議事録を書きたい、今メモをかきたい、といったときのクイックな行動を促せるように設計しました。
意外と「見た人」機能が便利です。 見た人がアイコンとして並ぶことで、「共有したあの議事録見てくれた?」のようなことはすぐにわかるようになりましたし、他の人が書いてくれたメモやアイデアに、何も言わなくても「見たよ」といえるようになります。
あといいね!も実装してあります。 日報にいいね!、議事録にいいね!、アイデアにいいね!、どんどんつければ良いと思います。
お気に入り機能は、お気に入りにいれたやつの変更を追えたり、ブックマーク的にあとで探せたりとかしたい!と思ってつけました。 ちなみに お気に入りはまだ「みる画面」がありません (大笑 えー、がんばりますw
FacebookログインとかGoogle Appsログインとか
一応、設定すればできるようになっております。 最初は Facebook ログインでつかえる Wiki!みたいに始めたんですが、結局Facebookの仕様変更に追従するの面倒になって、ログインくらいはできるけどね、くらいの実装になっています。
Google Apps ログインは、Google Apps 使ってる企業とかだと使いやすいかもねえ!?
WebSocket でリアルタイムで他の人が変更を加えたことがわかったり ... Markdown で書けば勝手にプレゼンになったりとか ... (まぁ reveal.js つかってるだけだけど)
いちおう Heroku で動くよねってところを意識して作ってあります。
(crowi-search は groonga。そのうちこの2プロダクトは統合しよう .......)
どういうノリで書けば良いかわかりませんがまあ、こういう感じのツールになっています。
コミュニケーションツールとしてもうちょっとちゃんとしたものにするためにはまだまだやりたいことたくさんあります。 アイデアをまとめるのはこっちのデモ代わりに建てた Wiki でやっていこうと思います。
まあ、まだ正直バグもあるしw、手放しにオススメできるかというと、PukiWikiとかを使うくらいならこっちのほうがいいよ、程度ではありますが、今のところ人柱と協力者は募集しておりますw
カッチョイイロゴを考えてくれた @misuyumi、クロコス退職後某社CTOとなって Pull Request を送ってくれる @riaf、皆さんに感謝! あとかっちょいいサイトが簡単につくれる Strikingly にも感謝。