أكثر

استخدم Esri Geoservices REST كخلفية لإطار عمل ويب Python (Django؟)

استخدم Esri Geoservices REST كخلفية لإطار عمل ويب Python (Django؟)


أرغب في معرفة ما إذا كان من الممكن استخدام إطار عمل ويب Python موجود مثل Django / GeoDjango كواجهة أمامية للعمل مع Esri's Geoservices REST API؟ أتخيل تطوير محرك قاعدة بيانات يصل إلى نقاط نهاية REST في JSON مثل "جداول" قاعدة البيانات. تم تصميم Django Admin و Django Forms بشكل جيد للغاية وأعتقد أنهما يمكن أن تكونا بمثابة واجهات رائعة لإضافة وتغيير وحذف كل من الجداول المكانية وغير المكانية ، خاصة تلك التي لها علاقات.

تحرير: عندما أفكر أكثر في هذا الأمر ، ربما لا يتعلق الأمر بتغيير الكود المصدري لـ Django ، ولكن بدلاً من ذلك تصميم تطبيق الويب لدعم الاحتياجات. توفر النماذج تخزينًا لروابط خدمة الخرائط وتوفر طرق العرض وظيفة CRUD من خلال المكالمات إلى نقاط نهاية REST.


لا تعرض واجهة Esri REST api أي وظائف إدارية للجدول / الطبقة ، لذا لا يمكنك حقًا استخدامها لإضافة / تغيير / حذف الخرائط أو مخطط الطبقة. إنه يسمح لـ CRUD على الميزات داخل كل جدول بالرغم من ذلك.

لذلك ، كان بإمكاني رؤية الواجهة الأمامية لطبقة مميزة فردية عبر GeoDjango (باستخدام الطبقة المميزة كـ "جدول") ولكنك ستتمكن فقط من الاستعلام عن الميزات وتعديلها داخل الجدول (وليس مخططها)

المضي قدمًا في حلهم المستضاف على ArcGIS.com ، لا يزال من غير الواضح ما إذا كانوا سيسمحون بوصول REST إلى وظائف المسؤول. على سبيل المثال ، فإن معظم العروض التوضيحية التي يعرضونها لتعيين ملف الشكل / csv بالسحب / الإفلات لا تنشئ فعليًا أي طبقات FeatureLayers ، بل تتم إضافتها كميزات فردية إلى json للخريطة (مثل طبقة رسومات أكثر فاعلية). نأمل إذا قاموا بإضافة وظائف مسؤول المخطط ، فسيتم تحديث مواصفات REST الجغرافي أيضًا.

في صحتك بريان


هذا ممكن تمامًا ، لكن لم يفعله أحد بعد. يستخدم Arc2Earth تنفيذًا مستقلاً لواجهة برمجة تطبيقات Esri REST للاستضافة على Google App Engine. كما أن تنفيذ REST API يجعل من الممكن القيام بأشياء مثل عرض خدمات المعالجة الجغرافية وطبقات المعالم للتحليل في ArcGIS Explorer.


إنه أصعب مما يبدو. نماذج Django ، في الوقت الحالي ، مرتبطة إلى حد كبير بعالم قاعدة بيانات SQL والمسؤول ، بدوره ، مرتبط إلى حد كبير بنماذج Django.

ربما يكون أفضل رهان لك هو النظر إلى شيء مثل Django-nonrel

http://www.allbuttonspressed.com/projects/django-nonrel


يقوم ArcGIS بإصدار API لـ Python في فبراير 2017 ، وأعتقد أن هذا هو الطريق الآن (بعد 6 سنوات)

https://developers.arcgis.com/python/


أحدث المساهمات من قبل MrG

منذ بعض الوقت ، استخدمت الأمر Viewshed2 الذي يستخدم معالجة CUDA لتسريع حسابات الرؤية باستخدام الحل الجيوديسي الكامل. لتسخير قوة إحدى وحدات معالجة الرسومات الخاصة بي ، قمت بتعيين env CUDA_VISIBLE_DEVICES = 0

يبدو أن متغير env هذا يتجاوز أي GPU تشير إليه في Pro GUI ، لذلك إذا كان لديك العديد من وحدات معالجة الرسومات على نظامك ، فلا تنس أن تترك رقم GPU في Pro دائمًا على 0 ، واستخدم متغير CUDA_VISIBLE_DEVICES للإشارة إلى GPU ذلك تريد استخدامه. على الأقل هذا قد حل المشكلة بالنسبة لي.

قبل ذلك ، تحققت من أن برامج تشغيل CUDA الخاصة بي مثبتة بشكل صحيح ، وأن النطاق الترددي مع وحدة معالجة الرسومات الخاصة بي كان سليمًا ، وما إلى ذلك. هذا معقد للغاية لكنه يعمل.


ArcGIS Online وخدماته

يشير تعريف SaaS إلى أن جميع مكونات نظام الحوسبة يتم توفيرها وإدارتها بواسطة مزود الخدمة السحابية ، مما يتيح للعميل التركيز فقط على استخدام الموارد أو استهلاكها. ArcGIS Online هو مثال على هذا المستوى من الخدمة. كما لاحظت في الدرس 2 ، يمكن استخدام ArcGIS Online كلوحة لإنشاء مجموعات خرائط الويب ، والجمع بين الخدمات من مصادر متعددة. ستفعل المزيد من هذا في هذا الدرس. لكنك ستذهب أبعد قليلاً وترى كيف يمكن استخدام ArcGIS Online كموقع استضافة لخدمات الويب والتطبيقات الخاصة بك.

خدمات الاستضافة على ArcGIS Online

يمكن لـ ArcGIS Online استضافة خدمات الويب إلى حد كبير بالطريقة التي يمكن أن يستضيف بها ArcGIS Server خدمات الويب. هذا يعني أنه يمكنك إنشاء خريطة في ArcMap ، واختيار File & gt Share As & gt Service كما فعلت دائمًا ، واختر استضافة الخدمة باستخدام خوادم ArcGIS Online بدلاً من ArcGIS Server الخاص بك. في الواقع ، هناك نقاط دخول أخرى لنشر خدمة لا تتطلب ArcMap ، مثل تحميل ملف CSV أو ملف شكل ونشره.

نظرًا لأن Esri تقوم بتسويق ArcGIS Online للأفراد والمجموعات الذين قد لا يكونون على دراية بـ ArcGIS Server أو لغة GIS الفنية ، فإنهم لا يستخدمون مصطلح خدمات الويب في وثائق ArcGIS Online بدلاً من ذلك ، يستخدمون المصطلح "طبقات الويب المستضافة". ومع ذلك ، تستخدم طبقات الويب المستضافة نفس مواصفات Esri GeoServices المستخدمة بواسطة خدمات ArcGIS Server. لذلك ، تبدو التعليمات البرمجية التي تكتبها للتفاعل مع هذه الخدمات مشابهة جدًا للكود الذي ستكتبه لـ ArcGIS Server.

تكلف استضافة طبقات الويب في ArcGIS Online أموالاً. تشتري مجموعة من "الاعتمادات" من Esri ، ويتم استهلاك هذه الاعتمادات عندما تستهلك موارد متنوعة في ArcGIS Online ، مثل تحميل البيانات وخدمات الاستضافة. تعرض صفحة نظرة عامة على أرصدة الخدمة التكلفة في الاعتمادات للإجراءات المختلفة.

