Annual report [Section 13 and 15(d), not S-K Item 405]

Summary of significant accounting policies - Additional Information (Details)

v3.25.1
Summary of significant accounting policies - Additional Information (Details)
12 Months Ended
Dec. 31, 2024
USD ($)
segment
Dec. 31, 2023
USD ($)
Disaggregation of Revenue [Line Items]    
Employee retention credit receivable $ 0 $ 46,148
Joint venture, percent owned 51.00%  
Allowance for doubtful accounts $ 295,932 149,992
Impairment of long-lived assets 0 0
Shipping and handling fees billed to customers 96,890 174,662
Cost of goods sold, shipping and handling 59,331 79,616
Bad debt expense 146,010 902,432
Advertising expense 74,000 80,000
Research and development $ 962,000 840,000
Payment period 30 days  
Number of operating segments | segment 3  
Deferred revenue recognized $ 662,730  
Remaining performance obligations $ 7,867,082  
Revenue, remaining performance obligation, percentage 84.00%  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2025-01-01    
Disaggregation of Revenue [Line Items]    
Revenue, remaining performance obligation, percentage 82.00%  
Revenue, remaining performance obligation, expected timing of satisfaction, period 1 year  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2026-01-01    
Disaggregation of Revenue [Line Items]    
Revenue, remaining performance obligation, percentage 2.00%  
Revenue, remaining performance obligation, expected timing of satisfaction, period 2 years  
General and Administrative Expense    
Disaggregation of Revenue [Line Items]    
Shipping and handling expenses $ 248,229 $ 427,880