Projects

My University Server

Ruby on Rails backend aggregating class schedules from 34+ Ukrainian universities.

24 December 2018
Backend

My University Server — backend for the My University iOS app powered by Ruby on Rails. Aggregates class schedules from 34+ Ukrainian universities via university-specific import services, exposes a REST API for the mobile app, and provides an admin dashboard for data management.

Technical info:

  • Ruby on Rails 7.0 with Ruby 3.1, MVC architecture (~256 Ruby source files)
  • PostgreSQL database with 10+ models — University, Teacher, Group, Lesson, Auditorium, Discipline, Building, Department, Faculty, Speciality
  • REST API (/api/v1/) with JBuilder JSON responses — endpoints for universities, teachers, groups, auditoriums, buildings, and lessons
  • 37 service classes for university-specific schedule import and parsing from external APIs
  • 37 background jobs with Whenever cron scheduling for automated data imports
  • ActiveAdmin dashboard with role-based access control (admin, reader, editor)
  • Devise for authentication, Pundit for authorization policies
  • Ahoy for event tracking and analytics, Blazer for SQL query dashboard
  • FriendlyID for SEO-friendly URL slugs, Sitemap Generator for XML sitemaps
  • Hotwire (Turbo + Stimulus) for frontend, Import Maps for JavaScript
My University landing page