This module needs documentation.
Please document this module by describing its purpose and usage on the documentation page.

local export = {}

local function initial_capital(x)
	return x:gsub("^%l", string.upper)
end

local function space_to_underscore(x)
	return x:gsub(" ", "_")
end

function export.index(frame)
	-- Data module causes a Lua memory error just for this template.
	local title = mw.title.getCurrentTitle().text
	if title == "gold" then
		return nil
	end
	
	local args, mensa = frame:getParent().args, mw.loadData("Module:R:Mindat/data")
	local w = args[1] or title
	local wU = args[1] or initial_capital(title)
	local glossary = args['glossary']
	
	local function link_main(w, wU)
		return mensa[wU] and "[https://www.mindat.org/min-".. (mensa[wU] or "") .. ".html " .. w .."]" or ""
	end
	
	local function link_glossary(w,wU)
		return "[https://www.mindat.org/glossary/" .. space_to_underscore(wU) .. " " .. w.."]"
	end
	
	return glossary and link_glossary(w,wU) or link_main(w,wU)
end		
		
return export