0
1. write down what features you want to implement.
2. draw use cases, and ER diagram of your system.
3. from all the features, find out which is must to create a barebone mvp.
4. develop those must have features first.
5. refactor your code.
6. implement the features you didn't prioritize for an mvp.
7. refactor, and repeat.
PS: Google is your best friend.
mvp: minimum viable product