Всем привет. В общем решил я запилить пост и рассказать вам о своём старом проекте. Как то давно была у меня идея сделать свой сайт для создания простенького блога, где его основой служила бы фотография. И самый главный акцент был сделан на том что бы было всё максимально оптимизировано при просмотре картинок и грузилось даже при медленном интернете. Ну и пошло поехало по накатанной. Сначала я сделал редактор изображений на основе Canvas, который оптимизирован и под мобильные устройства и под компьютер:
Конечно каждый блог имеет в своем арсенале редактор поста, тут то я и застрял на целый год, и в итоге сделал его. В нем теперь есть возможность добавлять фотографии с постов и оформлять его с помощью BBcod-ов.
Так же есть возможность добавлять спойлеры с максимальным вложением до 1000 штук, как матрёшку.
Для удобства, текстовые блоки, а так же блоки изображений можно передвигать соответствующими кнопками, так же можно передвигать сам блок добавления элементов.
Так как в основе сайта лежали фотографии, но их разрешение и качество для оптимизации я сделал низкими, пользователи это заметили и попросили о возможности добавлять оригиналы фотографий. Попросили, сделал, хоть это и заняло целый месяц, так как пришлось переделывать некоторые элементы под это и структуру сохранения фотографий, ведь одно фото, это background расширением base64, миниатюра, файл среднего размера и сам оригинал который загружается при увеличении фото, его размер может достигать 17мегобайт, и он имеет отдельный блок просмотра, который тоже для этого пришлось делать, эту фишку я назвал BigPhoto:
На смартфонах фото можно приблизить двумя пальцами. Наверно у вас возникнет вопрос что за надпись в нижнем левом углу /r9nvhv? Это сокращённая ссылка на изображение, которое можно найти либо в поиске сайта, он находится на главной странице, либо добавить домен хайпика к ссылке и вас перенесет на саму картинку:
Больше всего пришлось повозиться что бы эта ссылка корректно передавалась в WhatsApp и других месенджерах, а именно правильно показывалась превью картинки:
Ну и конечно куда же без социальных печенек, а именно лайков... Но что бы было равноправие при рейтинге и хоть что то влияло на репутацию пользователя, решили что справедливо будет дать возможность другим пользователям, разбавить карму непослушного пользователя дизлайками:
И конечно же все эти лайки и дизлайки повлияют на его общий рейтинг, но не спешите радоваться что сможете просто так заминусовать любого пользователя, для этого пополните свой минусомет, лайкая понравившиеся записи, ведь пока не зарядишь обойму просто так ненашпигуете неприятеля своим негативом в виде дизлайка:
Есть возможность добавлять аватарку в виде алмазика который генерируется на стороне сервера с рандомными гранями, но это уже совсем другая история. В целом это основное над чем я работал четыре года, разрабатывая свой проект практически с нуля, и занавесой разработки это целая история познания программирования на языках PHP, js и css . Теперь я работаю над Android приложением и в планах выпустить его в Google Play уже совсем в другом виде и другими фишками. Всем добра!