diff --git a/source/Cosmos.VS.ProjectSystem/ProjectTemplates/FSharp/Cosmos/Cosmos Kernel/FSharpProject.fsproj b/source/Cosmos.VS.ProjectSystem/ProjectTemplates/FSharp/Cosmos/Cosmos Kernel/FSharpProject.fsproj
new file mode 100644
index 000000000..43aa7f7b1
--- /dev/null
+++ b/source/Cosmos.VS.ProjectSystem/ProjectTemplates/FSharp/Cosmos/Cosmos Kernel/FSharpProject.fsproj
@@ -0,0 +1,36 @@
+
+
+
+ netstandard2.0
+
+
+
+ elf
+ False
+ Source
+ User
+ False
+ False
+ ISO
+ Pipe: Cosmos\Serial
+ True
+ MethodFooters
+ False
+ Serial: COM1
+ VMware
+ VMware
+ Use VMware Player or Workstation to deploy and debug.
+ 192.168.0.8
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/source/Cosmos.VS.ProjectSystem/ProjectTemplates/FSharp/Cosmos/Cosmos Kernel/FSharpProject.vstemplate b/source/Cosmos.VS.ProjectSystem/ProjectTemplates/FSharp/Cosmos/Cosmos Kernel/FSharpProject.vstemplate
new file mode 100644
index 000000000..5fc250dfe
--- /dev/null
+++ b/source/Cosmos.VS.ProjectSystem/ProjectTemplates/FSharp/Cosmos/Cosmos Kernel/FSharpProject.vstemplate
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+ FSharp
+ true
+ CosmosKernel
+ true
+ true
+ true
+
+
+
+
+ Kernel.fs
+
+
+
+
diff --git a/source/Cosmos.VS.ProjectSystem/ProjectTemplates/FSharp/Cosmos/Cosmos Kernel/Kernel.fs b/source/Cosmos.VS.ProjectSystem/ProjectTemplates/FSharp/Cosmos/Cosmos Kernel/Kernel.fs
new file mode 100644
index 000000000..aec3a9bef
--- /dev/null
+++ b/source/Cosmos.VS.ProjectSystem/ProjectTemplates/FSharp/Cosmos/Cosmos Kernel/Kernel.fs
@@ -0,0 +1,12 @@
+namespace $safeprojectname$
+
+open System
+
+type Kernel() =
+ inherit Cosmos.System.Kernel()
+ override u.BeforeRun() = (Console.WriteLine("Cosmos booted successfully. Type a line of text to get it echoed back.");)
+ override u.Run() =
+ Console.Write("Input: ");
+ let input = Console.ReadLine();
+ Console.Write("Text typed: ");
+ Console.WriteLine(input);
diff --git a/source/Cosmos.VS.ProjectSystem/ProjectTemplates/VisualBasic/Cosmos/Cosmos Kernel/VisualBasicProject.vstemplate b/source/Cosmos.VS.ProjectSystem/ProjectTemplates/VisualBasic/Cosmos/Cosmos Kernel/VisualBasicProject.vstemplate
index d53d5dc4f..35addb746 100644
--- a/source/Cosmos.VS.ProjectSystem/ProjectTemplates/VisualBasic/Cosmos/Cosmos Kernel/VisualBasicProject.vstemplate
+++ b/source/Cosmos.VS.ProjectSystem/ProjectTemplates/VisualBasic/Cosmos/Cosmos Kernel/VisualBasicProject.vstemplate
@@ -13,7 +13,7 @@
-
+
Kernel.vb
diff --git a/source/Cosmos.VS.ProjectSystem/Resources/FSharpProject.ico b/source/Cosmos.VS.ProjectSystem/Resources/FSharpProject.ico
new file mode 100644
index 000000000..fcdc40183
Binary files /dev/null and b/source/Cosmos.VS.ProjectSystem/Resources/FSharpProject.ico differ
diff --git a/source/Cosmos.VS.ProjectSystem/VSPackage.resx b/source/Cosmos.VS.ProjectSystem/VSPackage.resx
index 8f64fe96f..40de1cebc 100644
--- a/source/Cosmos.VS.ProjectSystem/VSPackage.resx
+++ b/source/Cosmos.VS.ProjectSystem/VSPackage.resx
@@ -136,4 +136,13 @@
Resources\VisualBasicProject.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
-
+
+ Cosmos Kernel
+
+
+ A project for creating an F# Cosmos Kernel.
+
+
+ Resources\FSharpProject.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
\ No newline at end of file