Перейти к публикации
Форум - ComputerCraft
cyber01

Репозиторий программ на Lua

Рекомендованные сообщения

Представляю вам свою разработку: Репозиторий программ на Lua мода Opencomputers.
Адрес: http://rep.computercraft.ru/
Сделан для того, чтобы собрать имеющиеся у пользователей программы, для удобства доступа к ним.
Проще говоря, чтобы программы "не затерялись в глубинах форума".
Сам по себе сервис не хранит программы, а является своеобразным индексом т.е. хранятся только ссылки на программы (ссылка на тему форума и ссылка на Pastebin).
 
Доступно несколько базовых категорий программ:

  • Программы для робота
  • Сетевые программы
  • Утилиты
  • Игры
  • Библиотеки
  • Управление редстоуном
  • Управление компонентами модов
  • Безопасность

О каждой программе содержится следующая информация:

  • Название
  • Версия
  • Автор
  • Дата загрузки
  • Категория
  • Ссылка на Pastebin
  • Ссылка на тему на форуме
  • Краткое и полное описание

Также доступна возможность скачать программу через сайт, это будет полезно тем, у кого pastebin.com заблокирован провайдером. А также, чтобы не запоминать комбинации вроде fga7aw6 с Pastebin,а добавить программу в репозиторий и загрузить её просто указав ее индекс (например 1) и все.
 
Авторизация происходит по данные с форума, поэтому требуется ввести логин и пароль с форума.
После авторизации пользователю доступны базовые функции по управлению программами:

  • просмотр списка своих(добавленных пользователем) программ
  • редактирование программы
  • удаление программы

Проект все еще находится на стадии разработки, поэтому возможны ошибки в работе.

Время на его разработку не всегда находится, а также не хватает знаний на некоторые моменты, поэтому буду делать по мере возможностей.
 
Известные ошибки:

  • При наличии в названии/версии/описании символа / (слеш) программа не добавляется, а форма обнуляется.
  • При наличии в названии/версии/описании символа () (скобки) программа не добавляется, а форма обнуляется.
  • При ошибке форма обнуляется

Планы на разработку и улучшение (приоритетные выделены):

  • Добавить страничку контактов
  • Админпанель
  • Премодерация программ (возможно)
  • Смена оформления при просмотре программы/категории
  • Система оценки/рейтингов программы
  • Счетчик скачивания программ
  • Комментарии к программам
  • Возможность добавить программу в несколько категорий
  • Подобие API
  • Клиент под ОС
  • Зависимости библиотек
  • Теги
  • Обновление списка категорий
  • Поиск по репозиторию (под вопросом)
  • Поддержка github/gist
  • Список последних программ на главной
  • Сортировка программ в просмотре категорий по дате (от новых к старым)

Авторы идеи@@SDV@@Alex

Реализация@@cyber01

 

В связи с недостатком времени и некоторой потерей интереса к разработке - выкладываю код репозитория на Github. Ваши изменения (если конечно оно будет адекватным) буду уже заливать "в продакшн". Жду пулл реквестов, если таковые будут.

 

P.S. местами (а может и везде) там лютый быдлокод, прошу не ругать - все таки не программер я.

Изменено пользователем Alex
  • Like 5

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Надо сделать маленькую библиотеку, которая будет скачивать другие библиотеки из этого репозитория на подобии require(). Не буду сейчас объяснять, как это будет работать, но думаю многим понравится. Давно хотелось что-нибудь такое сделать, но репозитория тогда не было.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Надо сделать маленькую библиотеку, которая будет скачивать другие библиотеки из этого репозитория на подобии require(). Не буду сейчас объяснять, как это будет работать, но думаю многим понравится. Давно хотелось что-нибудь такое сделать, но репозитория тогда не было.

Будет прога на ОС, которая позволит помечать галочками то, что пользователь захочет скачать

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А давайте я вам редизайн сделаю?

Могу набросать другой дизайн, но с обещанием, что вы его потом прикрутите и я буду главным по дизайну.

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Кто будет (и будет ли) заниматься модерированием репозитария? Не завалят его хелоувордами?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Кто будет (и будет ли) заниматься модерированием репозитария? Не завалят его хелоувордами?

Будет админка, можно будет модерировать. Так же на проги нужно, скорее всего, будет сделать премодерацию перед публикацией.

 

Ну и "хелоуворлдщиков" отлучать от репы :D

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

@@Krutoy,а чем текущий не нравится (просмотр категории/программы не в счет)?

@@Zer0Galaxy, будет админка - будет модерация, пока что доступно всем и каждому...

 

Если есть какие-либо предложения по данным, которые нужно показывать у каждой программы или по категориям - пишите 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

@@cyber01, будет возможность добавить скриншот на страницу описания, кроме картинки в табличке?
Думаю это позволит более полно представить программу, да и выглядеть должно неплохо.
Как вариант, чтобы не забивать диск сервера - можно сделать добавление скриншота по внешней ссылке.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Думаю можно эту самую картинку заменить на скриншот т.к. мало кто делает нормальный логотип-изображение своей проги...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Думаю можно эту самую картинку заменить на скриншот т.к. мало кто делает нормальный логотип-изображение своей проги...

 

