frontend almost done