Warning you in advance its a huge job and you will need great coding skills. Good luck anyway