أنواع طبقات الويب التي يمكن أن يستضيفها ArcGIS Online محدودة مقارنة بـ ArcGIS Server. في الأصل ، يمكن لـ ArcGIS Online استضافة (نقطية) خدمات الخرائط المتجانبة وخدمات المعالم فقط. في الآونة الأخيرة ، تمت إضافة طبقات لدعم العروض ثلاثية الأبعاد (طبقات المشهد وطبقات الارتفاع). تعتبر طبقات تجانب البيانات الاتجاهية جديدة أيضًا ولا يمكن نشرها إلا من خلال ArcGIS Pro.

هناك العديد من مهام سير العمل التي يمكنك إجراؤها لإعداد الطبقات المستضافة ، اعتمادًا على مقدار برنامج GIS الذي قمت بتثبيته في الموقع. وخير مثال على ذلك هو البلاط النقطي. يمكنك إنشاء تجانبات ذاكرة التخزين المؤقت اختياريًا باستخدام ArcGIS Online (الذي يكلف الاعتمادات) أو يمكنك بناؤها بنفسك في ArcGIS Desktop وتحميلها كـ "حزمة تجانب" إلى ArcGIS Online حيث يمكن أن تتواجد كطبقة مستضافة (والتي تحفظ الاعتمادات ولكنها تأخذ المزيد من العمل). راجع مقالة "سير العمل لبناء واستضافة تجانبات الخرائط المخزنة مؤقتًا في ArcGIS" لمقارنة خيارات بناء طبقات التجانب النقطية في ArcGIS Online.

سير عمل جمع البيانات الميدانية

لقد طورت Esri عددًا من التطبيقات للحصول على البيانات في ArcGIS Online وعرضها بمجرد وجودها هناك. يعد Collector for ArcGIS أحد أكثر التطبيقات استخدامًا ، حيث يتم استخدامه لجمع البيانات في الحقل ، وأحيانًا في البيئات غير المتصلة. تقوم بتثبيت Collector على الهواتف الذكية أو الأجهزة اللوحية من متجر تطبيقات الجهاز. عندما تفتح Collector ، فإنك تتصل بخريطة الويب التي قمت بحفظها في ArcGIS Online. يمكنك بعد ذلك تنزيل بيانات الخريطة الأساسية على جهازك بحيث تحافظ على السياق الجغرافي إذا أو عندما تنقطع الاتصال بالإنترنت أثناء جمع البيانات.

عندما تخرج إلى الميدان ، يستخدم Collector نظام تحديد المواقع العالمي (GPS) الخاص بجهازك ليضعك على الخريطة. يمكنك بعد ذلك التقاط نقاط البيانات في أي مكان وتوفير سمات و / أو إرفاق صورة من كاميرا الجهاز اختياريًا. عندما تعود إلى بيئة متصلة ، يمكنك "مزامنة" بيانات الجهاز في خدمة ArcGIS Online ، حيث تكون متاحة لتطبيقات العميل الأخرى.

تُستخدم التطبيقات الأخرى مثل Esri Operations Dashboard لتصور البيانات من ArcGIS Online ، سواء تم وضعها هناك بواسطة المُجمع أو وسائل أخرى. توضح سلسلة الفيديو هذه من مؤتمر مستخدمي Esri الفيدرالي كيف يمكن لـ Collector و ArcGIS Online و Operations Dashboard العمل معًا في الوقت الفعلي. على الرغم من إجراء هذا العرض التوضيحي قبل عدة سنوات في وقت مبكر من تاريخ Collector ، إلا أنه يقوم بعمل رائع لإظهار الغرض الأساسي من التطبيق وكيف يمكن استخدامه للحصول على البيانات في هذا المجال.

كما سترى في قائمة "Up Next" على You Tube ، هناك عدد من مقاطع الفيديو للمتابعة في سلسلة Operation Gold هذه والتي يمكنك متابعة مشاهدتها لترى كيف يتم استخدام البيانات بشكل أكبر بعد جمعها.

منصة كخدمة

عندما كنت تعرض صفحة تكلفة الائتمان ، ربما لاحظت أن ArcGIS Online يقدم خدمات التكويد الجغرافي والبحث عن الأماكن (والتي تكون مجانية إلى حد ما) ، بالإضافة إلى أشياء مثل خدمات التوجيه وتحليل الشبكة. جنبًا إلى جنب مع القدرة على إنشاء تطبيقات مزج من خدمات الجهات الخارجية ، قد تحول هذه القدرات من الناحية المفاهيمية ArcGIS Online خارج فئة SaaS ونحو فئة PaaS ، حيث يصبح مكون البيانات أكثر إدارة ومعالجة من قبل العميل. ربما تكون هذه محادثة فلسفية بحتة وليست عملية ، ولكن نظرًا لاتساع نطاق الوظائف التي يوفرها ArcGIS Online ، فقد يعتبرها مستخدموها ضمن SaaS أو PaaS اعتمادًا على الطريقة المحددة التي يتم بها استخدام الموقع.

تشغيله في أماكن العمل

قامت Esri مؤخرًا بإنتاج نسخة من ArcGIS Online يمكن تشغيلها في أماكن العمل ، باسم Portal for ArcGIS. يستهدف هذا المؤسسات غير المتصلة بالإنترنت (مثل مجتمع الاستخبارات) ، والمنظمات التي تحتاج إلى مستوى أعلى من SLA (نسبة وقت التشغيل) مما يمكن لـ ArcGIS Online تقديمه ، أو المؤسسات التي لا تشعر بالراحة في الانتقال إلى السحابة حتى الآن.

Portal for ArcGIS يشبه ArcGIS Online ويشبه نفسه ، لكنه يستخدم ArcGIS Server في النهاية الخلفية لاستضافة أي خدمات منشورة بواسطة مستخدمي البوابة الإلكترونية. مسئول Portal for ArcGIS مسئول عن التأكد من أن البوابة الإلكترونية والخادم بهما أجهزة كافية لاستيعاب الطلبات والتحميلات بواسطة مستخدمي البوابة الإلكترونية. ستتعلم المزيد حول Portal for ArcGIS في الدرس 9.

استكشاف موقع ArcGIS.com على الويب

يوفر موقع ArcGIS.com على الويب عرضًا في ArcGIS Online. قد تسمع أحيانًا مصطلحات ArcGIS.com و ArcGIS Online يستخدمان بالتبادل ، ولكن يمكن الوصول إلى ArcGIS Online من خلال عملاء Esri الآخرين مثل ArcMap وبرمجيًا من خلال أي عميل باستخدام ArcGIS REST API.

