Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Jlychee/Blueprint

Repository files navigation

Blueprint logo

Blueprint

Platform Language Frontend Database Monitoring Status

Blueprint — платформа для хранения и поиска студенческих проектов прошлых лет с материалами по всем этапам разработки.

Этот репозиторий содержит веб-платформу, созданную в рамках курсов «Полезное приложение» и «Проектный практикум». Проект помогает студентам быстрее стартовать работу над своим продуктом, смотреть примеры прошлых лет и ориентироваться в требованиях курса.

Contents

About

Что можно делать в Blueprint:

  • смотреть проекты прошлых лет в одном месте
  • искать проекты по тегам, технологиям и параметрам
  • открывать карточку проекта с описанием и составом команды
  • переходить к материалам проекта: CustDev, MVP, roadmap, описание и ссылки на продукт
  • вдохновляться чужими идеями и проверять, не реализована ли уже похожая

Проектные материалы

Шаги для установки

  1. Склонируйте репозиторий.
  2. Создайте .env на основе файла .env.example.
  3. Заполните переменные окружения для ASP.NET, PostgreSQL и Grafana.
  4. Запустите проект:
    docker compose up -d --build
  5. После запуска будут доступны:
    • backend: http://localhost:8080
    • Prometheus: http://localhost:9090
    • Grafana: http://localhost:3000

Для запуска тестов:

dotnet test

Tech Stack

Frontend

  • HTML
  • CSS
  • JavaScript

Статический фронтенд лежит в Api/wwwroot. Логотип и графические ресурсы лежат в Api/wwwroot/resources/images.

Backend

  • C#
  • ASP.NET Core Web API
  • MediatR
  • Swagger

Основные ручки проекта:

  • GET /api/projects/projects
  • GET /api/projects/project/{id}
  • GET /api/projects/tags
  • HEAD /api/metrics/rebuild_open_cohorts_retention

Database

  • PostgreSQL
  • Entity Framework Core

В проекте есть сущности для проектов, участников, тегов, файлов и таблиц метрик.

Parsing and data

  • CSV parser для загрузки проектов из таблицы
  • seed data для тегов и типов тегов

Monitoring

  • OpenTelemetry
  • Prometheus
  • Grafana

DevOps

  • Docker
  • Docker Compose
  • Nginx
  • GitHub Actions

Tests

  • NUnit

Архитектура

Основные части решения:

  • Api — ASP.NET Core приложение, контроллеры и статические файлы фронтенда
  • Infrastructure — доступ к данным, репозитории, парсеры, конфигурация БД
  • Client.Models — DTO и общие модели
  • Core — доменная и прикладная логика
  • Test — тесты парсера и метрик

Monitoring

В проекте предусмотрен мониторинг пользовательской активности и технических метрик.

Используется связка Prometheus + Grafana, а также отдельная логика для метрик просмотров и retention. Для деплоя и проксирования запросов используется Nginx.

Authors

  • Арина Кискина — дизайн, верстка, пользовательский интерфейс, страницы каталога и проекта, интеграция фронта с API
  • Артем Скворок — основные project API-ручки, хендлеры запросов, обработка ошибок, работа с backend-логикой
  • Илья Котов — метрики, cookie/session tracking, metric backend, CSV-парсер таблицы проектов, интеграция аналитики в flow просмотра
  • Екатерина Толканюк — схема БД, сущности, миграции, сиды, теги и общая интеграция серверной части
  • Казанцева Илона — деплой, nginx, HTTPS, Docker и CI/CD

About

Платформа для хранения и поиска студенческих проектов fiit прошлых лет с примерами материалов, технологий и этапов разработки

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

Contributors

AltStyle によって変換されたページ (->オリジナル) /