diff --git a/packages/core/src/readers/SimpleDirectoryReader.edge.ts b/packages/core/src/readers/SimpleDirectoryReader.edge.ts
index face1fdd3fa23c62c127cfebae42ced2997a3c38..70123b153d448582198ea1a68656732a86b92d70 100644
--- a/packages/core/src/readers/SimpleDirectoryReader.edge.ts
+++ b/packages/core/src/readers/SimpleDirectoryReader.edge.ts
@@ -1,6 +1,6 @@
 import type { CompleteFileSystem } from "@llamaindex/env";
 import { defaultFS, path } from "@llamaindex/env";
-import { Document } from "../Node.js";
+import { Document, type Metadata } from "../Node.js";
 import { walk } from "../storage/FileSystem.js";
 import { TextFileReader } from "./TextFileReader.js";
 import type { BaseReader } from "./type.js";
@@ -89,6 +89,7 @@ export class SimpleDirectoryReader implements BaseReader {
         }
 
         const fileDocs = await reader.loadData(filePath, fs);
+        fileDocs.forEach(addMetaData(filePath));
 
         // Observer can still cancel addition of the resulting docs from this file
         if (this.doObserverCheck("file", filePath, ReaderStatus.COMPLETE)) {
@@ -124,3 +125,10 @@ export class SimpleDirectoryReader implements BaseReader {
     return true;
   }
 }
+
+function addMetaData(filePath: string): (doc: Document<Metadata>) => void {
+  return (doc: Document<Metadata>) => {
+    doc.metadata["file_path"] = path.resolve(filePath);
+    doc.metadata["file_name"] = path.basename(filePath);
+  };
+}