javascript provider