Сегодня мы сделаем приложение полностью: с пустой папки, с сервером, npm-скриптом, сервером и клиентом.
- Создай пустой репозиторий на github.com, назови его quiz. Поделись правами на запись в этот репозиторий со своим напарником.
- Склонируй снаружи от текущего проекта этот пустой репозиторий. Вся работа сегодня будет вестись там. Для удобства можешь скопировать этот файл туда.
- В терминале (в нашем склонированном проекте) выполни команду
npm init
. В гайде по настройке package.json соглашайся на все дефолтные настройки (жми enter) - Выполни команду
npm install express
- Создай папку
static
, положи в нее файлindex.html
c каким-нибудь текстом (чтобы проверить, что он загружается) - В корне директории
quiz
создай файлserver.js
. Напиши в этом файле код статического сервера: чтобы он слушал какой-то порт и умел отдавать статику из папкиstatic
- В разделе
scripts
вpackage.json
напиши скриптstart
, который будет выполнять командуnode server.js
- Выполни команду
npm start
: она должна запустить твой сервер, а при открытии локалхоста на том порте, который ты указал, должен отдаваться твойindex.html
- Закоммить и запушь получившиеся файлы (кстати, нельзя комитить папку node_modules, можно ее добавить в .gitignore)
- Следующую работу постарайтесь разделить с напарником так, чтобы часть работы делал каждый из вас и делайте регулярно коммиты, чтобы делиться друг с другом кодом. Делать будем вот такое приложение
- Чтобы не верстать все руками, воспользуйся CSS фреймворком — Bootstrap. Тут инструкция, как подключить его к себе на проект.
- На сервере сделай, чтобы по какому-то запросу в каком-то формате (попробуй выбрать хороший путь и подходящий формат для данных) отдавался список вопросов.
- На клиенте сверстай при помощи бутстрапа опрос. Скорее всего, все, что тебе уже нужно, в бутстрапе уже есть, надо только правильно воспользоваться правильными классами.
- На сервере сделай возможность получать результат заполнения опроса и возвращай количество правильных ответов.
- На клиенте научись получать данные для отображения вопросов с сервера.
- Научись отправлять с клиента результаты прохождения опроса на сервер и показывай каким-нибудь способом количество баллов за опрос.
- *Сделай лидерборд: на клиенте и на сервере поддержи возможность посмотреть на рейтинг по опросу. Для этого придется еще спрашивать имя пользователя.