[Разработка веб-сайтов, Разработка игр, Разработка мобильных приложений, Разработка под Linux, Разработка под Windows] Свободная веб-энциклопедия для любых IT-проектов на собственном движке
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
Введение
Когда я пытался продвигать свой последний проект (веб-чат), я столкнулся с тем, что о нем фактически негде написать. Ситуация касается не только wiki-проектов, а вообще всего рунета. Крупные сайты ведут такую политику, что Вы не можете написать о своем проекте — Вы должны либо купить рекламу, либо о Вас должен написать кто-то еще. Если рассматривать конкретно wiki-сайты, то даже на Лурк или Викиреальность попасть проблематично, не говоря уже о таком гиганте как Википедия. Хотя потом я нашел пару небольших wiki-порталов без цензуры, для которых написал два уникальных обзора на свой чат. Они меня и вдохновили на создание свободного wiki-ресурса для IT-разработок.
Зачем писать свой wiki-движок когда есть готовые?
Ну во-первых мне это было интересно. Создать готовый сайт по шаблону в несколько кликов — скучно и не заслуживает внимания аудитории. А новая разработка со своим интерфейсом вероятно активнее будет привлекать интерес. К тому же мне кажется проще написать код под определенные задачи с нуля, взяв за основу какой-либо фреймворк для упрощения разработки, чем переделывать нагромождения чужого кода под себя.
Подробнее о wikiclick.ru
Wikiclick.ru — это свободная веб-энциклопедия об IT-разработках. Здесь Вы можете написать о своем сайте, приложении, сервисе, игре или другой разработке, например о своем фреймворке или библиотеке и Ваша статья не будет расценена как спам. А навигатор автоматически создаст древовидное оглавление для Вашей страницы по h1-h6 заголовкам. На странице с Вашим проектом также будет доступно обсуждение в виде дерева комментариев. Созданную страницу можно будет найти в журнале версий, в поиске по сайту, выборке по указанным тегам, или в соответствующем разделе, к которому относится Ваша разработка. В обзоре проекта можно ограничиться лишь небольшим описанием, а сообщество со временем дополнит статью. Также Вы можете прикрепить картинки.
Сейчас модно делать мультиязычные сайты, но прошлый проект научил меня, что я понятия не имею как продвигать сайт в другой стране, и как его модерировать, когда знаешь только технический английский, поэтому я отбросил эту идею еще на старте. Хотя, возможно, я в дальнейшем реализую мультиязычность в самом движке.
О движке WikiClick
Сервер написан тяп-ляп — много дублирующегося кода, комментарии полностью отсутствуют, а некоторые строки написаны в обход методов фреймворка, например визуализация. Но в остальном я его причесал: он отлично работает и быстро настраивается под себя (если только Вас не смущает отсутствие админки). Вся разработка WikiClick заняла у меня около месяца.
Мне нравится, каким получился движок WikiClick — он компактный, красивый, быстро работает, код сервера уложился в 1000 строк. В журнал версий новая запись идет только в том случае если страница написана с другого ip или в другой день — этот механизм позволяет сохранять все ключевые версии страницы, не набирая кучу идентичных дубликатов с правками от одного пользователя. Свои комментарии сохраняются в сессию, и пока она не истекла, их можно отредактировать. Хорошая адаптивная верстка почти сходу налезла на мобильную версию. Обсуждение в виде дерева комментариев внизу страницы кажется более удобным чем на Википедии или на Лурке (Хотя я не являюсь активным участником этих проектов и мое мнение спорное). Использование HTML-кода в содержании страниц выглядит более гибким и скорее всего будет более привычно разработчикам. А навигатор по заголовкам получился гораздо проще тех, что я нашел в интернете, и работает на стороне клиента, не создавая нагрузку на сервер. Он выполнен на jquery и подходит для повторного использования, хотя требует от автора соблюдения последовательности заголовков:
if ($('.cords').length) {
$h = 'h1, h2, h3, h4, h5, h6';
$ah = $('article').find($h);
if ($ah.length >=3) {
$('.cords').html('<div>Справка</div><ul class="level0" data-level="0"><ul>');
$ol = $('.level0');
$str = '';
$.each($ah, function(i, elm) {
if (i < $ah.length-1) {
a = $ah.eq(i).prop('tagName'); b = $ah.eq(i+1).prop('tagName');
}
$(this).html('<selection id="H'+i+'">'+$(this).html()+'</selection>');
$str += '<li><a href="#H'+i+'">'+$(this).text()+'</li>';
if (i < $ah.length-1 && a>b) $str+='</ul>';
if (a<b && !(a=='H1' && b=='H2')) $str += '<ul>';
if (i == $ah.length-1) {
for (i = parseInt($(this).prop('tagName').substring(1)); i>=3; i--) {
$str += '</ul>';
}
console.log($str);
$ol.html($str);
}
});
}
}
P.S.: надеюсь, мой велосипед смог Вас заинтересовать (будем считать это бета-тестом).
Ссылки
wikiclick.ru
Проект на GitHub
===========
Источник:
habr.com
===========
Похожие новости:
- [Open source, Разработка под Linux, Софт] «Проприетарному — нет»: драйверы-прослойки для доступа к GPL-вызовам ядра Linux предложили блокировать
- [Облачные сервисы, Программирование, Разработка веб-сайтов] Serverless и полтора программиста
- [Разработка веб-сайтов, CSS, JavaScript, Клиентская оптимизация] Оптимизация производительности фронтенда. Часть 1. Critical Render Path
- [Java, Разработка мобильных приложений, Разработка под Android] Android изнутри: сравнение Dalvik и ART
- [Разработка веб-сайтов, CSS, HTML] CSS Grid понятно для всех
- [Разработка мобильных приложений, Интерфейсы, Разработка под Android, Дизайн мобильных приложений] RecyclerView.ItemDecoration: используем по максимуму
- [Разработка веб-сайтов, JavaScript, Тестирование веб-сервисов] Утреннее шоу с Lucas F. Costa: JS, CS и тестирование веб-приложений
- [Ajax, PHP, MySQL, JavaScript, jQuery] Пишем комментарии для сайта на чистом PHP + MySQL + Ajax
- [Open source, Разработка под Linux, Софт] Linux Kernel 5.8: что нового в ядре с самым большим количеством изменений за всю историю
- [Разработка мобильных приложений, Разработка под Android, Монетизация мобильных приложений] Как внедрить in-app подписки в Android-приложения: советы и рекомендации
Теги для поиска: #_razrabotka_vebsajtov (Разработка веб-сайтов), #_razrabotka_igr (Разработка игр), #_razrabotka_mobilnyh_prilozhenij (Разработка мобильных приложений), #_razrabotka_pod_linux (Разработка под Linux), #_razrabotka_pod_windows (Разработка под Windows), #_wiki, #_node.js, #_jquery, #_opensource, #_razrabotka_vebsajtov (
Разработка веб-сайтов
), #_razrabotka_igr (
Разработка игр
), #_razrabotka_mobilnyh_prilozhenij (
Разработка мобильных приложений
), #_razrabotka_pod_linux (
Разработка под Linux
), #_razrabotka_pod_windows (
Разработка под Windows
)
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 16:53
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
Введение Когда я пытался продвигать свой последний проект (веб-чат), я столкнулся с тем, что о нем фактически негде написать. Ситуация касается не только wiki-проектов, а вообще всего рунета. Крупные сайты ведут такую политику, что Вы не можете написать о своем проекте — Вы должны либо купить рекламу, либо о Вас должен написать кто-то еще. Если рассматривать конкретно wiki-сайты, то даже на Лурк или Викиреальность попасть проблематично, не говоря уже о таком гиганте как Википедия. Хотя потом я нашел пару небольших wiki-порталов без цензуры, для которых написал два уникальных обзора на свой чат. Они меня и вдохновили на создание свободного wiki-ресурса для IT-разработок. Зачем писать свой wiki-движок когда есть готовые? Ну во-первых мне это было интересно. Создать готовый сайт по шаблону в несколько кликов — скучно и не заслуживает внимания аудитории. А новая разработка со своим интерфейсом вероятно активнее будет привлекать интерес. К тому же мне кажется проще написать код под определенные задачи с нуля, взяв за основу какой-либо фреймворк для упрощения разработки, чем переделывать нагромождения чужого кода под себя. Подробнее о wikiclick.ru Wikiclick.ru — это свободная веб-энциклопедия об IT-разработках. Здесь Вы можете написать о своем сайте, приложении, сервисе, игре или другой разработке, например о своем фреймворке или библиотеке и Ваша статья не будет расценена как спам. А навигатор автоматически создаст древовидное оглавление для Вашей страницы по h1-h6 заголовкам. На странице с Вашим проектом также будет доступно обсуждение в виде дерева комментариев. Созданную страницу можно будет найти в журнале версий, в поиске по сайту, выборке по указанным тегам, или в соответствующем разделе, к которому относится Ваша разработка. В обзоре проекта можно ограничиться лишь небольшим описанием, а сообщество со временем дополнит статью. Также Вы можете прикрепить картинки. Сейчас модно делать мультиязычные сайты, но прошлый проект научил меня, что я понятия не имею как продвигать сайт в другой стране, и как его модерировать, когда знаешь только технический английский, поэтому я отбросил эту идею еще на старте. Хотя, возможно, я в дальнейшем реализую мультиязычность в самом движке. О движке WikiClick Сервер написан тяп-ляп — много дублирующегося кода, комментарии полностью отсутствуют, а некоторые строки написаны в обход методов фреймворка, например визуализация. Но в остальном я его причесал: он отлично работает и быстро настраивается под себя (если только Вас не смущает отсутствие админки). Вся разработка WikiClick заняла у меня около месяца. Мне нравится, каким получился движок WikiClick — он компактный, красивый, быстро работает, код сервера уложился в 1000 строк. В журнал версий новая запись идет только в том случае если страница написана с другого ip или в другой день — этот механизм позволяет сохранять все ключевые версии страницы, не набирая кучу идентичных дубликатов с правками от одного пользователя. Свои комментарии сохраняются в сессию, и пока она не истекла, их можно отредактировать. Хорошая адаптивная верстка почти сходу налезла на мобильную версию. Обсуждение в виде дерева комментариев внизу страницы кажется более удобным чем на Википедии или на Лурке (Хотя я не являюсь активным участником этих проектов и мое мнение спорное). Использование HTML-кода в содержании страниц выглядит более гибким и скорее всего будет более привычно разработчикам. А навигатор по заголовкам получился гораздо проще тех, что я нашел в интернете, и работает на стороне клиента, не создавая нагрузку на сервер. Он выполнен на jquery и подходит для повторного использования, хотя требует от автора соблюдения последовательности заголовков: if ($('.cords').length) {
$h = 'h1, h2, h3, h4, h5, h6'; $ah = $('article').find($h); if ($ah.length >=3) { $('.cords').html('<div>Справка</div><ul class="level0" data-level="0"><ul>'); $ol = $('.level0'); $str = ''; $.each($ah, function(i, elm) { if (i < $ah.length-1) { a = $ah.eq(i).prop('tagName'); b = $ah.eq(i+1).prop('tagName'); } $(this).html('<selection id="H'+i+'">'+$(this).html()+'</selection>'); $str += '<li><a href="#H'+i+'">'+$(this).text()+'</li>'; if (i < $ah.length-1 && a>b) $str+='</ul>'; if (a<b && !(a=='H1' && b=='H2')) $str += '<ul>'; if (i == $ah.length-1) { for (i = parseInt($(this).prop('tagName').substring(1)); i>=3; i--) { $str += '</ul>'; } console.log($str); $ol.html($str); } }); } } P.S.: надеюсь, мой велосипед смог Вас заинтересовать (будем считать это бета-тестом). Ссылки wikiclick.ru Проект на GitHub =========== Источник: habr.com =========== Похожие новости:
Разработка веб-сайтов ), #_razrabotka_igr ( Разработка игр ), #_razrabotka_mobilnyh_prilozhenij ( Разработка мобильных приложений ), #_razrabotka_pod_linux ( Разработка под Linux ), #_razrabotka_pod_windows ( Разработка под Windows ) |
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 16:53
Часовой пояс: UTC + 5