قم بجولة في موقع ArcGIS.com على الويب باستخدام الخطوات أدناه.

  1. افتح مستعرض الويب الخاص بك إلى عنوان URL التالي: arcgis.com وقم بتسجيل الدخول باستخدام حساب Penn State Enterprise الذي استخدمته في الدرس 2. ArcGIS Online هو مورد مستند إلى مجموعة النظراء لعرض الخرائط الحالية وإنشاء منتجات خرائط جديدة ومشاركة الخرائط مع الآخرين . في ArcGIS Online ، يتم تقديم خدمات البيانات في نموذج الخريطة الخاص بهم ، ويتم تنفيذ عملية إنشاء خرائط جديدة وتحرير المعالم في واجهة الخريطة.
    تتوافق علامات التبويب الموجودة أعلى صفحة ArcGIS Online الرئيسية مع الإمكانات الأساسية للموقع:
    • المعرض - عرض الخرائط الموجودة
    • خريطة - إنشاء منتجات خرائط جديدة
    • المشهد - إنشاء منتجات خرائط ثلاثية الأبعاد جديدة
    • Notebook - تحليل البيانات باستخدام Python
    • المجموعات - مشاركة خرائطك مع مستخدمين معينين أو مع الجمهور (تظهر عند تسجيل الدخول)
    • المحتوى - إدارة محتوى الخريطة الذي قمت بإنشائه (يظهر عند تسجيل الدخول)
    • المؤسسة - إدارة المستخدمين والإعدادات الأخرى للمؤسسة التي ينتمي إليها حسابك (تظهر عند تسجيل الدخول)
  2. تصفح بعض الخرائط عن طريق النقر محتوى والنقر فوق ألاطلس الحي التبويب. اختر إحدى الفئات الموجودة على اليسار ، وانقر فوق بعض الصور المصغرة للخريطة المدرجة في صفحة المعرض. هناك نوعان أساسيان من الأشياء التي يمكنك فتحها هنا: الخرائط والتطبيقات. تمثل هذه المنتجات التي تم إنشاؤها بواسطة مستخدمي ArcGIS Online وتم نشرها للوصول العام. فكر في ملف خريطة الويب كلوحة العمل الخاصة بك لتجميع مجموعة من خدمات الويب في عرض قابل للتقديم يمكن بعد ذلك سحبها إلى العديد من واجهات برمجة التطبيقات أو الأنظمة الأساسية المختلفة. أ تطبيق خرائط الويب، في المقابل ، هي طريقة عرض نهائية يتم إنشاؤها باستخدام واجهة برمجة تطبيقات واحدة ويتم استضافتها للاستهلاك من قبل المستخدمين النهائيين فقط. سنركز على خرائط الويب في الوقت الحالي ، ولكن في القسم التالي من الدرس ، ستحصل على فرصة لإنشاء كل من خريطة الويب وتطبيق خرائط الويب النهائي.
  3. اختر خريطة ويب (حاول البحث عن الأعاصير والأعاصير المدارية) ، وانقر فوق عنوان الارتباط التشعبي الخاص به لفتح ملف ملخص صفحة. يرجى ملاحظة طبقات باتجاه الجزء السفلي من الصفحة. يسرد هذا القسم مصدر كل طبقة بيانات متضمنة في الخريطة المنشورة. يجب أن تلاحظ أن كل طبقة تحدد عنوان URL ، والذي يتوافق مع خادم خريطة الإنترنت الذي يتم من خلاله نشر خدمة البيانات هذه. يجب أن يشير عنوان URL إلى المضيف (على سبيل المثال ، services.arcgisonline.com) ونوع الخدمة (ArcGIS Server ، WMS).
  4. الآن ، انقر فوق فتح (أو فتح في Map Viewer) على خريطة الويب ، وافتحه في عارض خريطة ArcGIS.com. استخدم علامات التبويب الموجودة في القائمة اليمنى لاستكشاف قائمة الطبقات والأسطورة.

فكر في كيفية توافق الموقع الفعلي لبيانات المصدر ، والطريقة التي تستخدمها بها ، ومدى شفافية كل هذا بالنسبة لك مع نموذج SaaS للحوسبة السحابية. هل تم إخفاء التفاصيل الفنية الأساسية لكيفية ومكان نشر البيانات بشكل كافٍ عنك؟ لقد رأيت أنه يمكنك اكتشاف بعض هذه المعلومات ، عبر دليل الخدمات ، ولكن ليس من الضروري دائمًا معرفتها ، عند استخدام العميل المقدم بواسطة ArcGIS Online.

هذا الموقع هو مثال لمورد SaaS لأن جميع مكونات البنية التحتية تُدار بواسطة السحابة ، من الأجهزة الأساسية ونظام التشغيل ، إلى البرامج والبيانات. في الواقع ، يتم إنشاء الخرائط التي أنشأها المستخدم في معرض ArcGIS Online بشكل أساسي عن طريق تجميع وتراكب طبقات الخريطة الحالية المنشورة بالفعل في ArcGIS Online أو خوادم الخرائط الأخرى. من الممكن إنشاء بيانات جديدة في هذه البيئة عن طريق رسم الميزات كرسومات (إضافة & gt إضافة ملاحظات الخريطة). ولكن هذا هو مدى إمكانية إدارة البيانات مباشرةً ، حيث تدير ArcGIS Online Cloud تفاصيل تخزين البيانات الأساسية.


استخدم Esri Geoservices REST كخلفية لإطار عمل ويب Python (Django؟) - نظم المعلومات الجغرافية

يتم ترحيل هذا المشروع إلى GitLab: https://gitlab.com/rosarior/awesome-django. ستتم إزالة هذا المستودع بمجرد إغلاق جميع التذاكر.

قائمة منسقة من تطبيقات ومشاريع وموارد Django الرائعة. مستوحاة من ثعبان رهيبة.

الحزم التي تعمل على توسيع واجهة المسؤول ، وإضافة الميزات أو تحسينها.

    - أسلوب جديد لمشرف Django. - مظهر مستجيب لمدير Django - سمة مشرف Django باستخدام Twitter Bootstrap. - مجموعة من حقول الإدارة والديكور. - واجهة الإدارة النهائية ، بناءً على سمة مسطحة حديثة ، تتيح لك تخصيص عنوان المسؤول والشعار والألوان بواسطة المسؤول نفسه. - مجموعة من الإضافات / الأدوات لواجهة إدارة django الافتراضية - إعادة كتابة قابلة للتوسيع وقابلة للتكيف لـ django.contrib.admin - سمة مسطحة لواجهة إدارة Django. حديثة وجديدة وبسيطة. - لوحة تحكم django-admin-tools محسنة لمشاريع Django - مظهر جازي لواجهة إدارة Django. - يسمح للمستخدمين المتميزين بالاختطاف (= تسجيل الدخول باسم) والعمل نيابة عن مستخدم آخر. - واجهة إدارة قالب Mordern مع وظائف محسنة. تصميم المواد لنماذج Django والمشرف. نموذج مدفوعة. تطبيق Django لإضافة أدوات كائن للنماذج في الإدارة - سمة حديثة لواجهة إدارة Django. - شكل وأسلوب WordPress للوحة إدارة Django. - الاستبدال الفوري لمدير Django يأتي مع الكثير من الأشياء الجيدة ، قابلة للتوسيع بالكامل مع دعم البرنامج المساعد ، وواجهة مستخدم جميلة تعتمد على Twitter Bootstrap - موقع إداري لـ Django

الحزم التي تقوم بتحليلات الويب أو تدمج خدمات تحليلات الويب.

