better custom provider documentation