WiKi
作るのに結構色々な技術が必要となるので作ってみるのは楽しいと思う
サーバーを立ち上げるための知識
言語によってはライブラリで用意されているので、それの使い方
リクエスト、レスポンス、GET、POST、ステータスコードくらい知っておけばなんとかなりそうな気がする
ぼくはアホバカなのでHTTPライブラリしか使ってないけど、フレームワーク使えばこのへんは隠蔽されてそうな気がする
内部構造の設計
データどこに保存するかとか
Wikiのデータ程度ならディレクトリ掘ってプレーンテキストで保管するくらいでもなんとかなるけど、恐らくスケールはしない
Gollumのように構造上、必然的にプレーンテキストで保管するものもある
ちゃんとやるならDBに保管すべき
最近のアーキテクチャだとアプリケーション層は
エフェメラルなのが主流のため保存先は分けておくのがベネ
APIどうするか
独自記法のパーサーとレンダラー
個人的にはここが一番作ってて楽しい
Markdownのような既存の記法をそのまま使ってライブラリを使うという手もある
レンダラーが吐き出すのはHTMLなので、必然的にHTMLについて学ぶことになる