Продолжайте в том же духе. Вы должны научиться видеть решение до того, как возьмётесь за реализацию. Фреймворки значения не имеют. Только грамотное структурирование данных поможет написать грамотное приложение.
По моим наблюдениям общего вида - необходимо достаточно свободное манипулирование данными как на клиенте так и на сервере. И как правило достаточно трудно подобрать такую архитектуру, чтобы придуманная вами "конструкция" из связей и данных могла без сильных напрягов обрабатываться и на клиенте и на сервере. Всегда будут проблемы.
Фрейморк ничто, грамотная структура - всё.