Итак, вы хотите начать работу над I2P? Отлично! Вот краткое руководство по началу работы: внесение вклада в веб-сайт или программное обеспечение, разработка или создание переводов.
Еще не готовы к программированию? Попробуйте сначала принять участие .
Знакомство с Java
I2P router и его встроенные приложения используют Java в качестве основного языка разработки. Если у вас нет опыта работы с Java, вы всегда можете ознакомиться с книгой Thinking in Java
Изучите введение в “как это работает”, другие документы “как”, техническое введение и связанные документы:
- Как вступление: Введение в I2P
- Центр документации: Документация
- Техническое введение: Техническое введение
Это даст вам хорошее представление о том, как устроен I2P и какие различные функции он выполняет.
Получение кода I2P
Для разработки router или встроенных приложений необходимо получить исходный код.
Наш текущий способ: Git
I2P имеет официальные Git-сервисы и принимает вклады через Git на нашем собственном GitLab:
- Внутри I2P: http://git.idk.i2p
- Вне I2P: https://i2pgit.org
Клонируйте основной репозиторий:
git clone https://i2pgit.org/I2P_Developers/i2p.i2p.git
Зеркало только для чтения также доступно на GitHub:
- Зеркало на GitHub: github.com/i2p/i2p.i2p
git clone https://github.com/i2p/i2p.i2p.git
Сборка I2P
Для компиляции кода вам потребуется Sun/Oracle Java Development Kit 6 или выше, либо эквивалентный JDK (настоятельно рекомендуется Sun/Oracle JDK 6) и Apache Ant версии 1.7.0 или выше. Если вы работаете с основным кодом I2P, перейдите в директорию i2p.i2p и выполните команду ant, чтобы увидеть доступные варианты сборки.
Для сборки или работы над переводами консоли вам понадобятся инструменты xgettext, msgfmt и msgmerge из пакета GNU gettext.
Для разработки новых приложений смотрите руководство по разработке приложений .
Идеи для разработки
См. список TODO проекта или список задач на GitLab для идей:
- Проблемы GitLab: i2pgit.org/I2P_Developers/i2p.i2p/issues
Предоставление результатов
См. нижнюю часть страницы лицензий для требований к правам commit. Они вам нужны для добавления кода в i2p.i2p (не требуется для веб-сайта!).
Узнайте о нас!
Разработчики общаются в IRC. С ними можно связаться в различных сетях и во внутренней сети I2P. Обычно их можно найти в канале #i2p-dev. Присоединяйтесь к каналу и поздоровайтесь! У нас также есть дополнительные рекомендации для постоянных разработчиков
.
Переводы
Переводчики сайта и консоли роутера: См. Руководство для новых переводчиков для дальнейших шагов.
Инструменты
I2P — это программное обеспечение с открытым исходным кодом, разработка которого в основном ведется с использованием инструментов с открытым исходным кодом. Проект I2P недавно получил лицензию на YourKit Java Profiler. Проекты с открытым исходным кодом имеют право получить бесплатную лицензию при условии, что на веб-сайте проекта будет размещена ссылка на YourKit. Пожалуйста, свяжитесь с нами, если вы заинтересованы в профилировании кодовой базы I2P.
YourKit любезно поддерживает проекты с открытым исходным кодом своими полнофункциональными профилировщиками. YourKit, LLC — создатель инновационных и интеллектуальных инструментов для профилирования Java и .NET приложений. Ознакомьтесь с ведущими программными продуктами YourKit: