Index: backend/auth_form/serializers.py
===================================================================
--- backend/auth_form/serializers.py	(revision 33466585bfcdf4eb920a5eb2789b27c7eec93869)
+++ backend/auth_form/serializers.py	(revision 67110f7e948d34373d82e0ea0c0d5367e4395627)
@@ -1,8 +1,16 @@
+import re
 from django.contrib.auth import get_user_model, authenticate
 from rest_framework import serializers
 from django.contrib.auth.password_validation import validate_password
 from rest_framework.exceptions import AuthenticationFailed
+from rest_framework_simplejwt.serializers import TokenObtainPairSerialzer
 
 User = get_user_model()
+
+class CustomTokenObtainPairSerializer(TokenObtainPairSerialzer):
+    def validate(self, attrs):
+        data = super().validate(attrs)
+        data['user_type'] = self.user.user_type
+        return data
 
 class RegistrationSerializer(serializers.ModelSerializer):
@@ -15,4 +23,6 @@
     
     def validate(self, data):
+        if not re.match(r"^[^@]+@(students\.)?finki\.ukim\.mk$", data['email']):
+            raise serializers.ValidationError("Email must be a valid FINKI email address")
         if data['password'] != data['confirm_password']:
             raise serializers.ValidationError("Passwords do not match")
Index: backend/auth_form/urls.py
===================================================================
--- backend/auth_form/urls.py	(revision 33466585bfcdf4eb920a5eb2789b27c7eec93869)
+++ backend/auth_form/urls.py	(revision 67110f7e948d34373d82e0ea0c0d5367e4395627)
@@ -1,6 +1,9 @@
 from django.urls import path
 from .views import RegisterView, LoginView
+from rest_framework_simplejwt.views import TokenObtainPairView
+from .serializers import CustomTokenObtainPairSerializer
+
 urlpatterns = [
     path('register/', RegisterView.as_view(), name='register'),
-    path('login/', LoginView.as_view(), name='login')
+    path('login/', TokenObtainPairView.as_view(serializer_class=CustomTokenObtainPairSerializer), name='token_obtain_pair')
 ]
Index: ontend/src/components/SubjectCatalog/RegisterPage.tsx
===================================================================
--- frontend/src/components/SubjectCatalog/RegisterPage.tsx	(revision 33466585bfcdf4eb920a5eb2789b27c7eec93869)
+++ 	(revision )
@@ -1,3 +1,0 @@
-import React, { useState } from 'react';
-import { useNavigate } from 'react-router-dom';
-
Index: frontend/src/pages/Login.tsx
===================================================================
--- frontend/src/pages/Login.tsx	(revision 33466585bfcdf4eb920a5eb2789b27c7eec93869)
+++ frontend/src/pages/Login.tsx	(revision 67110f7e948d34373d82e0ea0c0d5367e4395627)
@@ -1,11 +1,3 @@
 import React from 'react';
-import LoginPage from '../components/LoginPage';
 
-const Register: React.FC = () => {
-    return (
-        <div>
-            <LoginPage />
-        </div>
-    )
-}
-export default Register;
+
Index: frontend/src/pages/Register.tsx
===================================================================
--- frontend/src/pages/Register.tsx	(revision 33466585bfcdf4eb920a5eb2789b27c7eec93869)
+++ frontend/src/pages/Register.tsx	(revision 67110f7e948d34373d82e0ea0c0d5367e4395627)
@@ -1,9 +1,8 @@
 import React from 'react';
-import RegisterPage from '../components/RegisterPage';
 
 const Register: React.FC = () => {
     return (
         <div>
-            <RegisterPage />
+            
         </div>
     )
