diff --git a/packages/create-llama/templates/engines/context/constants.mjs b/packages/create-llama/templates/components/engines/context/constants.mjs
similarity index 100%
rename from packages/create-llama/templates/engines/context/constants.mjs
rename to packages/create-llama/templates/components/engines/context/constants.mjs
diff --git a/packages/create-llama/templates/engines/context/generate.mjs b/packages/create-llama/templates/components/engines/context/generate.mjs
similarity index 100%
rename from packages/create-llama/templates/engines/context/generate.mjs
rename to packages/create-llama/templates/components/engines/context/generate.mjs
diff --git a/packages/create-llama/templates/engines/context/index.ts b/packages/create-llama/templates/components/engines/context/index.ts
similarity index 100%
rename from packages/create-llama/templates/engines/context/index.ts
rename to packages/create-llama/templates/components/engines/context/index.ts
diff --git a/packages/create-llama/templates/engines/simple/index.ts b/packages/create-llama/templates/components/engines/simple/index.ts
similarity index 100%
rename from packages/create-llama/templates/engines/simple/index.ts
rename to packages/create-llama/templates/components/engines/simple/index.ts
diff --git a/packages/create-llama/templates/ui/html/chat/chat-avatar.tsx b/packages/create-llama/templates/components/ui/html/chat/chat-avatar.tsx
similarity index 100%
rename from packages/create-llama/templates/ui/html/chat/chat-avatar.tsx
rename to packages/create-llama/templates/components/ui/html/chat/chat-avatar.tsx
diff --git a/packages/create-llama/templates/ui/html/chat/chat-input.tsx b/packages/create-llama/templates/components/ui/html/chat/chat-input.tsx
similarity index 100%
rename from packages/create-llama/templates/ui/html/chat/chat-input.tsx
rename to packages/create-llama/templates/components/ui/html/chat/chat-input.tsx
diff --git a/packages/create-llama/templates/ui/html/chat/chat-item.tsx b/packages/create-llama/templates/components/ui/html/chat/chat-item.tsx
similarity index 100%
rename from packages/create-llama/templates/ui/html/chat/chat-item.tsx
rename to packages/create-llama/templates/components/ui/html/chat/chat-item.tsx
diff --git a/packages/create-llama/templates/ui/html/chat/chat-messages.tsx b/packages/create-llama/templates/components/ui/html/chat/chat-messages.tsx
similarity index 100%
rename from packages/create-llama/templates/ui/html/chat/chat-messages.tsx
rename to packages/create-llama/templates/components/ui/html/chat/chat-messages.tsx
diff --git a/packages/create-llama/templates/ui/html/chat/index.ts b/packages/create-llama/templates/components/ui/html/chat/index.ts
similarity index 100%
rename from packages/create-llama/templates/ui/html/chat/index.ts
rename to packages/create-llama/templates/components/ui/html/chat/index.ts
diff --git a/packages/create-llama/templates/ui/shadcn/button.tsx b/packages/create-llama/templates/components/ui/shadcn/button.tsx
similarity index 100%
rename from packages/create-llama/templates/ui/shadcn/button.tsx
rename to packages/create-llama/templates/components/ui/shadcn/button.tsx
diff --git a/packages/create-llama/templates/ui/shadcn/chat/chat-avatar.tsx b/packages/create-llama/templates/components/ui/shadcn/chat/chat-avatar.tsx
similarity index 100%
rename from packages/create-llama/templates/ui/shadcn/chat/chat-avatar.tsx
rename to packages/create-llama/templates/components/ui/shadcn/chat/chat-avatar.tsx
diff --git a/packages/create-llama/templates/ui/shadcn/chat/chat-input.tsx b/packages/create-llama/templates/components/ui/shadcn/chat/chat-input.tsx
similarity index 100%
rename from packages/create-llama/templates/ui/shadcn/chat/chat-input.tsx
rename to packages/create-llama/templates/components/ui/shadcn/chat/chat-input.tsx
diff --git a/packages/create-llama/templates/ui/shadcn/chat/chat-message.tsx b/packages/create-llama/templates/components/ui/shadcn/chat/chat-message.tsx
similarity index 100%
rename from packages/create-llama/templates/ui/shadcn/chat/chat-message.tsx
rename to packages/create-llama/templates/components/ui/shadcn/chat/chat-message.tsx
diff --git a/packages/create-llama/templates/ui/shadcn/chat/chat-messages.tsx b/packages/create-llama/templates/components/ui/shadcn/chat/chat-messages.tsx
similarity index 100%
rename from packages/create-llama/templates/ui/shadcn/chat/chat-messages.tsx
rename to packages/create-llama/templates/components/ui/shadcn/chat/chat-messages.tsx
diff --git a/packages/create-llama/templates/ui/shadcn/chat/index.ts b/packages/create-llama/templates/components/ui/shadcn/chat/index.ts
similarity index 100%
rename from packages/create-llama/templates/ui/shadcn/chat/index.ts
rename to packages/create-llama/templates/components/ui/shadcn/chat/index.ts
diff --git a/packages/create-llama/templates/ui/shadcn/input.tsx b/packages/create-llama/templates/components/ui/shadcn/input.tsx
similarity index 100%
rename from packages/create-llama/templates/ui/shadcn/input.tsx
rename to packages/create-llama/templates/components/ui/shadcn/input.tsx
diff --git a/packages/create-llama/templates/ui/shadcn/lib/utils.ts b/packages/create-llama/templates/components/ui/shadcn/lib/utils.ts
similarity index 100%
rename from packages/create-llama/templates/ui/shadcn/lib/utils.ts
rename to packages/create-llama/templates/components/ui/shadcn/lib/utils.ts
diff --git a/packages/create-llama/templates/index.ts b/packages/create-llama/templates/index.ts
index 90d0b808f6054b5b67e9b8489f2f93e2a56d1c0e..7e23f793493a7034bfdca3956ea5443b2cc30fe4 100644
--- a/packages/create-llama/templates/index.ts
+++ b/packages/create-llama/templates/index.ts
@@ -30,7 +30,7 @@ export const installTemplate = async ({
    * Copy the template files to the target directory.
    */
   console.log("\nInitializing project with template:", template, "\n");
-  const templatePath = path.join(__dirname, template, framework);
+  const templatePath = path.join(__dirname, "types", template, framework);
   const copySource = ["**"];
   if (!eslint) copySource.push("!eslintrc.json");
 
@@ -59,9 +59,10 @@ export const installTemplate = async ({
    * Copy the selected chat engine files to the target directory and reference it.
    */
   let relativeEngineDestPath;
+  const compPath = path.join(__dirname, "components");
   if (framework === "express" || framework === "nextjs") {
     console.log("\nUsing chat engine:", engine, "\n");
-    const enginePath = path.join(__dirname, "engines", engine);
+    const enginePath = path.join(compPath, "engines", engine);
     relativeEngineDestPath =
       framework === "nextjs"
         ? path.join("app", "api", "chat")
@@ -88,7 +89,7 @@ export const installTemplate = async ({
    */
   if (framework === "nextjs") {
     console.log("\nUsing UI:", ui, "\n");
-    const uiPath = path.join(__dirname, "ui", ui);
+    const uiPath = path.join(compPath, "ui", ui);
     const componentsPath = path.join("app", "components");
     await copy("**", path.join(root, componentsPath, "ui"), {
       parents: true,
@@ -188,7 +189,7 @@ export const installPythonTemplate = async ({
   framework,
 }: InstallPythonTemplateArgs) => {
   console.log("\nInitializing Python project with template:", template, "\n");
-  const templatePath = path.join(__dirname, template, framework);
+  const templatePath = path.join(__dirname, "types", template, framework);
   await copy("**", root, {
     parents: true,
     cwd: templatePath,
diff --git a/packages/create-llama/templates/simple/express/README-template.md b/packages/create-llama/templates/types/simple/express/README-template.md
similarity index 100%
rename from packages/create-llama/templates/simple/express/README-template.md
rename to packages/create-llama/templates/types/simple/express/README-template.md
diff --git a/packages/create-llama/templates/simple/express/eslintrc.json b/packages/create-llama/templates/types/simple/express/eslintrc.json
similarity index 100%
rename from packages/create-llama/templates/simple/express/eslintrc.json
rename to packages/create-llama/templates/types/simple/express/eslintrc.json
diff --git a/packages/create-llama/templates/simple/express/index.ts b/packages/create-llama/templates/types/simple/express/index.ts
similarity index 100%
rename from packages/create-llama/templates/simple/express/index.ts
rename to packages/create-llama/templates/types/simple/express/index.ts
diff --git a/packages/create-llama/templates/simple/express/package.json b/packages/create-llama/templates/types/simple/express/package.json
similarity index 100%
rename from packages/create-llama/templates/simple/express/package.json
rename to packages/create-llama/templates/types/simple/express/package.json
diff --git a/packages/create-llama/templates/simple/express/src/controllers/chat.controller.ts b/packages/create-llama/templates/types/simple/express/src/controllers/chat.controller.ts
similarity index 100%
rename from packages/create-llama/templates/simple/express/src/controllers/chat.controller.ts
rename to packages/create-llama/templates/types/simple/express/src/controllers/chat.controller.ts
diff --git a/packages/create-llama/templates/simple/express/src/routes/chat.route.ts b/packages/create-llama/templates/types/simple/express/src/routes/chat.route.ts
similarity index 100%
rename from packages/create-llama/templates/simple/express/src/routes/chat.route.ts
rename to packages/create-llama/templates/types/simple/express/src/routes/chat.route.ts
diff --git a/packages/create-llama/templates/simple/express/tsconfig.json b/packages/create-llama/templates/types/simple/express/tsconfig.json
similarity index 100%
rename from packages/create-llama/templates/simple/express/tsconfig.json
rename to packages/create-llama/templates/types/simple/express/tsconfig.json
diff --git a/packages/create-llama/templates/simple/fastapi/README-template.md b/packages/create-llama/templates/types/simple/fastapi/README-template.md
similarity index 100%
rename from packages/create-llama/templates/simple/fastapi/README-template.md
rename to packages/create-llama/templates/types/simple/fastapi/README-template.md
diff --git a/packages/create-llama/templates/simple/fastapi/app/__init__.py b/packages/create-llama/templates/types/simple/fastapi/app/__init__.py
similarity index 100%
rename from packages/create-llama/templates/simple/fastapi/app/__init__.py
rename to packages/create-llama/templates/types/simple/fastapi/app/__init__.py
diff --git a/packages/create-llama/templates/simple/fastapi/app/api/__init__.py b/packages/create-llama/templates/types/simple/fastapi/app/api/__init__.py
similarity index 100%
rename from packages/create-llama/templates/simple/fastapi/app/api/__init__.py
rename to packages/create-llama/templates/types/simple/fastapi/app/api/__init__.py
diff --git a/packages/create-llama/templates/simple/fastapi/app/api/routers/__init__.py b/packages/create-llama/templates/types/simple/fastapi/app/api/routers/__init__.py
similarity index 100%
rename from packages/create-llama/templates/simple/fastapi/app/api/routers/__init__.py
rename to packages/create-llama/templates/types/simple/fastapi/app/api/routers/__init__.py
diff --git a/packages/create-llama/templates/simple/fastapi/app/api/routers/chat.py b/packages/create-llama/templates/types/simple/fastapi/app/api/routers/chat.py
similarity index 100%
rename from packages/create-llama/templates/simple/fastapi/app/api/routers/chat.py
rename to packages/create-llama/templates/types/simple/fastapi/app/api/routers/chat.py
diff --git a/packages/create-llama/templates/simple/fastapi/app/utils/__init__.py b/packages/create-llama/templates/types/simple/fastapi/app/utils/__init__.py
similarity index 100%
rename from packages/create-llama/templates/simple/fastapi/app/utils/__init__.py
rename to packages/create-llama/templates/types/simple/fastapi/app/utils/__init__.py
diff --git a/packages/create-llama/templates/simple/fastapi/app/utils/index.py b/packages/create-llama/templates/types/simple/fastapi/app/utils/index.py
similarity index 100%
rename from packages/create-llama/templates/simple/fastapi/app/utils/index.py
rename to packages/create-llama/templates/types/simple/fastapi/app/utils/index.py
diff --git a/packages/create-llama/templates/simple/fastapi/data/brk-2022.pdf b/packages/create-llama/templates/types/simple/fastapi/data/brk-2022.pdf
similarity index 100%
rename from packages/create-llama/templates/simple/fastapi/data/brk-2022.pdf
rename to packages/create-llama/templates/types/simple/fastapi/data/brk-2022.pdf
diff --git a/packages/create-llama/templates/simple/fastapi/gitignore b/packages/create-llama/templates/types/simple/fastapi/gitignore
similarity index 100%
rename from packages/create-llama/templates/simple/fastapi/gitignore
rename to packages/create-llama/templates/types/simple/fastapi/gitignore
diff --git a/packages/create-llama/templates/simple/fastapi/main.py b/packages/create-llama/templates/types/simple/fastapi/main.py
similarity index 100%
rename from packages/create-llama/templates/simple/fastapi/main.py
rename to packages/create-llama/templates/types/simple/fastapi/main.py
diff --git a/packages/create-llama/templates/simple/fastapi/pyproject.toml b/packages/create-llama/templates/types/simple/fastapi/pyproject.toml
similarity index 100%
rename from packages/create-llama/templates/simple/fastapi/pyproject.toml
rename to packages/create-llama/templates/types/simple/fastapi/pyproject.toml
diff --git a/packages/create-llama/templates/simple/fastapi/tests/__init__.py b/packages/create-llama/templates/types/simple/fastapi/tests/__init__.py
similarity index 100%
rename from packages/create-llama/templates/simple/fastapi/tests/__init__.py
rename to packages/create-llama/templates/types/simple/fastapi/tests/__init__.py
diff --git a/packages/create-llama/templates/simple/nextjs/.env.example b/packages/create-llama/templates/types/simple/nextjs/.env.example
similarity index 100%
rename from packages/create-llama/templates/simple/nextjs/.env.example
rename to packages/create-llama/templates/types/simple/nextjs/.env.example
diff --git a/packages/create-llama/templates/simple/nextjs/README-template.md b/packages/create-llama/templates/types/simple/nextjs/README-template.md
similarity index 100%
rename from packages/create-llama/templates/simple/nextjs/README-template.md
rename to packages/create-llama/templates/types/simple/nextjs/README-template.md
diff --git a/packages/create-llama/templates/simple/nextjs/app/api/chat/route.ts b/packages/create-llama/templates/types/simple/nextjs/app/api/chat/route.ts
similarity index 94%
rename from packages/create-llama/templates/simple/nextjs/app/api/chat/route.ts
rename to packages/create-llama/templates/types/simple/nextjs/app/api/chat/route.ts
index 1d98c832e44c56c645cffce96fa638d9c9522f51..651a020f2f7a83581aa94f8354b64083e7eb2abc 100644
--- a/packages/create-llama/templates/simple/nextjs/app/api/chat/route.ts
+++ b/packages/create-llama/templates/types/simple/nextjs/app/api/chat/route.ts
@@ -1,6 +1,6 @@
 import { ChatMessage, OpenAI } from "llamaindex";
 import { NextRequest, NextResponse } from "next/server";
-import { createChatEngine } from "../../../../../engines/context";
+import { createChatEngine } from "../../../../../../engines/context";
 
 export const runtime = "nodejs";
 export const dynamic = "force-dynamic";
diff --git a/packages/create-llama/templates/simple/nextjs/app/components/chat-section.tsx b/packages/create-llama/templates/types/simple/nextjs/app/components/chat-section.tsx
similarity index 79%
rename from packages/create-llama/templates/simple/nextjs/app/components/chat-section.tsx
rename to packages/create-llama/templates/types/simple/nextjs/app/components/chat-section.tsx
index d4527654177b36fd7bc0d46e2a38677b10bb10c9..70740429b763214291a48963f2578756664ec05a 100644
--- a/packages/create-llama/templates/simple/nextjs/app/components/chat-section.tsx
+++ b/packages/create-llama/templates/types/simple/nextjs/app/components/chat-section.tsx
@@ -2,7 +2,7 @@
 
 import { nanoid } from "nanoid";
 import { useState } from "react";
-import { ChatInput, ChatMessages, Message } from "../../../../ui/html/chat";
+import { ChatInput, ChatMessages, Message } from "../../../../../ui/html/chat";
 
 export default function ChatSection() {
   const [messages, setMessages] = useState<Message[]>([]);
@@ -10,15 +10,18 @@ export default function ChatSection() {
   const [input, setInput] = useState("");
 
   const getAssistantMessage = async (messages: Message[]) => {
-    const response = await fetch(process.env.NEXT_PUBLIC_CHAT_API ?? "/api/chat", {
-      method: "POST",
-      headers: {
-        "Content-Type": "application/json",
+    const response = await fetch(
+      process.env.NEXT_PUBLIC_CHAT_API ?? "/api/chat",
+      {
+        method: "POST",
+        headers: {
+          "Content-Type": "application/json",
+        },
+        body: JSON.stringify({
+          messages,
+        }),
       },
-      body: JSON.stringify({
-        messages,
-      }),
-    });
+    );
     const data = await response.json();
     const assistantMessage = data.result as Message;
     return assistantMessage;
diff --git a/packages/create-llama/templates/simple/nextjs/app/components/header.tsx b/packages/create-llama/templates/types/simple/nextjs/app/components/header.tsx
similarity index 100%
rename from packages/create-llama/templates/simple/nextjs/app/components/header.tsx
rename to packages/create-llama/templates/types/simple/nextjs/app/components/header.tsx
diff --git a/packages/create-llama/templates/simple/nextjs/app/favicon.ico b/packages/create-llama/templates/types/simple/nextjs/app/favicon.ico
similarity index 100%
rename from packages/create-llama/templates/simple/nextjs/app/favicon.ico
rename to packages/create-llama/templates/types/simple/nextjs/app/favicon.ico
diff --git a/packages/create-llama/templates/simple/nextjs/app/globals.css b/packages/create-llama/templates/types/simple/nextjs/app/globals.css
similarity index 100%
rename from packages/create-llama/templates/simple/nextjs/app/globals.css
rename to packages/create-llama/templates/types/simple/nextjs/app/globals.css
diff --git a/packages/create-llama/templates/simple/nextjs/app/layout.tsx b/packages/create-llama/templates/types/simple/nextjs/app/layout.tsx
similarity index 100%
rename from packages/create-llama/templates/simple/nextjs/app/layout.tsx
rename to packages/create-llama/templates/types/simple/nextjs/app/layout.tsx
diff --git a/packages/create-llama/templates/simple/nextjs/app/page.tsx b/packages/create-llama/templates/types/simple/nextjs/app/page.tsx
similarity index 100%
rename from packages/create-llama/templates/simple/nextjs/app/page.tsx
rename to packages/create-llama/templates/types/simple/nextjs/app/page.tsx
diff --git a/packages/create-llama/templates/simple/nextjs/eslintrc.json b/packages/create-llama/templates/types/simple/nextjs/eslintrc.json
similarity index 100%
rename from packages/create-llama/templates/simple/nextjs/eslintrc.json
rename to packages/create-llama/templates/types/simple/nextjs/eslintrc.json
diff --git a/packages/create-llama/templates/simple/nextjs/gitignore b/packages/create-llama/templates/types/simple/nextjs/gitignore
similarity index 100%
rename from packages/create-llama/templates/simple/nextjs/gitignore
rename to packages/create-llama/templates/types/simple/nextjs/gitignore
diff --git a/packages/create-llama/templates/simple/nextjs/next-env.d.ts b/packages/create-llama/templates/types/simple/nextjs/next-env.d.ts
similarity index 100%
rename from packages/create-llama/templates/simple/nextjs/next-env.d.ts
rename to packages/create-llama/templates/types/simple/nextjs/next-env.d.ts
diff --git a/packages/create-llama/templates/simple/nextjs/next.config.js b/packages/create-llama/templates/types/simple/nextjs/next.config.js
similarity index 100%
rename from packages/create-llama/templates/simple/nextjs/next.config.js
rename to packages/create-llama/templates/types/simple/nextjs/next.config.js
diff --git a/packages/create-llama/templates/simple/nextjs/package.json b/packages/create-llama/templates/types/simple/nextjs/package.json
similarity index 100%
rename from packages/create-llama/templates/simple/nextjs/package.json
rename to packages/create-llama/templates/types/simple/nextjs/package.json
diff --git a/packages/create-llama/templates/simple/nextjs/postcss.config.js b/packages/create-llama/templates/types/simple/nextjs/postcss.config.js
similarity index 100%
rename from packages/create-llama/templates/simple/nextjs/postcss.config.js
rename to packages/create-llama/templates/types/simple/nextjs/postcss.config.js
diff --git a/packages/create-llama/templates/simple/nextjs/public/llama.png b/packages/create-llama/templates/types/simple/nextjs/public/llama.png
similarity index 100%
rename from packages/create-llama/templates/simple/nextjs/public/llama.png
rename to packages/create-llama/templates/types/simple/nextjs/public/llama.png
diff --git a/packages/create-llama/templates/simple/nextjs/tailwind.config.ts b/packages/create-llama/templates/types/simple/nextjs/tailwind.config.ts
similarity index 100%
rename from packages/create-llama/templates/simple/nextjs/tailwind.config.ts
rename to packages/create-llama/templates/types/simple/nextjs/tailwind.config.ts
diff --git a/packages/create-llama/templates/simple/nextjs/tsconfig.json b/packages/create-llama/templates/types/simple/nextjs/tsconfig.json
similarity index 100%
rename from packages/create-llama/templates/simple/nextjs/tsconfig.json
rename to packages/create-llama/templates/types/simple/nextjs/tsconfig.json
diff --git a/packages/create-llama/templates/streaming/express/README-template.md b/packages/create-llama/templates/types/streaming/express/README-template.md
similarity index 100%
rename from packages/create-llama/templates/streaming/express/README-template.md
rename to packages/create-llama/templates/types/streaming/express/README-template.md
diff --git a/packages/create-llama/templates/streaming/express/eslintrc.json b/packages/create-llama/templates/types/streaming/express/eslintrc.json
similarity index 100%
rename from packages/create-llama/templates/streaming/express/eslintrc.json
rename to packages/create-llama/templates/types/streaming/express/eslintrc.json
diff --git a/packages/create-llama/templates/streaming/express/index.ts b/packages/create-llama/templates/types/streaming/express/index.ts
similarity index 100%
rename from packages/create-llama/templates/streaming/express/index.ts
rename to packages/create-llama/templates/types/streaming/express/index.ts
diff --git a/packages/create-llama/templates/streaming/express/package.json b/packages/create-llama/templates/types/streaming/express/package.json
similarity index 100%
rename from packages/create-llama/templates/streaming/express/package.json
rename to packages/create-llama/templates/types/streaming/express/package.json
diff --git a/packages/create-llama/templates/streaming/express/src/controllers/chat.controller.ts b/packages/create-llama/templates/types/streaming/express/src/controllers/chat.controller.ts
similarity index 100%
rename from packages/create-llama/templates/streaming/express/src/controllers/chat.controller.ts
rename to packages/create-llama/templates/types/streaming/express/src/controllers/chat.controller.ts
diff --git a/packages/create-llama/templates/streaming/express/src/controllers/llamaindex-stream.ts b/packages/create-llama/templates/types/streaming/express/src/controllers/llamaindex-stream.ts
similarity index 100%
rename from packages/create-llama/templates/streaming/express/src/controllers/llamaindex-stream.ts
rename to packages/create-llama/templates/types/streaming/express/src/controllers/llamaindex-stream.ts
diff --git a/packages/create-llama/templates/streaming/express/src/routes/chat.route.ts b/packages/create-llama/templates/types/streaming/express/src/routes/chat.route.ts
similarity index 100%
rename from packages/create-llama/templates/streaming/express/src/routes/chat.route.ts
rename to packages/create-llama/templates/types/streaming/express/src/routes/chat.route.ts
diff --git a/packages/create-llama/templates/streaming/express/tsconfig.json b/packages/create-llama/templates/types/streaming/express/tsconfig.json
similarity index 100%
rename from packages/create-llama/templates/streaming/express/tsconfig.json
rename to packages/create-llama/templates/types/streaming/express/tsconfig.json
diff --git a/packages/create-llama/templates/streaming/fastapi/README-template.md b/packages/create-llama/templates/types/streaming/fastapi/README-template.md
similarity index 100%
rename from packages/create-llama/templates/streaming/fastapi/README-template.md
rename to packages/create-llama/templates/types/streaming/fastapi/README-template.md
diff --git a/packages/create-llama/templates/streaming/fastapi/app/__init__.py b/packages/create-llama/templates/types/streaming/fastapi/app/__init__.py
similarity index 100%
rename from packages/create-llama/templates/streaming/fastapi/app/__init__.py
rename to packages/create-llama/templates/types/streaming/fastapi/app/__init__.py
diff --git a/packages/create-llama/templates/streaming/fastapi/app/api/__init__.py b/packages/create-llama/templates/types/streaming/fastapi/app/api/__init__.py
similarity index 100%
rename from packages/create-llama/templates/streaming/fastapi/app/api/__init__.py
rename to packages/create-llama/templates/types/streaming/fastapi/app/api/__init__.py
diff --git a/packages/create-llama/templates/streaming/fastapi/app/api/routers/__init__.py b/packages/create-llama/templates/types/streaming/fastapi/app/api/routers/__init__.py
similarity index 100%
rename from packages/create-llama/templates/streaming/fastapi/app/api/routers/__init__.py
rename to packages/create-llama/templates/types/streaming/fastapi/app/api/routers/__init__.py
diff --git a/packages/create-llama/templates/streaming/fastapi/app/api/routers/chat.py b/packages/create-llama/templates/types/streaming/fastapi/app/api/routers/chat.py
similarity index 100%
rename from packages/create-llama/templates/streaming/fastapi/app/api/routers/chat.py
rename to packages/create-llama/templates/types/streaming/fastapi/app/api/routers/chat.py
diff --git a/packages/create-llama/templates/streaming/fastapi/app/utils/__init__.py b/packages/create-llama/templates/types/streaming/fastapi/app/utils/__init__.py
similarity index 100%
rename from packages/create-llama/templates/streaming/fastapi/app/utils/__init__.py
rename to packages/create-llama/templates/types/streaming/fastapi/app/utils/__init__.py
diff --git a/packages/create-llama/templates/streaming/fastapi/app/utils/index.py b/packages/create-llama/templates/types/streaming/fastapi/app/utils/index.py
similarity index 100%
rename from packages/create-llama/templates/streaming/fastapi/app/utils/index.py
rename to packages/create-llama/templates/types/streaming/fastapi/app/utils/index.py
diff --git a/packages/create-llama/templates/streaming/fastapi/app/utils/json.py b/packages/create-llama/templates/types/streaming/fastapi/app/utils/json.py
similarity index 100%
rename from packages/create-llama/templates/streaming/fastapi/app/utils/json.py
rename to packages/create-llama/templates/types/streaming/fastapi/app/utils/json.py
diff --git a/packages/create-llama/templates/streaming/fastapi/data/brk-2022.pdf b/packages/create-llama/templates/types/streaming/fastapi/data/brk-2022.pdf
similarity index 100%
rename from packages/create-llama/templates/streaming/fastapi/data/brk-2022.pdf
rename to packages/create-llama/templates/types/streaming/fastapi/data/brk-2022.pdf
diff --git a/packages/create-llama/templates/streaming/fastapi/gitignore b/packages/create-llama/templates/types/streaming/fastapi/gitignore
similarity index 100%
rename from packages/create-llama/templates/streaming/fastapi/gitignore
rename to packages/create-llama/templates/types/streaming/fastapi/gitignore
diff --git a/packages/create-llama/templates/streaming/fastapi/main.py b/packages/create-llama/templates/types/streaming/fastapi/main.py
similarity index 100%
rename from packages/create-llama/templates/streaming/fastapi/main.py
rename to packages/create-llama/templates/types/streaming/fastapi/main.py
diff --git a/packages/create-llama/templates/streaming/fastapi/pyproject.toml b/packages/create-llama/templates/types/streaming/fastapi/pyproject.toml
similarity index 100%
rename from packages/create-llama/templates/streaming/fastapi/pyproject.toml
rename to packages/create-llama/templates/types/streaming/fastapi/pyproject.toml
diff --git a/packages/create-llama/templates/streaming/fastapi/tests/__init__.py b/packages/create-llama/templates/types/streaming/fastapi/tests/__init__.py
similarity index 100%
rename from packages/create-llama/templates/streaming/fastapi/tests/__init__.py
rename to packages/create-llama/templates/types/streaming/fastapi/tests/__init__.py
diff --git a/packages/create-llama/templates/streaming/nextjs/.env.example b/packages/create-llama/templates/types/streaming/nextjs/.env.example
similarity index 100%
rename from packages/create-llama/templates/streaming/nextjs/.env.example
rename to packages/create-llama/templates/types/streaming/nextjs/.env.example
diff --git a/packages/create-llama/templates/streaming/nextjs/README-template.md b/packages/create-llama/templates/types/streaming/nextjs/README-template.md
similarity index 100%
rename from packages/create-llama/templates/streaming/nextjs/README-template.md
rename to packages/create-llama/templates/types/streaming/nextjs/README-template.md
diff --git a/packages/create-llama/templates/streaming/nextjs/app/api/chat/llamaindex-stream.ts b/packages/create-llama/templates/types/streaming/nextjs/app/api/chat/llamaindex-stream.ts
similarity index 100%
rename from packages/create-llama/templates/streaming/nextjs/app/api/chat/llamaindex-stream.ts
rename to packages/create-llama/templates/types/streaming/nextjs/app/api/chat/llamaindex-stream.ts
diff --git a/packages/create-llama/templates/streaming/nextjs/app/api/chat/route.ts b/packages/create-llama/templates/types/streaming/nextjs/app/api/chat/route.ts
similarity index 95%
rename from packages/create-llama/templates/streaming/nextjs/app/api/chat/route.ts
rename to packages/create-llama/templates/types/streaming/nextjs/app/api/chat/route.ts
index 461f3118c6567510f9c59f8b4d010cda0f388d52..e87ef01db16d488d5639d9023cb6cfcff049fe45 100644
--- a/packages/create-llama/templates/streaming/nextjs/app/api/chat/route.ts
+++ b/packages/create-llama/templates/types/streaming/nextjs/app/api/chat/route.ts
@@ -1,7 +1,7 @@
 import { Message, StreamingTextResponse } from "ai";
 import { OpenAI } from "llamaindex";
 import { NextRequest, NextResponse } from "next/server";
-import { createChatEngine } from "../../../../../engines/context";
+import { createChatEngine } from "../../../../../../engines/context";
 import { LlamaIndexStream } from "./llamaindex-stream";
 
 export const runtime = "nodejs";
diff --git a/packages/create-llama/templates/streaming/nextjs/app/components/chat-section.tsx b/packages/create-llama/templates/types/streaming/nextjs/app/components/chat-section.tsx
similarity index 85%
rename from packages/create-llama/templates/streaming/nextjs/app/components/chat-section.tsx
rename to packages/create-llama/templates/types/streaming/nextjs/app/components/chat-section.tsx
index e1dae74fe0f6acf0b104947202e93b8c59ce5d25..a36d2f2067c9a3332dfdf2d0e827d5b9492d767d 100644
--- a/packages/create-llama/templates/streaming/nextjs/app/components/chat-section.tsx
+++ b/packages/create-llama/templates/types/streaming/nextjs/app/components/chat-section.tsx
@@ -1,7 +1,7 @@
 "use client";
 
 import { useChat } from "ai/react";
-import { ChatInput, ChatMessages, Message } from "../../../../ui/html/chat";
+import { ChatInput, ChatMessages, Message } from "../../../../../ui/html/chat";
 
 export default function ChatSection() {
   const { messages, input, isLoading, handleSubmit, handleInputChange } =
diff --git a/packages/create-llama/templates/streaming/nextjs/app/components/header.tsx b/packages/create-llama/templates/types/streaming/nextjs/app/components/header.tsx
similarity index 100%
rename from packages/create-llama/templates/streaming/nextjs/app/components/header.tsx
rename to packages/create-llama/templates/types/streaming/nextjs/app/components/header.tsx
diff --git a/packages/create-llama/templates/streaming/nextjs/app/favicon.ico b/packages/create-llama/templates/types/streaming/nextjs/app/favicon.ico
similarity index 100%
rename from packages/create-llama/templates/streaming/nextjs/app/favicon.ico
rename to packages/create-llama/templates/types/streaming/nextjs/app/favicon.ico
diff --git a/packages/create-llama/templates/streaming/nextjs/app/globals.css b/packages/create-llama/templates/types/streaming/nextjs/app/globals.css
similarity index 100%
rename from packages/create-llama/templates/streaming/nextjs/app/globals.css
rename to packages/create-llama/templates/types/streaming/nextjs/app/globals.css
diff --git a/packages/create-llama/templates/streaming/nextjs/app/layout.tsx b/packages/create-llama/templates/types/streaming/nextjs/app/layout.tsx
similarity index 100%
rename from packages/create-llama/templates/streaming/nextjs/app/layout.tsx
rename to packages/create-llama/templates/types/streaming/nextjs/app/layout.tsx
diff --git a/packages/create-llama/templates/streaming/nextjs/app/page.tsx b/packages/create-llama/templates/types/streaming/nextjs/app/page.tsx
similarity index 100%
rename from packages/create-llama/templates/streaming/nextjs/app/page.tsx
rename to packages/create-llama/templates/types/streaming/nextjs/app/page.tsx
diff --git a/packages/create-llama/templates/streaming/nextjs/eslintrc.json b/packages/create-llama/templates/types/streaming/nextjs/eslintrc.json
similarity index 100%
rename from packages/create-llama/templates/streaming/nextjs/eslintrc.json
rename to packages/create-llama/templates/types/streaming/nextjs/eslintrc.json
diff --git a/packages/create-llama/templates/streaming/nextjs/gitignore b/packages/create-llama/templates/types/streaming/nextjs/gitignore
similarity index 100%
rename from packages/create-llama/templates/streaming/nextjs/gitignore
rename to packages/create-llama/templates/types/streaming/nextjs/gitignore
diff --git a/packages/create-llama/templates/streaming/nextjs/next-env.d.ts b/packages/create-llama/templates/types/streaming/nextjs/next-env.d.ts
similarity index 100%
rename from packages/create-llama/templates/streaming/nextjs/next-env.d.ts
rename to packages/create-llama/templates/types/streaming/nextjs/next-env.d.ts
diff --git a/packages/create-llama/templates/streaming/nextjs/next.config.js b/packages/create-llama/templates/types/streaming/nextjs/next.config.js
similarity index 100%
rename from packages/create-llama/templates/streaming/nextjs/next.config.js
rename to packages/create-llama/templates/types/streaming/nextjs/next.config.js
diff --git a/packages/create-llama/templates/streaming/nextjs/package.json b/packages/create-llama/templates/types/streaming/nextjs/package.json
similarity index 100%
rename from packages/create-llama/templates/streaming/nextjs/package.json
rename to packages/create-llama/templates/types/streaming/nextjs/package.json
diff --git a/packages/create-llama/templates/streaming/nextjs/postcss.config.js b/packages/create-llama/templates/types/streaming/nextjs/postcss.config.js
similarity index 100%
rename from packages/create-llama/templates/streaming/nextjs/postcss.config.js
rename to packages/create-llama/templates/types/streaming/nextjs/postcss.config.js
diff --git a/packages/create-llama/templates/streaming/nextjs/public/llama.png b/packages/create-llama/templates/types/streaming/nextjs/public/llama.png
similarity index 100%
rename from packages/create-llama/templates/streaming/nextjs/public/llama.png
rename to packages/create-llama/templates/types/streaming/nextjs/public/llama.png
diff --git a/packages/create-llama/templates/streaming/nextjs/tailwind.config.ts b/packages/create-llama/templates/types/streaming/nextjs/tailwind.config.ts
similarity index 100%
rename from packages/create-llama/templates/streaming/nextjs/tailwind.config.ts
rename to packages/create-llama/templates/types/streaming/nextjs/tailwind.config.ts
diff --git a/packages/create-llama/templates/streaming/nextjs/tsconfig.json b/packages/create-llama/templates/types/streaming/nextjs/tsconfig.json
similarity index 100%
rename from packages/create-llama/templates/streaming/nextjs/tsconfig.json
rename to packages/create-llama/templates/types/streaming/nextjs/tsconfig.json