Censorship.no – браузер использующий протоколы BitTorrent и Ouinet для доступа к заблокированной информации. Задачи от CENO включают в себя: популяризацию браузера среди нетехнических пользователей (мемы, видео-контент, карточки для соцсетей); улучшение работы протокола Ouinet; разработку плагина CENO для Chrome и другое.
Задача 1: Расширение для браузера (или интеграция его как дополнительной функции в расширении CENO).
Расширение для браузера, которое отслеживает общий размер кэша «lifetime», количество одноранговых узлов, которым вы предоставили общий доступ, и количество общих групп.
Создайте всплывающую кнопку «Поделиться» на панели инструментов, чтобы показать короткое, предварительно заполненное, но настраиваемое сообщение с призывом к действию для социальных сетей, которое конечный пользователь может легко скопировать, вставить и хвастаться в социальных сетях.
Что-то вроде: «Я поделился XXX страницами и XXX ГБ контента с помощью CENO по <какой-то мотивирующей причине здесь>, <чтобы помочь с..>, <что-то еще?>, посетите <какой-то сайт, например, sharethewebwithceno.com> и присоединитесь мне.»
- Требования: ++ (C++, Javascript, HTML)
- Что мы ждём в итоге? Настраиваемая опция в клиенте Ouinet, которая включает постоянный подсчет размера кеша за все время существования и общих групп. Веб-API для доступа к этой функции. Способ управления и просмотра функции в расширении CENO.
- Критерий успешности выполненной задачи: продемонстрируйте, что клиент Ouinet может отслеживать размер lifetime кэша и количество общих групп даже после очистки кэша.
- Идеальный размер команды: 2-3 человека
- Приз: 1000 $
- Вариант: это большое задание также можно разбить на более мелкие задания с меньшими призами за каждое:
- Задача № 1: создать клиентскую функцию Ouinet, которая постоянно отслеживает жизненный кеш ($500).
- Задача № 2: добавить в веб-API клиента Ouinet, чтобы эту функцию можно было контролировать и наблюдать ($250).
- Задача № 3: использовать веб-API в расширении CENO для управления функцией и ее отображения ($250).
Задача 2: Интеграция библиотеки Ouinet в потоковые приложения
Используйте Ouinet в качестве механизма запроса для популярного потокового внешнего приложения (поищите несколько примеров приложений на F-Droid, например.
https://f-droid.org/packages/org.schabi.newpipe
https://github.com/Shabinder/SpotiFlyer
https://github.com/z-huang/InnerTune
Бонусные задачи:
- Включить/выключить Ouinet в настройках
- Включить или отключить различные механизмы запроса; Происхождение, общедоступная сеть, совместное использование другими пользователями
Требования: ++ (Kotlin/Java, навыки разработки под Android)
Результат: форк-репозиторий приложения, используемый в качестве основы, из которой можно построить полнофункциональный APK. - Критерий успешности выполненной задачи: Включает README, в котором объясняется, как собрать и запустить приложение.
Приложение должно извлекать содержимое, используя только сеть p2p Ouinet: ouinet.Config.setDisableOriginAccess(true)
Идеальный размер команды: 2 человека - Приз: 600 долларов.
Использованная литература:http://ouinet.work/docs/integration/
https://github.com/equalitie/ouinet-examples/
https://github.com/censorship-no/ceno-docker-client/blob/main/ouinet-client.conf