initial commit
finish the interface design
finish record logic