Wishlist JS
- EN
- RU
WishlistJS - это мой пет-проект на чистом JS. По факту это лёгкая html-страница со списком желаемого, конфиг для которого лежит в json.
![Текущий дизайн](https://raw.githubusercontent.com/Mitrichius/WishlistJS/master/images/screenshot.png)
Текущий дизайн
Первоначальная идея возникла, когда в очередной раз не нашёл нормального сервиса для публичных вишлистов. В каждом была какая-нибудь проблема:
- без резервирования;
- без изображений;
- допотопный дизайн;
- странности работы.
В тот момент у меня уже был вишлист на основе блога Tumblr с темой-фотогалереей. Это было неудобно из-за UX личного кабинета, из возможностей фильтрации и сортировки были только теги, и, как последняя капля, у меня не всегда подгружались с него изображения (привет блокировкам).
![Старый дизайн на Tumblr](/images/posts/wishlist-old.png)
Старый дизайн на Tumblr
Поискал альтернативы на гитхабе, но народ предпочитает такими пустяками не заниматься (это же не тудушницы писать!). Я нашёл несколько репозиториев в качестве показа очередной крутой архитектуры. В общем, решил писать свой. Стал думать, на чём, первые варианты — php (как полноценный проект для прикрепления к резюме) и python (вспомнить, подтянуть, попробовать не на простых скриптах). В голове был бэкенд, резервирование, модели Items.
Тогда я вспомнил про no-code пост Вастрика и понял, что бэкенд можно частично/полностью заменить на Airtable и там же заполнять всё (проблема админки решена).
Подумал ещё. Понял, что функция резервирования в моём случае не самая актуальная. Что хочу проще и без сервера. И так как планировалось веб-приложение – выбор пал на JS. А в связи с простотой отмелись всякие npm, сборщики и вообще современный фронтенд. Viva la Pure JS.
Сел и продумал все фичи, а потом поделил их на MVP и версии. Запилил репозиторий, расписал Issues и погнал.
MVP-версия была с конфигом прямо внутри репозитория, что затрудняло одновременные использование и разработку. Маячило решение в виде библиотеки, но для этого пришлось бы в зависимости добавлять пакет-менеджер. Вспомнил про сабмодули git и сделал всё на их основе.
Помимо этого в версии 1.0 сделал нормальную мобильную версию, деплой на Netlify и свой сервер, описание предметов, мультивалюту и другие фичи.
Ещё много проблем предстоит решить, кучу всего улучшить, но вишлист уже удобен и им уже пользуюсь я и близкие мне люди. Я доволен.