الحزم التي تساعد في إدارة الأصول الثابتة للمشروع.

    - يضغط javascript أو CSS المرتبطة والمضمنة في ملف واحد مخبأ. - تجميع أصول JavaScript و CSS وربطها. - مصغر HTML للبايثون مع دعم كامل لـ HTML 5 و Django. - تغليف الأصول لـ Django. - يجلب Django SystemJS جافا سكريبت الغد إلى Django اليوم. (دمج JSPM في Django) - تكامل حزمة الويب الشفاف لـ django. - روابط Python لـ webpack مع تكامل django.

الحزم التي تعمل على تحسين أو توسيع طرق المصادقة في Django.

    - مجموعة متكاملة من تطبيقات Django تتناول المصادقة والتسجيل وإدارة الحساب بالإضافة إلى مصادقة حساب الطرف الثالث (الاجتماعي). - حسابات متعددة المستخدمين لمشاريع Django. - إطار قابل للتوصيل لإضافة مصادقة ثنائية إلى Django باستخدام كلمات مرور لمرة واحدة. - تطبيق تسجيل مستخدم بسيط لـ Django ، مصمم لجعل السماح بتسجيل المستخدم غير مؤلم قدر الإمكان. - مجموعة من نقاط نهاية REST API للتعامل مع مهام تسجيل المستخدم والمصادقة. - المصادقة الثنائية سهلة الاستخدام. - أصبحت حسابات Django بسيطة بشكل جميل - تعد Python Social Auth عبارة عن آلية مصادقة / تسجيل اجتماعية سهلة الإعداد مع دعم للعديد من الأطر وموفري المصادقة.

الحزم المتعلقة بالبنية التحتية للترخيص والأذونات.

    - تنفيذ أذونات لكل كائن كخلفية ترخيص. - OAuth2 الأشياء الجيدة لـ Djangonauts! - توفير وصول OAuth2 إلى تطبيقك - طبقة تعديل الكائنات ، ومزجها للنماذج التي تتيح لك الإشراف على العديد من أنواع المحتوى. مكتبة أذونات مُحسّنة تتيح ملف نظام إذن قائم على المنطق للتعامل مع الأذونات المعقدة في Django - تطبيق صغير ولكنه قوي يوفر أذونات على مستوى الكائن إلى Django ، دون الحاجة إلى قاعدة بيانات. إنه في جوهره إطار عام لبناء أنظمة قائمة على القواعد ، على غرار أشجار القرار. يمكن استخدامه أيضًا كمكتبة قائمة بذاتها في سياقات وأطر أخرى.

حزم لإنشاء تطبيق مدونة وإدارته.

    - تطبيق بسيط ولكنه قوي وقابل للتمديد حقًا لإدارة مدونة داخل موقع ويب Django الخاص بك. - تطبيق مدونة Django تم تنفيذه في Wagtail.

الحزم المتعلقة ببدء مشروع جديد ذكي.

    - أداة مساعدة لسطر الأوامر تنشئ مشاريع من قوالب الكوكي (قوالب المشروع). - نموذج معياري لتطبيقات ويب Django ، يحتوي على طرق مختلفة للمصادقة الاجتماعية والعديد من أمثلة واجهة برمجة التطبيقات الشائعة. - هيكل عظمي لمشروع Django حديث ومتطور.

الحزم التي تساعد في التخزين المؤقت.

    - يخزن استفسارات Django ORM مؤقتًا ويلغيها تلقائيًا. - التخزين المؤقت والإلغاء التلقائي لنماذج Django من خلال ORM. - ذاكرة تخزين مؤقت ORM ناعمة مع إبطال تلقائي ناتج عن الحدث. - تنفيذ تقنية التحفيظ لـ Django. - مزيج إدارة ذاكرة التخزين المؤقت الذي يوفر بعض التخزين المؤقت للكائنات لـ ORM. - A Redis cache backend for django. - Johnny Cache هو إطار تخزين مؤقت لتطبيقات django.

الحزم التي تساعد في الحفاظ على توافق التطبيقات القابلة لإعادة الاستخدام بين إصدارات Django المختلفة.

    - طبقة التوافق للأمام والخلف لإصدارات Django المدعومة رسميًا. - تحقق من توافق Django مع التعليمات البرمجية الخاصة بك.

الحزم التي تنشئ لوحات معلومات لتصور البيانات.

    - إطار تطبيق لوحة معلومات معياري قابل للتخصيص لـ Django لتصور بيانات مثيرة للاهتمام حول مشروعك. مستوحى من إطار لوحة القيادة الرائع بشكل استثنائي Dashing.

الحزم التي تسهل العمل مع كميات كبيرة من البيانات.

    - يقدم إطارات بيانات Pandas الخاصة بك عبر إطار عمل Django REST للاستخدام في تصورات جانب العميل (مثل d3.js) والتحليل غير المتصل بالإنترنت (مثل Excel).

الحزم التي تضيف دعمًا لقواعد بيانات الجهات الخارجية أو ميزات خاصة بقاعدة البيانات.

    - استخدم عناوين URL لقاعدة البيانات في تطبيق Django الخاص بك. - امتدادات إلى Django للاستخدام مع MySQL / MariaDB. - حساب PostgreSQL سريع / غامض لـ Django. - تجمع اتصال Postgres لـ Django ، مدعوم من SQLAlchemy.

الحزم التي تساعد في تعقب الحشرات.

    - مجموعة لوحات قابلة للتكوين تعرض معلومات تصحيح أخطاء متنوعة حول الطلب / الاستجابة الحالية. - انخفاض في استبدال أمر runserver المدمج في Django. - البرامج الوسيطة التي تطبع عدد استعلامات قاعدة البيانات على وحدة تحكم خادم التشغيل. - التنميط السلس الحريري لـ Django - الكشف التلقائي عن مشكلة الاستعلامات n + 1 في Django (وغيرها من ORMs) - منصة حديثة لتسجيل الأخطاء وتجميعها.

الحزم التي تساعد في إدارة إرسال البريد الإلكتروني.

    - خلفية بريد إلكتروني في Django تستخدم مهمة كرفس لإرسال البريد الإلكتروني. - وحدة Django لإرسال البريد الإلكتروني / الرسائل القصيرة / الدفع / تحويل النص بسهولة باستخدام قوالب django المخزنة في قاعدة البيانات وإدارتها من خلال إدارة Django. - الإدارة القائمة على إدارة Django لحملات البريد الإلكتروني بالتنقيط - أدوات مساعدة مختلفة للبريد الإلكتروني: تشفير PGP ، قوالب متعددة الأجزاء ، خلفية اختبار متصفح الويب. - خلفية بريد إلكتروني لـ Django لـ Mailgun. - تطبيق بسيط لإرسال رسائل البريد الإلكتروني وإدارتها في Django ، ويدعم القوالب ويمكن دمجه بسهولة مع قوائم انتظار المهام. - خلفية بريد إلكتروني من Django لخدمة البريد الإلكتروني البسيطة من أمازون. - بريد إلكتروني django مدعوم لبرنامج Spoolgore daemon. - وحدة Django لإرسال رسائل بريد إلكتروني نموذجية بسهولة باستخدام قوالب django ، أو باستخدام مزود بريد المعاملات (mailchimp ، silverpop ، إلخ) - django-mailer2 + django-mailviews مع بعض الإضافات. - برمجيات وسيطة بسيطة وغير معيقة للبريد الإلكتروني من django. - خلفية البريد الإلكتروني وفئة الرسائل الجديدة لخدمة البريد الإلكتروني للمعاملات Mandrill من MailChimp.

