following our pattern on js