From 50d1a29a740196078019da758f89f72a4f715e19 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fran=C3=A7ois=20Laurent?= <francois.laurent@posteo.net>
Date: Wed, 8 Jan 2025 17:28:20 +0100
Subject: [PATCH] feat: metadata stored in json files

---
 src/MuscleActivities.jl | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/src/MuscleActivities.jl b/src/MuscleActivities.jl
index 86b74a3..57911ca 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),
-- 
GitLab