الحزم التي تعمل على توسيع وظائف نوع الحقل الحالي أو إضافة أنواع حقول جديدة.

    - يسمح بتحميل الملفات الصوتية وإدارتها وتحويلها إلى صيغ صوتية مختلفة (mp3 و wav و amp ogg). - امتداد BitField لنماذج Django. - يوفر خيارات البلد للنماذج ورموز العلم وحقل البلد. - حقل Django المخصص لاستخدام تعداد الثوابت المسماة. - حزمة للتعامل مع الصور في Django. - المعالجة الآلية للصور لـ Django. - JSONField لنماذج Django. - مجال الموقع والقطعة مدمجة مع خرائط جوجل. - نموذج عنوان MAC وحقول النموذج لـ Django. - مكتبة Django التي تتعامل مع أرقام هاتف python للتحقق من صحة أرقام الهواتف وطباعتها وتحويلها. - حقل كائن مخلل لـ Django - أداة اختيارات متعددة أفضل وأسرع مع اقتراحات. - A UUIDField لـ Django. - بديل عن طريق django ImageField يوفر واجهة مرنة وبديهية وقابلة للتوسيع بسهولة لإنشاء صور جديدة بسرعة من الصورة المخصصة للحقل.

الحزم التي تساعد في نقل الملفات بين المشاريع والمستخدمين.

    - خدمة الملفات مع Django. - هذا هو غلاف حول طرق خادم الويب المحددة لإرسال الملفات إلى عملاء الويب.

الحزم التي تعمل على توسيع وظائف النماذج أو إضافة أنواع جديدة من النماذج.

    - الغرض من django-autocomplete-light هو تمكين الإكمال التلقائي بسرعة وبشكل صحيح في مشروع django. - Twitter Bootstrap for Django Form - استخدم Bootstrap في قوالب Django ، بطريقة Django. - أفضل طريقة للحصول على أشكال جانغو الجافة. يوفر التطبيق علامة وفلتر يتيح لك عرض النماذج بسرعة بتنسيق div مع توفير قدر هائل من الإمكانيات لتهيئة HTML المعروض والتحكم فيه. - django-floppyforms هو تطبيق يمنحك التحكم الكامل في إخراج عرض النماذج. واجهة برمجة التطبيقات والميزات للنماذج هي نفسها تمامًا مثل Django ، والفرق الرئيسي هو أن الحقول والأدوات يتم عرضها في قوالب بدلاً من استخدام استيفاء السلسلة ، مما يمنحك تحكمًا كاملاً في الإخراج باستخدام قوالب Django.

الحزم التي تسهل العمل مع مشاريع نظم المعلومات الجغرافية.

    - حقل نموذج يمكن أن يحمل موقعًا جغرافيًا (خط العرض / خط الطول) ، وعناصر واجهة استخدام المشرف / النموذج المقابلة. - مجال الموقع والقطعة مدمجة مع خرائط جوجل. - امتدادات البيانات الجغرافية لإطار Django REST. - الإضافات الجغرافية لـ Django Rest Framework.

الحزم التي تساعد في معالجة الصور أو تغييرها أو تحويلها.

    - تطبيق مساعد لاقتصاص الصور الكبيرة بشكل تعسفي بسهولة ودون إتلاف في الإدارة والواجهة الأمامية. - بديل عن طريق django ImageField يوفر واجهة مرنة وبديهية وقابلة للتوسيع بسهولة لإنشاء صور جديدة بسرعة من الصورة المخصصة للحقل.

الحزم التي تقوم بتحميل البيانات أو استيرادها أو تصديرها من مشروع.

الحزم التي تساعد في ترحيل قاعدة البيانات عند وجود تحديثات للمخطط.

الحزم التي تساعدك في دعم الأجهزة المحمولة التي تعمل بنظام iOS و Android وغيرها.

    - تطبيق Django مبسط ينفذ طرز الأجهزة التي يمكنها إرسال الرسائل عبر APNS و GCM. - تطبيق Django الذي يوفر وظيفة دفع الإخطارات مع الكرفس. الغرض الرئيسي من هذا التطبيق هو مساعدتك في إرسال الإشعارات الفورية إلى المستخدمين لديك على نطاق واسع. إذا كان لديك الكثير من مفاتيح الجهاز المسجلة ، فسيقوم django-pushy بتقسيم مفاتيحك إلى مجموعات أصغر تعمل بالتوازي مما يجعل عملية إرسال الإشعارات أسرع.

الحزم التي تعمل على توسيع وظائف النماذج أو إضافة فئات جديدة من النماذج.

    - المجاميع الشرطية لاستعلامات Django ، تمامًا مثل SumIf و CountIf الشهير في Excel. - مساعدي Django الخاصين ببلد معين ، الذين اشتهروا سابقًا. - الخلطات النموذجية Django والمرافق. - مرافق لتنفيذ شجرة اجتياز معدلة حسب الطلب المسبق في جانغو. - هياكل بيانات الشجرة البديلة لـ Django (توفر 3 طرق مختلفة لتخزين البيانات الهرمية ، بما في ذلك MPTT)

الحزم التي توفر تكامل مزود معالجة الدفع.

    - جعل Django + Stripe سهلاً. - تطبيق Django الذي يوفر مساعدين لخلفيات دفع متعددة قابلة للتوصيل. - توفر هذه الحزمة التكامل مع بوابة الدفع Adyen. إنه مصمم للعمل بسلاسة مع إطار التجارة الإلكترونية django-oscar ولكن يمكن استخدامه بدون Oscar. - توفر هذه الحزمة التكامل مع بوابة الدفع ، PaymentExpress باستخدام PX POST API. إنه مصمم للعمل بسلاسة مع إطار التجارة الإلكترونية django-oscar ولكن يمكن استخدامه بدونه. - تكامل PayPal لـ django-oscar. يمكن استخدامه بدون أوسكار أيضًا. - تطبيق Django قابل للتوصيل لدمج PayPal Payments Standard أو Payments Pro. - مكتبة Django لتبسيط معالجة الدفع باستخدام دبوس. - النماذج والأدوات وعلامات القوالب والأمثلة التي تجعل Stripe + Django أسهل.

حزم لإنشاء التقارير

    - تقارير Django متكاملة مع Highcharts. - واجهة المستخدم الرسومية لـ Django ORM. إنشاء استعلامات مخصصة وعرض النتائج. تستهدف مسؤولي النظام والمستخدمين النهائيين القادرين الذين قد لا يكونون قادرين على البرمجة.

حزم لتطوير واجهات برمجة تطبيقات RESTful.

    - أسلوب مبسط لتسلسل الكائن ، وطرق عرض RESTful ، وطرق عرض RPC. - يجعل هذا التطبيق من السهل للغاية إنشاء تطبيق صفحة واحدة أو تطبيقات الهاتف المحمول التي تعمل بنظام Django والتي تعرض جميع وظائف التسجيل والمصادقة مثل CBV (عرض قاعدة الفئة) و ​​REST (JSON) - مجموعة أدوات قوية ومرنة تسهل إنشاء واجهات برمجة تطبيقات الويب. - نكهات مترجمة لبعض المسلسلات لاستخدامها مع Django Rest Framework. - مُولِّد وثائق Swagger لإطار Django REST - واجهات برمجة تطبيقات الويب للوثائق المصممة باستخدام إطار عمل Django REST - إنشاء واجهات برمجة تطبيقات لذيذة لتطبيقات Django منذ عام 2010. - إطار REST صغير الحجم خفيف الوزن لـ Python

