backend && frontend improvements