feature: separate view and logic
feature: PDO mysql