الحزم التي توفر إمكانيات بحث للمشاريع.

    - وحدات البحث عن Django. - البرنامج المساعد للبحث عن نص كامل سريع متعدد النماذج. - تكامل البحث عن النص الكامل لـ PostgreSQL مع django orm.

الحزم التي تعمل على تحسين أمان المشروع.

    - شاشة تسجيل دخول مسؤول Django وهمية لإخطار المسؤولين بمحاولة الوصول غير المصرح به. - هي طريقة بسيطة للغاية لتتبع محاولات تسجيل الدخول الفاشلة ، سواء بالنسبة لمسؤول Django أو لبقية موقعك. - تخفيف الانتهاك لتطبيقات Django. - إبطال جميع الجلسات النشطة بعد تغيير كلمة المرور (ليس هناك حاجة لـ Django 1.7+). - مساعدتك على تذكر القيام بالأشياء الصغيرة الغبية لتحسين أمان موقع Django الخاص بك. - مصادقة آمنة عن طريق TOTP ، والرسائل القصيرة ، والرموز ، وسؤال أمبير. حماية تسجيل الدخول مع الحظر عن طريق IP و captcha. - مجموعة من النماذج والآراء والأدوات الوسيطة والنماذج للمساعدة في تأمين مشروع Django. - فرض SSL على موقع Django الخاص بك. - Stronghold هي برمجيات وسيطة لتقصير جميع وجهات نظرك لتسجيل الدخول المطلوب. - وضع Sudo هو طبقة أمان إضافية لصفحاتك الأكثر حساسية. هذا هو تنفيذ وضع Sudo الخاص بـ GitHub لـ Django.

الحزم التي تساعد في تحسين SEO (تحسين محرك البحث) للمشاريع.

    - تطبيق قابل للتوصيل للسماح لمطوري Django بإضافة العلامات الوصفية وخصائص OpenGraph و Twitter و Google Plus بسرعة إلى استجابات HTML الخاصة بهم. - تطبيق Django لإدارة ملفات robots.txt باتباع بروتوكول استبعاد الروبوتات. - يوفر مجموعة من الأدوات لإدارة البيانات الوصفية لتحسين محركات البحث (SEO) لمواقع Django.

الحزم التي تساعد في إدارة قابلية تكوين المشاريع.

    - مساعد لتنظيم إعدادات مشروع Django من خلال الاعتماد على أنماط البرمجة الراسخة. - تطبيق Django لتخزين الإعدادات الديناميكية في الخلفيات القابلة للتوصيل (الواجهة الخلفية لنموذج Redis و Django مدمجة) مع التكامل مع تطبيق إدارة Django. - الفصل الصارم للتكوين من الكود. - يسمح لك باستخدام 12 متغير بيئة مستوحى من العوامل لتكوين تطبيق Django الخاص بك. - تنظيم إعدادات Django في ملفات وأدلة متعددة. يمكنك تجاوز الإعدادات وتعديلها بسهولة. استخدم أحرف البدل وملفات الإعدادات الاختيارية.

الحزم التي توسع وظائف الواجهة الخلفية للتخزين الحالي أو توفر خلفيات تخزين جديدة.

    - الإعدادات العامة الديناميكية والمثيل لمشروع django الخاص بك. - يتيح لك هذا التطبيق حفظ الوسائط والملفات الثابتة بسهولة في التخزين السحابي Selectel. - django-storages عبارة عن مجموعة من الخلفيات التخزينية المخصصة لـ Django. - يوفر بروكسيًا لخلفيات تخزين Django التي تسمح لك بتحميل الملفات محليًا وخدمتها في النهاية عن بُعد. - خلفية تخزين Django التي تخزن الملفات في تخزين WebDAV المخصص.

الحزم التي تجعل العمل مع قوائم انتظار المهام / الخلفية أسهل.

    - تكامل الكرفس لـ Django. (لم يعد مطلوبًا لـ Celery 3.1 والإصدارات الأحدث) - قائمة انتظار مهام معالجة متعددة أصلية لـ Django. - أسهل طريقة لمراقبة واستخدام RQ في مشاريع Django الخاصة بك. - قائمة انتظار مهام صغيرة متعددة الخيوط لبيثون.