Как вариант - сделать там не логотип, а фрагмент скриншота. Выбранный рандомно - программой, либо пользователем - при заливе.

 

P.S. С вебом я "на Вы", поэтому не представляю сложность реализации.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В принципе можно оставить там скриншот (той же ссылкой),а подробнее уже искать на форуме например..

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

@@Krutoy,а чем текущий не нравится (просмотр категории/программы не в счет)?

Сейчас хорошо, но слишком просто. Да и лишние клики приходится делать. И отображение нужно делать не по категориям, а по фильтрам. Тобишь, категории должны выбираться галочками и автоматически обновляться, как на популярный сайтах-магазинах.

Еще, я бы хотел переделать просмотр категорий. Этот список с автором и прочим неоч.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А чем плох простой дизайн? Давайте усложним, чтобы каждая страница весила по 500кб и открывалась несколько секунд...

О каких лишних кликах идет речь?

Фильтры - лишний функционал по следующим причинам:

1. Данных (да и параметров по которым их можно отсортировать) совсем немного

2. Категории - единственный "фильтр", который стандартизован (придерживается какой-либо политики именования и прочее) т.к. пользователи в названии и прочих параметрах могут писать всё, что угодно.. а по этой каше сложно будет что-либо отсортировать

3. У нас не сайт-магазин, не надо сравнивать теплое с мягким.

 

Если внимательно читал шапку - просмотр категорий и программ (сам дизайн) будет переделываться (правда не знаю когда).

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
...

 

Некрасиво и все. Надо что-то красивое, молодежное, интересное, а не банальный бутстрап.

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

@@LeshaInc, а чем тебе не нравится Bootstrap, ты у себя его лепил везде где только можно и теперь он тебе не нравится...

Просто и легко вот и все.... 

 

 

P.S. и еще напомню, что это все таки первый публичный тест... до этого только ковырялся я сам, да скрины алекс и рид видели..

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

@@LeshaInc, а чем тебе не нравится Bootstrap, ты у себя его лепил везде где только можно и теперь он тебе не нравится...

Просто и легко вот и все.... 

 

Раньше нравился, теперь не нравится. У меня есть куча причин на то что он мне не нравится, но описывать их не буду, ибо баба яга удалит за оффтоп.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Можешь аргументы озвучить в личку..

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

 

 

Давайте усложним, чтобы каждая страница весила по 500кб и открывалась несколько секунд...
Ты еще сделаешь это сам, без моей помощи.

 

 

О каких лишних кликах идет речь?

Фильтры - лишний функционал по следующим причинам:

1. Данных (да и параметров по которым их можно отсортировать) совсем немного

2. Категории - единственный "фильтр", который стандартизован (придерживается какой-либо политики именования и прочее) т.к. пользователи в названии и прочих параметрах могут писать всё, что угодно.. а по этой каше сложно будет что-либо отсортировать

3. У нас не сайт-магазин, не надо сравнивать теплое с мягким.

 

Если внимательно читал шапку - просмотр категорий и программ (сам дизайн) будет переделываться (правда не знаю когда).

Во-первых, сразу должен открываться список с сортировкой "по дате" (новые всерху).

Фильтры - не лишние. Просто сделать все эти "категории" в виде галочек а не ссылок, и при клике обновлять только правую часть страницы со списком.

И сами категории, я бы переделал. Такое длинное название "Управление компонентами модов" нужно не только прочитать, но и еще понять, что означает.

 

Я предлагаю прежде всего помощь. Потом не говори, что "никто не хочет помогать".

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Идея с пересекающимися тегами-фильтрами неплоха. На мой взгляд.

Сейчас разделы слегка неоднозначны. "Чат на очках OpenGlasses" может лежать как в "Сетевых программах", так и в "Интеграции с модами".

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Мои реквесты.

  1. Моя программа "Автокрафт на ОС" состоит из 2 частей: для компьюетра и робота, первая часть состоит из трёх файлов, вторая — из двух. А теперь вопрос: как мне разместить всех их:
    1. В одном пакете;
    2. С несколькими категориями;
    3. С несколькими пастами-файлами;
    4. С описаниями к файлу каждому;
    5. С возможностью выборочного сохранения (при условии проги под ОС)?
  2. Далее, реквестирую систему зависимостей. Предложение на странице проги скачать ещё зависимости (ссылки, соответственно), и под ОС нужно реализовать тоже это.
  3. Собственно, программа под OpenComputers :)
  4. Поиск по репозиторию.
  5. Тэги.
  6. Лист последних прог в репе на главной странице.
  7. И поддержка gist.github.com.

А идея мне нравится.

Изменено пользователем Fingercomp

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Моя программа "Автокрафт на ОС" состоит из 2 частей: для компьюетра и робота, первая часть состоит из трёх файлов, вторая — из двух. А теперь вопрос: как мне разместить всех их...

