diff --git a/src/MuscleActivities.jl b/src/MuscleActivities.jl
index 86b74a322943c47270c03d17afa896e522d4ce12..57911ca511edf4c89124e4a2d6fbc4b034c51358 100644
--- a/src/MuscleActivities.jl
+++ b/src/MuscleActivities.jl
@@ -3,6 +3,7 @@ module MuscleActivities
 using StructTypes
 using NyxWidgets.Muscles
 using Random
+using Dates
 using JSON3
 using StructTypes
 using OrderedCollections: OrderedDict
@@ -217,8 +218,18 @@ from_json_file(::Type{T}, filepath) where {T} = JSON3.read(read(filepath, String
 StructTypes.StructType(::Type{MuscleActivity}) = StructTypes.CustomStruct()
 
 function StructTypes.lower(seq::MuscleActivity)
+    version = string(pkgversion(@__MODULE__))
+    if endswith(version, ".0")
+        version = version[1:end-2]
+    end
+    datetime = Dates.format(Dates.now(), "yyyymmdd_HHMMSS")
     Dict = OrderedDict
     Dict("name" => seq.program_name,
+         "metadata" =>
+         Dict("software" =>
+              Dict("name" => "NyxUI",
+                   "version" => version),
+              "date_time" => datetime),
          "time" =>
          Dict("start" => seq.times[1],
               "step" => step(seq.times),