Данный продукт будет очень напоминать github gists.
Каждый gist - это отдельный репозиторий. Соответственно в нем может быть несколько (сколько угодно) файлов.
В этом инструменте недостает всего лишь несколько мелочей, которые могут превратить его в удобный персональный блог или базу знаний.
Добавляем несколько возможностей, отсутствующих в gist.github.com и получаем gist.wikiblog:
- Репозитории - странички базы знаний. Веб-интерфейс похож на wiki-движок, а репозитории отображаются как странички энциклопедии или ка записи блога. Существуют правила генерации титульной странички для репозитория, самое простое - отображать
readme.md
если есть этот файл.
- Есть возможность аннотировать репозитории тэгами (и свойствами).
- Директория с репозиториями на диске
- File watch service
- Веб приложение
- БД с аннотациями
- Fulltext search engine
- Http access to git repos
File watch service - фоновая служба. При записи в папку репозитория она сканирует файлы и сохраняет метаданные о репозитории в БД.
Функции веб приложения:
- Поиск
- отображение отсортированного списка статей (по созданию или по последней правке).
- Редактирование статей и других текстовых файлов (небольшого размера) репозитория через веб-интерфейс.
- Создание статей
- Аннотирование.
- переименование
При внесении изменений, веб-приложение просто запысывает их в соответвтующие файлы, а File watch service далее подхватывает эти изменения.
Http access to git repos:
Компоненты:
- File watch service + БД
- Веб приложение
Roadmap:
- Самое простое веб приложение
- БД
- FileWatchService
- Создание статей
- Редактирование файлов. Аннотации редактируются через редактирование мета-файла.
- Добавление свойств