1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/longfei6671-godoc

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

МинДок: введение

Статус сборки Статус сборки

МинДок — это простая и удобная система управления документацией, разработанная для IT-команд.

Предшественником МинДока является SmartWiki — система управления документацией на основе PHP-фреймворка Laravel. Однако из-за сложности развёртывания PHP для обычных пользователей, было решено использовать Golang для разработки. Это делает систему более удобной для развёртывания и использования.

Целью разработки было создание системы для управления и обмена интерфейсами проектов для нужд IT-отдела компании. Функциональность и интерфейс системы были вдохновлены Kancloud.

Система может использоваться для хранения документации по интерфейсам, баз данных, руководств и других документов. Она включает в себя управление проектами, пользователями и правами доступа, что удовлетворяет потребности большинства малых и средних команд в управлении документацией.

Демонстрационный сайт: http://doc.iminho.me.

Установка и использование

Если на вашем сервере не установлена программа Golang, необходимо вручную установить переменную среды ZONEINFO со значением MinDoc/lib/time/zoneinfo.zip.

Для получения дополнительной информации см. руководство пользователя: MinDoc Руководство пользователя.

Пользователи без опыта работы с Golang могут загрузить скомпилированную программу с https://github.com/lifei6671/mindoc/releases.

Разработчики с опытом работы с Golang рекомендуется выполнить компиляцию и установку. Перед этим необходимо установить официальный инструмент управления пакетами Golang. См. Install dep.

git clone https://github.com/lifei6671/mindoc.git

dep ensure

go build -ldflags "-w"

./mindoc install

./mindoc

При использовании MySQL для хранения данных кодировка должна быть utf8mb4_general_ci. Перед установкой необходимо заполнить конфигурацию проекта в файле conf/app.conf в каталоге проекта.

При использовании SQLite базы данных достаточно настроить путь к базе данных в конфигурационном файле.

Если каталог conf не содержит файл app.conf, необходимо переименовать app.conf.example в app.conf.

По умолчанию программа автоматически создаёт суперпользователя с именем admin и паролем 123456. После входа рекомендуется изменить пароль.

# Настройка почты
# Включить почту
enable_mail=true
# SMTP-сервер
smtp_user_name=admin@iminho.me
# Адрес SMTP-сервера
smtp_host=smtp.ym.163.com
# Пароль
smtp_password=1q2w3e__ABC
# Порт
smtp_port=25
# Адрес отправителя
form_user_name=admin@iminho.me
# Срок действия письма 30 минут
mail_expired=30

Использование Docker для развёртывания

Docker-пользователи могут обратиться к файлу Dockerfile в проекте для создания образа.

Во время запуска образа необходимо предоставить следующие переменные среды:

DB_ADAPTER                  Тип БД
MYSQL_PORT_3306_TCP_ADDR    Адрес MySQL
MYSQL_PORT_3306_TCP_PORT    Порт MySQL
MYSQL_INSTANCE_NAME         Имя MySQL
MYSQL_USERNAME              Имя пользователя MySQL
MYSQL_PASSWORD              Пароль MySQL
HTTP_PORT                   Адрес прослушивания программы

Пример:

docker run -p 8181:8181 --name mindoc -e DB_ADAPTER=mysql -e MYSQL_PORT_3306_TCP_ADDR=10.xxx.xxx.xxx -e MYSQL_PORT_3306_TCP_PORT=3306 -e MYSQL_INSTANCE_NAME=mindoc -e MYSQL_USERNAME=root -e MYSQL_PASSWORD=123456 -e httpport=8181 -d daocloud.io/lifei6671/mindoc:latest

Развёртывание с помощью docker-compose

  1. Измените файл конфигурации docker-compose.yml, указав необходимые параметры в узле volumes и environment.
  2. Выполните команду docker-compose up -d для автоматического развёртывания всех компонентов.
  3. Откройте браузер и перейдите по адресу http://localhost:8181/, чтобы получить доступ к системе.
  4. Для выполнения дополнительных действий используйте команды docker-compose, такие как остановка, перезапуск, удаление и т. д.

Скриншоты проекта

Создание проекта:

Создание проекта

Список проектов:

Список проектов

Обзор проекта:

Обзор проекта

Участники проекта:

Участники проекта

Настройки проекта:

Настройки проекта

Редактор Markdown на основе Editor.md:

Редактор Markdown на основе Editor.md

Насыщенный текстовый редактор на основе wangEditor:

Насыщенный текстовый редактор на основе wangEditor

Предварительный просмотр проекта:

Предварительный просмотр проекта

Панель администратора:

Панель администратора

Используемые технологии

  • beego 1.10.0
  • mysql 5.6
  • editor.md Редактор Markdown
  • bootstrap 3.2
  • библиотека jQuery
  • фреймворк для загрузки файлов webuploader
  • библиотека Nprogress
  • библиотека jstree
  • библиотека font awesome
  • библиотека cropper
  • фреймворк layer
  • библиотека highlight
  • to-markdown HTML-трансформация в Markdown с помощью библиотеки:
  • quill — редактор форматированного текста;
  • vue — фреймворк.

Основные функции

  • Управление проектами: редактирование, изменение проектов, добавление участников и т. д.
  • Управление документами: добавление, удаление документов и т. п.
  • Управление комментариями: управление комментариями к документам и собственными комментариями.
  • Управление пользователями: добавление и блокировка пользователей, изменение личных данных и т. д.
  • Управление правами пользователей: реализация изменения ролей пользователей.
  • Шифрование проекта: настройка статуса публичности проекта, доступ к частным проектам через токен.
  • Настройка сайта: включение анонимного доступа, установка проверочного кода и др.

Участие в разработке

Мы будем рады, если вы сообщите о проблеме или сделаете запрос на извлечение (pull request) в проекте MinDoc на GitHub.

Если вы ещё не знакомы с моделью разработки Fork and Pull на GitHub, вы можете прочитать документацию GitHub (https://help.github.com/articles/using-pull-requests), чтобы получить больше информации.

Об авторе

Не совсем PHP-разработчик, не совсем свободный программист на Go.

Поддержка MinDoc

Платежи доступны через:

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Система управления онлайн-документацией для интерфейсов, реализованных на Golang [только распространение кода без PR]. Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/longfei6671-godoc.git
git@api.gitlife.ru:oschina-mirror/longfei6671-godoc.git
oschina-mirror
longfei6671-godoc
longfei6671-godoc
master