الحزم التي تساعد في اختبار التعليمات البرمجية أو إنشاء بيانات الاختبار.

    - سلوك تكامل BDD لـ Django - TestRunner لوحدة Behave BDD. - مكتبة كاملة لإنشاء مثيلات نموذج ديناميكي لأغراض الاختبار. - مصنع وهمي لتوليد بيانات الاختبار. - قم بتوصيل وتشغيل التكامل المستمر مع django و jenkins. - اختبار العداء باستخدام الأنف. - دعم اختبار السيلينيوم. - اختبار مواقع Django بأكملها. - حدد موقع أبطأ الاختبارات الخاصة بك. - إضافات مفيدة إلى TestCase الافتراضي لـ Django والذي يقلل بشكل كبير من الشفرة المعيارية - استبدال تركيبات الاختبار لـ Python - إطار اختبار تكامل عالي المستوى لـ Django. - ملف التضاريس للخس في مشاريع django
  • [خلاط] (https://github.com/klen/mixer) - تطبيق لإنشاء مثيلات من نماذج Django أو SQLAlchemy. توليد بيانات اختبار سريع ومريح.
  • [mock-django] (https://github.com/dcramer/mock-django) - مكتبة بسيطة للسخرية من سلوك معين لـ Django ، مثل ORM. - تركيبات ذكية لاختبارات أفضل. - اختبار عداء باستخدام py.test - اختبار الإطار لتطبيقات الويب.

الحزم التي تساعد في إنشاء الصور المصغرة.

    - الصور المصغرة وأدوات الصورة لـ Django. - بديل عن طريق django ImageField يوفر واجهة مرنة وبديهية وقابلة للتوسيع بسهولة لإنشاء صور جديدة بسرعة من الصورة المخصصة للحقل. - صور مصغرة سهلة ل Django. - صور مصغرة لـ Django.

تساعد الحزم في مهمة ترجمة المشاريع.

    - ترجمات غير مؤلمة في جانغو ، باستخدام ORM العادي. يتكامل بسهولة في المشاريع والتطبيقات الحالية. من السهل تحويل من django-multilingual-ng. - محاولة لجعل ترجمات نموذج django بدون مصاصة وبدون ألم في الدمج في تطبيقك. - ترجمة المحتوى الديناميكي لنماذج Django الحالية إلى عدد عشوائي من اللغات دون الحاجة إلى تغيير فئات النموذج الأصلية. - ترجمات نموذج Django بسيطة بدون اختراقات سيئة - Rosetta هو تطبيق Django الذي يسهل عملية ترجمة مشاريع Django الخاصة بك.

الحزم التي تعزز أو توفر فئات عرض جديدة.

    - آراء Django العامة المستندة إلى الفصل رائعة ، فلنحصل على المزيد منها. - Beautifully simple class-based views.
    - Let AngularJS play well with Django. - Easy way to use bower with your Django project. - Javascript url handling for Django that doesn't hurt. - A reusable Django app that provides better integration and tools for Angular.js.

Packages that makes text editing awesome.

    - Django admin CKEditor integration. - Summernote is a simple WYSIWYG editor. django-summernote allows you to embed Summernote into Django very handy. Support admin mixins and widgets. - TinyMCE integration for Django. - A Django application for making Django textareas rich text editors. Certainly as a template tag and possibly as a form widget. - A lightweight wysiwyg editor for Django.
    A wiki system with complex functionality for simple integration and a superb interface. Store your knowledge with style: Use django models. An extensible wiki app for Django with a Git backend.

Packages that do process, procedure and/or business tasks management.

    - django-flows keeps state and position in complicated flows of logic, allowing optional branches and complicated paths through a series of individual user actions. - Django friendly finite state machine support. - Django state machine and workflow library provides on the fly changes. - State machine for django models. - Reusable workflow library for Django. - django-workflows provides a generic workflow engine for Django. - Library to plug xworkflows into django models.
    - Easy to use active URL highlighting for django - Generate generic activity streams from the actions on your site. Users can follow any actors' activities for personalized streams. - Collection of useful actions to use with django.contrib.admin.ModelAdmin and/or django.contrib.admin.AdminSite - Automatic admin users for Django projects. - Reusable, generic mixins for Django. - A reusable app to manage and display a calendar in your templates. - A cart app for your django site, an updated fork of django-cart - Django app for handling the server headers required for Cross-Origin Resource Sharing (CORS). - App that provides tags to fetch Google DFP ads. - Creating Scrapy scrapers via the Django admin interface. - This is a repository for collecting global custom management extensions for the Django Framework. - A generic system for filtering Django QuerySets based on user selections. - Django app to manage following and bi-directional friendships. - Essential Gravatar support for Django. Features helper methods, templatetags and a full test suite! - A boilerplate for Django web applications, containing various social authentication methods and several popular API examples. - A Django application to retrieve user's IP address. - an easy and simple Django template tag and tool to embed video and get thumbnails from video providers. - A Django reusable application for end-to-end markup handling. - App for monitoring management commands on Django.. - Circular template inheritance for Django. - https://github.com/ericflo/django-pagination. - Django EL(Endless) Pagination can be used to provide Twitter-style or Digg-style pagination, with optional Ajax support. - This is a configurable quiz app for Django. - Django reCAPTCHA form field/widget integration app. - Django Smuggler is a pluggable application for Django Web Framework that helps you to import/export fixtures via the automatically-generated administration interface. - Helps working with singletons - things like global settings that you want to edit from the admin site. - Easily share data via SQL queries, right from Django - Store Django messages on your project's backend. - provides a decorator to rate-limit views. Limiting can be based on IP address or a field in the request--either a GET or POST variable. - a slugify application that guarantees Uniqueness and handles Unicode. - django-watchman exposes a status endpoint for your backing services like databases, caches, etc. - Websockets for Django applications using Redis as message queue. - Collection of Ansible playbooks to quickly start your Django Application - A small library for extracting rich content from urls. - a collection of tools which make your life easier if you are building a web application using Django.

Outstanding Django projects.

    - The easy-to-use and developer-friendly CMS. - Django Fiber, a simple, user-friendly CMS for all your Django projects - A Django-based CMS with a focus on extensibility and concise code. - A content management platform built using the Django framework. - A new Django content management system. - A new Django content management system built on top of FeinCMS and OpenStack Horizon.
    - Open source, Django based DMS (document management system) with custom metadata indexing, file serving integration, OCR capabilities, document versioning and electronic signature verification.
    - Ecommerce for Django/Mezzanine. - Domain-driven e-commerce for Django. - Lighting Fas Shop is Ecommerce made with Django. - An e-commerce storefront for Python and Django. - Satchless brings e-commerce and Python together. - Satchmo is an eCommerce framework creatde in Django which allows you to develop unique and robust online stores.
    - Django Packages is a directory of reusable apps, sites, tools, and more for your Django projects. - Full stack SaltStack configuration for Django with the help of Vagrant. - Reddit / Hacker News clone for Django/Mezzanine. - Beautiful CRM/ERP for small business.

Where to discover new Django apps and projects.

    (1.2) (< 1.7) (1.5) (video) (1.7) - Deploying fast, scalable Django sites. (1.7) - Using REST, WebSockets, and Backbone with Django (1.5) (1.7) - A best practice book for making Python and Django as fun as ice cream.
    - A fun and engaging tutorial showing how to build a blog using Django and deploy it to Heroku. - A reusable set of slides to educate more people about Django. - Django Packages is a directory of reusable apps, sites, tools, and more for your Django projects. - Django Sites is a showcase of websites powered by Django. - contains explanations for Django's philosophy and its components along with links to other resources and tutorials.
    - the new meeting of the Django community of Florence. - the Italian Django community conference. An opportunity to meet djangonauts from all over Italy and abroad. - is a Django/Python non-profit community event, organised and run entirely by volunteers. The conference is Django-focused, but all aspects of Python fall within its remit. - is an exciting new Django conference for experienced Django developers. Come and learn about the internals of Django, and help to shape its future. - is the annual largest European-based Django conference that is usually held in late spring. - is the largest North American Django conference generally held the first week in September each year.

Additional sources of information about django features.

    - Detailed descriptions, with full methods and attributes, for each of Django's class-based generic views. - Detailed descriptions, with full methods and attributes, for each of Django REST Framework's class-based views and serializers.
    - One of the best collection of Django Videos and all the projects are written in Django. - Django videos from basics to advanced. Covering 3rd party apps to core Django compontents. - Must-watch videos about Django (or about Python as applied to Django) - The video series will teach you Django in one month

Non Django projects that make it easier to work with Django.

    - Run manage.py commands from anywhere. Finds closest to current path manage.py file and runs commands against it. - A toolkit for running standalone Django applications. It provides you with tools to create a CLI runner, manage settings, and the ability to bootstrap the process.

Just fork and send a pull request with your awesome Django apps, projects or resources. By contributing you agree to abide by the Code of Merit.


What web GIS stack should I use for my app?

I know there is a lot of information about GIS stacks for web app development all over the internet. Nevertheless, I just wanted to check if you have any recommendations about which technology I should use when building web app, based on my needs and current skills. As the spatial side of it will be quite simple, I am not sure if this would really classify as GIS web app, but as I work in the field as a GIS technician I like to think it does- and will hopefully be a first step towards GIS and/or web development career.

Anyway, it will be a map-based web app with some of the components being:

map with preloaded point data

ability for users to permanently add points/markers on the map and evaluate other entries (rate 1-5, add comments etc.),

ability for users to do simple spatial query/search (eg. show all accomodation in 10km radius, find nearest weather station and display the weather on this location. )

I've put together this extremely simple GIS-like web app recently, as my first ever programming project so I do have some understanding of Leaflet and front end, and some very basic understanding of Postgis.

For the project I'm about to build I was thinking of Flask backend, Leaflet for mapping, PostGIS database and Apache/Nginx(?) sever. I wouldn't use GeoServer I guess, as I don't think it is really necessary for my project. If I understand correctly I would be able to connect to Postgis through Flask's GeoAlchemy? Does that sound about right?


Integrating geo web services for a user driven exploratory analysis ☆

In data exploration, several online data sources may need to be dynamically aggregated or summarised over spatial region, time interval, or set of attributes. With respect to thematic data, web services are mainly used to present results leading to a supplier driven service model limiting the exploration of the data. In this paper we propose a user need driven service model based on geo web processing services. The aim of the framework is to provide a method for the scalable and interactive access to various geographic data sources on the web. The architecture combines a data query, processing technique and visualisation methodology to rapidly integrate and visually summarise properties of a dataset. We illustrate the environment on a health related use case that derives Age Standardised Rate – a dynamic index that needs integration of the existing interoperable web services of demographic data in conjunction with standalone non-spatial secure database servers used in health research. Although the example is specific to the health field, the architecture and the proposed approach are relevant and applicable to other fields that require integration and visualisation of geo datasets from various web services and thus, we believe is generic in its approach.


Electronic Design Automation

45. Ciranova
Ciranova is an Electronics Design Automation (EDA) company that provides automated integrated circuit (IC) layout tools. The Ciranova RuleWise API provides a high-level programming interface designed specifically for building deep-submicron cell generators. It is accessed as a Python extension package.

46. Productivity Design Tools
Productivity Design Tools (PDTi) is an Electronics Design Automation (EDA) company providing the most extensible Electronic System Level (ESL) tools for managing IP specifications, and automating code and documentation generation. Soft IP generators built upon PDTi's SpectaGen Framework make significant efficiency improvements for all aspects of system and chip development. PDTi was founded to address needs identified during its founder's time as a chip developer. Unlike the typical in-house solution or the competitors' offerings, SpectaGen is flexible enough for any environment and is designed to be extended based on customer-specific knowledge and design experience using object-oriented Python and XML.
PDTi's SpectaReg product is an eXtensible Memory-Mapped Register generator.


(Geo)Django vs. Javascript

Is it more worthwhile for a GIS user to learn Django (and GeoDjango) or Javascript (I know a similar question was explored 2 years ago)? I'm more excited about learning Django (since I'm more familiar with Python) but it seems there are more Javascript type GIS jobs out there.

It seems GeoDjango also does a good job integrating SQL, so I feel like building a project with GeoDjango would be a good learning opportunity, but I don't want to sink a bunch of time into it if it's not worthwhile. Any thoughts?

You can use them as complementary things. Geodjango is great a great way to serve your gis data as JSON data Using a restful API. JavaScript can then be used to consume and update a client side map with that data.

Airbnb for example would serve the background data as a json which is then shown on a map using JavaScript to update when moving and initialized.

Both are useful, JavaScript is easier though.

Also, Airbnb probably uses something like typescript and is transpliled to JavaScript, but that’s more complicated.

As several comments have already indicated: it is not a versus scenario. In modern web and GIS development you need to know javascript. Make sure you only learn ES6 plus syntax and master async await to avoid callback coding. Knowing django and python is of course another asset but then I would generalize it to learning python. I personally use nodejs on the server, appcelerator for mobile and React/mapbox js for the web frontend. I would advise building a small backend twice, using nodejs and django. Then build a webmap using mapbox gl js and possibly React. In addition, use linux and play with command line tools. Nodejs also plays well with SQL and there are many libraries to use postgis/postgresql. So also learn posgres/postgis as that is your most typical GIS SQL system. Good luck!


Openwisp-wifi-login-pages

Configurable captive page for public/private WiFi services providing login, sign up, social login, SMS verification, change password, reset password, change phone number and more.

Openwisp-ipam

IP address space administration module of OpenWISP

Openwisp-radius

Administration web interface and REST API for freeradius 3 build in django & python. Supports captive portal authentication, WPA Enerprise (802.1x), freeradius rlm_rest, social login, Hotspot 2.0 / 802.11u, importing users from CSV, registration of new users and more.

Openwisp المراقبة

Network monitoring system written in Python and Django, designed to be extensible, programmable, scalable and easy to use by end users: once the system is configured, monitoring checks, alerts and metric collection happens automatically.

Ansible-wireguard-openwisp

Openwisp-controller

Network and WiFi controller: provisioning, configuration management and updates, (pull via openwisp-config or push via SSH), x509 PKI management and more. Mainly OpenWRT, but designed to work also on other systems.

Netengine

Python abstraction layer for extracting information from network devices.

Openwisp-users

Implementation of user management and multi-tenancy for OpenWISP

Openwrt-openwisp-monitoring

OpenWRT monitoring scripts for openwisp-monitoring

Openwisp-notifications

Notifications module of OpenWISP

Docker-openwisp

OpenWISP in docker (in-alpha). For production checkout ansible-openwisp2.

Openwisp-utils

Python and Django utilities shared between different openwisp modules

Openwisp-firmware-upgrader

Firmware upgrade solution for OpenWRT with possibility to add support for other embedded OSes. Provides features like automatic retry for network failures, mass upgrades, REST API and more.

Openwisp-config

OpenWRT configuration agent for OpenWISP Controller

Ansible-openwisp2

Ansible role that installs and upgrades OpenWISP.

Ansible-openwisp2-imagegenerator

Automatically build several openwisp2 firmware images for different organizations while keeping track of their differences

Django-x509

Reusable django app implementing x509 PKI certificates management

Django-sendsms

A simple API to send SMS messages. It is modeled after the django email api.

Netjsongraph.js

NetJSON NetworkGraph visualizer based on d3.js

Netjsonconfig

Network configuration management library based on NetJSON DeviceConfiguration

Django-rest-framework-gis

Geographic add-ons for Django REST Framework. Maintained by the OpenWISP Project.

OpenWISP-Geographic-Monitoring

A Rails application for managing a wISP's access points

OpenWISP-User-Management-System

OpenWISP User Management System (OWUMS) is a Ruby on Rails application, capable of managing a WISP's user base.

Django-owm-legacy

OpenWISP Manager backward compatible legacy features implemented in django

Django-rest-framework

Netjsonconfig-editor.js

[GSOC 2017] This project has stalled.

Openwisp-vxlan-updater

VXLAN updater script for OpenWISP, designed to be used on Linux systems having NetworkManager nmcli.

طوبولوجيا شبكة openwisp

Network topology collector and visualizer. Collects network topology data from dynamic mesh routing protocols or other popular networking software like OpenVPN, allows to visualize the network graph, save daily snapshots that can be viewed in the future and more.


Draft Ideas

  • full streaming from database (via SOS+proxy or via TS-API) to JavaScript client
  • Add WPS 2.0 support to WPSClient4ArcGIS
  • try to combine project requirements (= mentor effort provided) with motivating (fun, interesting) projcts -- ARE via DanielNuest - 2014-10-02
  • Usage statistics and performance evaluation of WPS, SOS and Timeseries API using the ELK stack (comprises new logging configuration, instructions, logging statements to capture all required information) -- DanielNuest - 2015-02-10
  • IOs version of enviroCar app
  • enviroCar website
  • PhoneGap für JS client
  • SOS.js for SOS 2.0 based on ows.js
  • Access control for Sensor Web REST-API
  • Simple Features for protobuf and others