Такой гибкой системой хранения репа пока не обладает, очевидно же.

Нужен универсальный инталятор, который на любом устройстве (робот, ПК1, еще один ПК2 и т.д.) установит по выбору юзера через менюшку-диалог нужный пак программ (файлов), да еще и конфиги при установке запросит. И в описании это указать. А паст-код на сам инсталятор и указать в поле.

 

А так же спасает ссыль на форум, где это тоже подробно расписано,  если проект масштабный. Это же не репа для андроида, где любая прога в одном файлике .apk

 

Текущая репа, это каталог ссылок на проги и их описание, чтобы не рыться форуме в куче какашек ненужных. Все что требует установки SQL баз, php скриптов и прочего, в репу пока одним файлом не прикрутить никак к одной пастовской ссылке, это же ясно, как попа младенца. :)

 

Идея с пересекающимися тегами-фильтрами неплоха. На мой взгляд.

Сейчас разделы слегка неоднозначны. "Чат на очках OpenGlasses" может лежать как в "Сетевых программах", так и в "Интеграции с модами".

Это да, удобно было бы указать несколько категорий сразу, диапазон дат загрузки, минимальный рейтинг, автора вписать пару букв в поле и лента динамично выводит все мгновенно по этим фильтрам. Но это адски сложно пока сделать, так как нет там пока не рейтинга, ни прочего, и не на этапе первого релиза=)

 

 

П.С. А категории нужно просто желаемые кидать сюда в топик, Серега прикрутит, а также сделать категорию "Общие" или  "Я даже не знаю, что у меня за прога и куда ее запихать и что я вообще писал и зачем" :D 

 

И Серега прикрутит, я думаю, в запрос ORDER BY date DESC там как-то, чтобы новые проги в ленте выводились сверху. Это мелочи. Нужно подумать, чем нам еще эту репу наполнить :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

По поводу списка категорий и их названиях - список был первым, что пришло в голову Алексу, просто сделал как демовариант.

@@Fingercomp,

1. Я думаю можно решить через систему зависимостей. Разместить как 2 пакета..

2. Система зависимостей уже есть в планах

3. Вроде как рид собирался, но для этого нужно API`шку

4. Записал в планы

5. Возможно сделаю

6. Записал в планы

7. Обдумаю

 

 

Некоторые моменты еще не знаю как реализовать т.к. программист из меня как из Лёши майнер

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Просьба - напишите приблизительный список категорий, которые должны быть - сделаю

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Тут надо подумать, по каким признакам делать теги.

 

По платформе:  OpenComputers, ComputerCraft (можно добавить теги аддонов)

По "железу":  компьютер, робот, дрон, микроконтроллер, нанобот

По типу приложения:  библиотека, клиент / сервер, графическое приложение, консольная утилита, прошивка чипа, операционная система, графическая оболочка

По области применения:  графика, сеть, добыча ресурсов, строительство, программирование, декор, навигация, игра, ерунда, что-то еще.

Изменено пользователем Totoro
  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Речь не о тегах,а о категориях... это глобальный классификатор,а теги уже второстепенные

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

P.S. мультикатегории для программ сделать довольно проблемно т.к.:

1. Не хватает знаний на реализацию (пару моментов)

2. Придется переписать примерно половину всего :)

 

Так что мультикатегории пока что на второй план отодвигаю

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Категория: "Не определился"?

А вообще, конечно, нужен выбор нескольких категорий. Вывод на юзер-стороне делается очень просто: http://getbootstrap.com/css/#selects

Но вот над хранением нужно думать. Например, отделять в БД символом вроде ";".

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

 

Можно по другому, можно 'в поисках музы', или 'в поисках истины'.

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Можно создать отдельную таблицу "теги", хранить в ней id тега и id программы с таким тегом. Ещё таблицу "существующие теги", записывать сюда id тега и текст тега.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Например, отделять в БД символом вроде ";".

 

Это противоречит  реляционной модели данных и закону Первой нормальной формы. Если это телевизор, то это телевизор, а если унитаз то унитаз. Есть электроника. Есть сантехника. Там структура данных в базе совершенно не подразумевает принадлежность к нескольким категориям.

 

А во-вторых, открыл Вася " Проги для робота" Ему выкинуло 50 программ. Открыл " Копалки" ему выкинуло 50 программ тех же. Это не нужно. Вот поиск по автору, или например, показать категорию " Сетевые проги" с  рейтингом +300, это другой компот совершенно. Это нужные  доп. фильтры.

 

Просто придумайте 20-30 категорий, и ноу проблемс.

 

П.С, Перед размещение в репе нужно четко понять, какая главная цель программы. Если даже это часы, которые по вай-файке передают время, это никак не сетевая программа. Это часы, то есть какая-то украшалка, или декор.

 

И если мой Титан принтит процесс добычи руд на очки, это явно не прога для очков, а это копалка, так ведь? А почему? А потому что  ее главная задача - КОПАТЬ.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

×