diff --git a/src/homework/__init__.py b/src/homework/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/src/homework/admin.py b/src/homework/admin.py
new file mode 100644
index 0000000000000000000000000000000000000000..8c38f3f3dad51e4585f3984282c2a4bec5349c1e
--- /dev/null
+++ b/src/homework/admin.py
@@ -0,0 +1,3 @@
+from django.contrib import admin
+
+# Register your models here.
diff --git a/src/homework/apps.py b/src/homework/apps.py
new file mode 100644
index 0000000000000000000000000000000000000000..98901a15dfa44243cd9894dc15652b9634c738fd
--- /dev/null
+++ b/src/homework/apps.py
@@ -0,0 +1,5 @@
+from django.apps import AppConfig
+
+
+class HomeworkConfig(AppConfig):
+    name = 'homework'
diff --git a/src/homework/migrations/0001_initial.py b/src/homework/migrations/0001_initial.py
new file mode 100644
index 0000000000000000000000000000000000000000..524ab9f6d3f30587c7cc28b3bcd15448db8b6077
--- /dev/null
+++ b/src/homework/migrations/0001_initial.py
@@ -0,0 +1,53 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.5 on 2017-11-11 14:39
+from __future__ import unicode_literals
+
+from django.conf import settings
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    initial = True
+
+    dependencies = [
+        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='Solution',
+            fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('date', models.DateTimeField()),
+                ('ready', models.BooleanField()),
+                ('files', models.FileField(upload_to='')),
+            ],
+        ),
+        migrations.CreateModel(
+            name='Student',
+            fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('homework', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='homework.Solution')),
+                ('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
+            ],
+        ),
+        migrations.CreateModel(
+            name='Task',
+            fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('title', models.CharField(max_length=150)),
+                ('date', models.DateTimeField()),
+                ('deadline', models.DateTimeField()),
+                ('text', models.TextField()),
+                ('files', models.FileField(upload_to='')),
+                ('author', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
+            ],
+        ),
+        migrations.AddField(
+            model_name='solution',
+            name='task',
+            field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='homework.Task'),
+        ),
+    ]
diff --git a/src/homework/migrations/__init__.py b/src/homework/migrations/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/src/homework/models.py b/src/homework/models.py
new file mode 100644
index 0000000000000000000000000000000000000000..a5192a8b87bb9e57fae6d7cf35d8e08b208f3358
--- /dev/null
+++ b/src/homework/models.py
@@ -0,0 +1,24 @@
+from django.db import models
+from django.contrib.auth.models import User
+
+
+class Task(models.Model):
+    title = models.CharField(max_length=150)
+    date = models.DateTimeField()
+    deadline = models.DateTimeField()
+    text = models.TextField()
+    author = models.OneToOneField(User)
+    files = models.FileField()
+
+
+# NormĂĄlisabb angol nevet adni ĂŠr!!
+class Solution(models.Model):
+    task = models.ForeignKey(Task, on_delete=models.CASCADE)
+    date = models.DateTimeField()
+    ready = models.BooleanField()
+    files = models.FileField()
+
+
+class Student(models.Model):
+    user = models.OneToOneField(User)
+    homework = models.ForeignKey(Solution,  on_delete=models.CASCADE)
diff --git a/src/homework/serializers.py b/src/homework/serializers.py
new file mode 100644
index 0000000000000000000000000000000000000000..3e2500d68884b532f7624310bab1f54bf5615140
--- /dev/null
+++ b/src/homework/serializers.py
@@ -0,0 +1,20 @@
+from rest_framework import serializers
+from . import models
+
+
+class TaskSerializer(serializers.ModelSerializer):
+    class Meta:
+        model = models.Task
+        fields = '__all__'
+
+
+class SolutionSerializer(serializers.ModelSerializer):
+    class Meta:
+        model = models.Solution
+        fields = '__all__'
+
+
+class StudentSerializer(serializers.ModelSerializer):
+    class Meta:
+        model = models.Student
+        fields = '__all__'
diff --git a/src/homework/tests.py b/src/homework/tests.py
new file mode 100644
index 0000000000000000000000000000000000000000..7ce503c2dd97ba78597f6ff6e4393132753573f6
--- /dev/null
+++ b/src/homework/tests.py
@@ -0,0 +1,3 @@
+from django.test import TestCase
+
+# Create your tests here.
diff --git a/src/homework/urls.py b/src/homework/urls.py
new file mode 100644
index 0000000000000000000000000000000000000000..1fe81c80ffd12d0934235950a68785ae9b67bcfb
--- /dev/null
+++ b/src/homework/urls.py
@@ -0,0 +1,10 @@
+from rest_framework import routers
+from . import views
+
+router = routers.DefaultRouter()
+router.register(r'tasks', views.TasksViewSet)
+router.register(r'solutions', views.SolutionViewSet)
+router.register(r'students', views.StudentViewSet)
+
+app_name = 'homework'
+urlpatterns = router.urls
diff --git a/src/homework/views.py b/src/homework/views.py
new file mode 100644
index 0000000000000000000000000000000000000000..d3429a7528e1c87a33309a7d4e1935a2d12d2faa
--- /dev/null
+++ b/src/homework/views.py
@@ -0,0 +1,19 @@
+from rest_framework import viewsets
+
+from . import serializers
+from . import models
+
+
+class TasksViewSet(viewsets.ModelViewSet):
+    serializer_class = serializers.TaskSerializer
+    queryset = models.Task.objects.all()
+
+
+class SolutionViewSet(viewsets.ModelViewSet):
+    serializer_class = serializers.SolutionSerializer
+    queryset = models.Solution.objects.all()
+
+
+class StudentViewSet(viewsets.ModelViewSet):
+    serializer_class = serializers.StudentSerializer
+    queryset = models.Student.objects.all()
diff --git a/src/kszkepzes/settings.py b/src/kszkepzes/settings.py
index 98e41eb55d708a004af6ab85ac3810c91d0f8b61..3128c9d12e655bf39779c869a6b7dbd8f10f8a8d 100644
--- a/src/kszkepzes/settings.py
+++ b/src/kszkepzes/settings.py
@@ -41,6 +41,7 @@ INSTALLED_APPS = [
     'rest_framework',
     'social_django',
     'authsch',
+    'homework',
 ]
 
 MIDDLEWARE = [
diff --git a/src/kszkepzes/urls.py b/src/kszkepzes/urls.py
index 5a143373854dc913626f7e7bfb539826c5cbe465..16da3fbcb257357a307f9ec7a4b8ef3b52688453 100644
--- a/src/kszkepzes/urls.py
+++ b/src/kszkepzes/urls.py
@@ -19,4 +19,5 @@ from django.contrib import admin
 urlpatterns = [
     url(r'^admin/', admin.site.urls),
     url('', include('social_django.urls', namespace='social')),
+    url(r'^api/v1/homework/', include('homework.urls')),
 ]