diff --git a/commands/add.go b/commands/add.go
index 71c8c642b8dca695b9ee2f150bb646dd54b68405..a0022ed3257bf4f706a20f91fd0dcd1876fd6dfe 100644
--- a/commands/add.go
+++ b/commands/add.go
@@ -67,7 +67,6 @@ func Add(tableName string, model string) {
 	/*
 		- Generate Test Data for the new table if wanted
 		- Add Table to import-sql.sh
-		- Add Description to the DBML file
 		- Add Description and mermaid and DBML to the README.md file
 		- Add Test to gitlab-ci.yml
 		- Add to CHANGELOG.md
@@ -90,6 +89,12 @@ func Add(tableName string, model string) {
 	// Create the table file under sql directory
 	createTableFile(projectDir, tableName, config.DbType, tableModel)
 
+	// Append table description to database.dbml
+	if err := appendToDBMLFile(projectDir, tableName, tableModel); err != nil {
+		fmt.Printf("Error appending to database.dbml: %v\n", err)
+	} else {
+		fmt.Printf("Appended table '%s' to database.dbml\n", tableName)
+	}
 
 	fmt.Printf("Added new table '%s' to the project\n", slug)
 }
@@ -241,6 +246,54 @@ func generatePostgreSQLSQL(file *os.File, tableName string, tableModel TableMode
 	return err
 }
 
+func generateDBML(tableName string, tableModel TableModel) string {
+	var dbml strings.Builder
+
+	dbml.WriteString(fmt.Sprintf("Table %s {\n", tableName))
+
+	for _, field := range tableModel.Fields {
+		dbml.WriteString(fmt.Sprintf("  %s %s", field.Name, field.Type))
+
+		if field.PrimaryKey {
+			dbml.WriteString(" [pk]")
+		}
+		if field.Unique {
+			dbml.WriteString(" [unique]")
+		}
+		if field.NotNull {
+			dbml.WriteString(" [not null]")
+		}
+		if field.AutoIncrement {
+			dbml.WriteString(" [autoincrement]")
+		}
+		if field.DefaultValue != nil {
+			dbml.WriteString(fmt.Sprintf(" [default: '%v']", field.DefaultValue))
+		}
+
+		dbml.WriteString("\n")
+	}
+
+	dbml.WriteString("}\n")
+
+	return dbml.String()
+}
+
+func appendToDBMLFile(projectDir, tableName string, tableModel TableModel) error {
+	dbmlFilePath := filepath.Join(projectDir, "database.dbml")
+	file, err := os.OpenFile(dbmlFilePath, os.O_APPEND|os.O_WRONLY, os.ModeAppend)
+	if err != nil {
+		return fmt.Errorf("error opening database.dbml file: %v", err)
+	}
+	defer file.Close()
+
+	dbmlContent := generateDBML(tableName, tableModel)
+	if _, err := file.WriteString(dbmlContent); err != nil {
+		return fmt.Errorf("error writing to database.dbml file: %v", err)
+	}
+
+	return nil
+}
+
 func validateModel(model TableModel) error {
 	fieldNames := make(map[string]bool)