StackMIREA - образовательная платформа и документационный хаб для IT-дисциплин МИРЭА. Проект вырос из набора треков Python/AI/Java в полноценную многораздельную docs-платформу с единым UX, статическим деплоем и поддержкой авторства материалов.
- 19 учебных треков в едином формате.
- 67 страниц MD/MDX в
content/(включая разделы-индексы). - 48 учебных материалов помимо индексных страниц.
- Крупные треки:
java(26 страниц),ai(10),bigdata(9),python(6).
- Единый docs-интерфейс на Next.js App Router.
- Автосборка навигации и sidebar по структуре
content/. - TOC, breadcrumbs и пагинация между материалами.
- Подсветка кода через Shiki и клиентская кнопка копирования.
- Страница авторов с агрегацией публикаций по разделам.
- Ссылка
Edit on GitHubна каждой странице. - Статическая публикация на GitHub Pages через GitHub Actions.
pythonaibigdatajavaalgorithmsprocedural-programmingobject-oriented-programmingdata-structures-and-algorithms-part-1reactdata-structures-and-algorithms-part-2configuration-managementsystems-analysis-and-conceptual-modeling-part-1software-application-development-part-1internet-of-thingsbusiness-process-modelingdatabase-developmentsoftware-testing-and-verificationsystem-administrationproject-management
- Исходные учебные материалы хранятся в
docs/. - Скрипт
npm run content:syncсинхронизируетdocs/->content/. - Во время
npm run buildсинхронизация запускается автоматически (prebuild). - Навигация, карточки разделов и статические страницы строятся из
content/.
- Next.js 14 (App Router, static export в production)
- React 18 + TypeScript
- Tailwind CSS
- MDX (
next-mdx-remote,remark-gfm,rehype-slug) - Shiki
- Production:
https://minaledm.github.io/StackMIREA/
npm ci
npm run devOpen http://localhost:3000.
Требование: Node.js >= 20 (см. engines в package.json).
npm run dev— локальная разработкаnpm run build— production build (в production режиме экспортирует статический сайт вout/)npm run start— локальный запуск собранного статическогоout/на:3000npm run content:sync— синхронизацияdocs/->content/npm run lint— проверка ESLintnpm run typecheck— проверка TypeScriptnpm run export— информационный скрипт (экспорт выполняется внутриnpm run build)
app/
components/
content/
docs/
lib/
public/
resources/
scripts/
styles/
.github/workflows/
Ключевые директории:
app/- маршруты и страницы (главная, docs, authors).components/- layout и UI-компоненты.docs/- исходные материалы, которые редактируются вручную.content/- синхронизированный слой, используемый рантаймом/билдом.resources/- дополнительные датасеты и файлы для практик.scripts/sync-content.mjs- pipeline синхронизации контента.
Деплой выполняется GitHub Actions workflow:
.github/workflows/deploy-gh-pages.yml
Требования в репозитории:
Settings->PagesBuild and deployment->Source: GitHub Actions
После push в main публикуется обновленная статическая версия сайта.
- Добавьте или обновите материал в
docs/<track>/.... - Запустите
npm run content:sync. - Проверьте проект:
npm run lintиnpm run typecheck. - Откройте Pull Request.
Для отображения автора материала можно указать в frontmatter поле author (GitHub login или ссылка на профиль).
Issue и PR приветствуются. Для крупных изменений лучше сначала открыть issue с описанием идеи.
- Код проекта: MIT - see LICENSE.
- Контент сайта (документация, статьи, учебные материалы): CC-BY-NC-SA-4.0 - see CC-BY-NC-SA-4.0.