added npm fetching support