Ruby on Rails 6 User Management app

Sign in with Github Sign in with Google_oauth2 Sign in with Facebook Sign in with Twitter

Core features:

Authentication & Authorization

  • Basic authorization via email (Devise)
  • Social log in via Google
  • Social log in via Facebook
  • Social log in via Twitter
  • Social log in via Github
  • Devise confirmable
  • Devise trackable
  • Devise lockable
  • Devise invitable
  • Banning users
  • Deleting users
  • Editing users
  • Managing user roles (admin, teacher, student) without any gems
  • Role-based access to different features (example: only admin can ban a user) without any g ems
  • Blocking bot registrations
  • Sending transactional emails in production (Amazon SES)

Lesson & Attendance Management

  • Create courses
  • Add student enrollments to courses
  • Generate lessons based on schedule
  • View all lessons and attendances in a calender
  • Track lesson status (planned/confirmed/cancelled)
  • Track student attendances for lessons (attended/not_attended)
  • Calculate student expences based on attendance
  • Calculate teacher earnings based on lessons conducted