diff --git a/Website/api/models.py b/Website/api/models.py
index 8481f53..cd29952 100644
--- a/Website/api/models.py
+++ b/Website/api/models.py
@@ -1,5 +1,6 @@
 from django.db import models
 from django.contrib.auth.models import User
+import secrets
 
 
 
@@ -21,9 +22,10 @@ class Student(models.Model):
 
 class Class(models.Model):
     name = models.CharField(primary_key=True, max_length=100)
+    id = models.CharField(max_length=8, blank=True, null=True)
     description = models.CharField(default="Class Description", max_length=500)
     repo=models.URLField(default="", blank=True)
-    path=models.CharField(max_length=100, default="")
+    path=models.CharField(blank=True, max_length=100, default="")
     assignments=models.TextField(default="", blank=True)
     default_file=models.CharField(max_length=100, default="", blank=True)
     confirmed=models.ManyToManyField(Student, blank=True, related_name='confirmed')
@@ -32,6 +34,12 @@ class Class(models.Model):
     # assignments = models.ManyToManyField(Assignment, default="")
     # default_file = models.ManyToManyField(DefFiles)
     def save(self, *args, **kwargs):
+        id = self.id
+        if not id:
+            id = secrets.token_urlsafe()[:8].lower()
+        while Class.objects.filter(id=id).exclude(pk=self.pk).exists():
+            id = sercrets.token_urlsafe()[:8].lower()
+        self.id = id
         return super(Class, self).save(*args, **kwargs)
 
     def __str__(self):
@@ -55,7 +63,6 @@ class Teacher(models.Model):
 
 class Assignment(models.Model):
     owner = models.ForeignKey('auth.User', related_name='assignments', on_delete=models.CASCADE)
-
     name=models.CharField(max_length=100, primary_key=True)
     due_date=models.DateTimeField()
     # files = models.ManyToManyField(DefFiles)
diff --git a/Website/skoolos/templates/skoolos/home.html b/Website/skoolos/templates/skoolos/home.html
index 621c328..d6e5432 100644
--- a/Website/skoolos/templates/skoolos/home.html
+++ b/Website/skoolos/templates/skoolos/home.html
@@ -3,7 +3,7 @@
 <div class="content-section">
   {% for class in classes %}
     <div class="card-columns">
-      <a class="card" href="#" style="text-decoration: none;">
+      <a class="card" href="/class/{{ class.pk }}" style="text-decoration: none;">
         <div class="card-body">
           <h5 class="card-title">{{ class.name }}</h5>
           <p class="card-text">{{ class.description }}</p>
diff --git a/Website/skoolos/urls.py b/Website/skoolos/urls.py
index a8ffe34..182fea5 100644
--- a/Website/skoolos/urls.py
+++ b/Website/skoolos/urls.py
@@ -5,5 +5,6 @@ from . import views
 # Additionally, we include login URLs for the browsable API.
 urlpatterns = [
     path('', views.home, name='home'),
-    path('profile/', views.profile, name='profile')
+    path('profile/', views.profile, name='profile'),
+    path("class/<int:id>", views.classDetail, name="class"),
 ]
diff --git a/Website/skoolos/views.py b/Website/skoolos/views.py
index b654c11..2748b71 100644
--- a/Website/skoolos/views.py
+++ b/Website/skoolos/views.py
@@ -1,7 +1,8 @@
-from django.shortcuts import render
+from django.shortcuts import render, redirect
 from django.contrib.auth.decorators import login_required
+from django.views.generic import ListView
 
-from api.models import Student, Teacher
+from api.models import Student, Teacher, Class, Assignment
 
 # Create your views here.
 
@@ -24,3 +25,7 @@ def home (request):
 @login_required()
 def profile (request):
     pass
+
+def classDetail (request, id):
+    classObj = Class.objects.get(id=id)
+    return redirect('/')