refactoring to remove server-side component for now