Now uses javascript and can be organized modularly
now uses plain Javascript instead of being parsed by the library