+
"Student Home Page"
+
"This is just a placeholder for now. We'll show some redirect buttons."
+
+ }
+}
diff --git a/src/pages/student/mod.rs b/src/pages/student/mod.rs
new file mode 100644
index 0000000..83765aa
--- /dev/null
+++ b/src/pages/student/mod.rs
@@ -0,0 +1,7 @@
+mod shell;
+mod home_page;
+mod demographics_page;
+
+pub use shell::*;
+pub use home_page::*;
+pub use demographics_page::*;
\ No newline at end of file
diff --git a/src/pages/student/shell.rs b/src/pages/student/shell.rs
new file mode 100644
index 0000000..9a12f13
--- /dev/null
+++ b/src/pages/student/shell.rs
@@ -0,0 +1,20 @@
+use leptos::prelude::*;
+use crate::common::TabInfo;
+use crate::components::{Banner, TabSidebarList};
+use crate::components::login::StudentLoginContext;
+
+#[component]
+pub fn StudentShell() -> impl IntoView {
+ // Create login context
+ view! {
+