Добрый день!
Задача: разработка сервиса по оказанию различных услуг. Все достаточно типично: исполнитель регистрируется, указывает какие услуги готов оказать. Пользователь через поиск находит исполнителя, смотрит рейтинг и отзывы, оплачивает услугу через сайт. Плюс традиционные личные кабинеты исполнителя/пользователя и т.д.
Кроме самого сайта, будут еще и мобильные приложения (iOS, Android).
Суть вопроса в том, какой лучше стек использовать для реализации. У меня неплохой опыт реализации проектов на Laravel: нравится сама концепция, ORM, шаблонизатор и прочее.
Так как необходимо разработать еще и мобильное приложение, сразу же (чуть ли не с начала) нужно будет готовить API.
Поэтому и возникает вопрос - какой стек лучше всего использовать?..
Вижу три варианта:
- Laravel для сайта + в самой ларе использовать роуты для API. Как я понимаю, придется писать параллельно функционал контроллера как для сайта, так и для API. В этом случае используется родной шаблонизатор Blade для сайта.
- Lumen в роли API + Angular. Плюс здесь в том, что backend есть backend, а фронтэнд использует ту же логику работы с API, что и мобильные приложения. Lumen сам по себе лучше подходит для чистого RESTful. Минус в том, что опыта работы с JS-фреймворками у меня нет. Плюс, честно говоря, пугает это невероятное разнообразие js-фреймворков - поэтому остановился на Angular после просмотра пару видео-уроков.
- Laravel для сайта, Lumen для API - оба подключаются к одной базе. Минус в том, что писать нужно по факту два проекта параллельно.
Не знаю, может есть и решения лучше. Хотелось бы получить комментарии/советы по поводу того, как же все-таки лучше.
Предвещаю ответ “как тебе удобнее” и холивар вроде “angular отстой - только rails” и тому подобное: было бы круто прочитать комментарии людей, имеющих за спиной реальные проекты с нагрузкой over 10k уников в сутки с использованием PHP.
Предполагаю ответ вроде “обсуждалось миллион раз” и “гугл в помощь” - но технологии меняются так часто (особенно в frontend-части), поэтому хочется получить самую актуальную информацию. Фраза “лучше всего” в моем вопросе означает более стабильный в “бою” и комфортный в реализации вариант.