Продолжаем публиковать обзоры open source проектов, наиболее популярных на сайте Github за неделю.
1. Free-for-dev: список SaaS, PaaS и IaaS провайдеров, программ и веб-сервисов, полезных для разработчика, с бесплатными тарифными планами. Очень правильный список: зачем тратить деньги, если всё можно получить на халяву?
2. React Native: фреймворк для создания нативных мобильных приложений средствами React и JavaScript. Фреймворк разработан компанией Facebook и выложен в свободный доступ. Официальный сайт.
3. Fresco: мощная библиотека Android для управления изображениями внутри приложений и занимаемой ими памятью, официальный сайт. Разработка инженеров из Facebook.
4. Airbnb JavaScript Style Guide: руководство по грамотному (красивому) использованию JavaScript от Airbnb.
5. France.code-civil: энтузиасты выложили на Github весь Гражданский кодекс Франции. Предполагается, что с помощью Git проще отслеживать изменения в нормативных актах и совместно редактировать новые версии законов.
6. Loaders.css: коллекция анимированных CSS для визуализации процесса загрузки, демо.
7. HTML-GL: исключительно быстрый рендеринг HTML/CSS элементов в виде графики WebGL (60 FPS), демо.
8. iOS Charts: адаптированная версия великолепной библиотеки MPAndroidChart для работы с графиками/диаграммами в приложениях под Android.
9. YAPF: переформатирование кода Python в единообразном стиле, чтобы код от разных авторов в разных частях проекта приобретал одинаковый вид. Идея в том, что программист может писать как ему удобно, а не подчиняясь давлению начальника о «правильном» стиле форматирования. Затем YAPF наводит красоту.
Пример страшного кода на входе.
x = { 'a':37,'b':42,
'c':927}
y = 'hello ''world'
z = 'hello '+'world'
a = 'hello {}'.format('world')
class foo ( object ):
def f (self ):
return 37*-+2
def g(self, x,y=42):
return y
def f ( a ) :
return 37+-+a[42-x : y**3]
Результат форматирования.
x = {'a': 37, 'b': 42, 'c': 927}
y = 'hello ' 'world'
z = 'hello ' + 'world'
a = 'hello {}'.format('world')
class foo(object):
def f(self):
return 37 * -+2
def g(self, x, y=42):
return y
def f(a):
return 37 + -+a[42 - x:y ** 3]
10. Echo: быстрый HTTP-маршрутизатор (нулевое распределение памяти) плюс миниатюрный веб-фреймворк на Go, официальный сайт.