4 पॉइंट द्वारा GN⁺ 2023-08-24 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • Prettymapp OpenStreetMap डेटा से मैप बनाने वाला एक वेबऐप और Python पैकेज है, जो Streamlit ऐप और Python कोड दोनों में मैप जनरेशन को सपोर्ट करता है
  • यह prettymaps का पुनर्लिखित प्रोजेक्ट है, जिसमें वेबऐप इंटरफ़ेस के अनुकूल कॉन्फ़िगरेशन और गति पर फ़ोकस किया गया है
  • अधिक जटिल सेटिंग विकल्पों को कम करके, गति में सुधार, कोड की जटिलता में कमी, और सरल सेटिंग इंटरफ़ेस को चुना गया है; साथ ही इसे आंशिक रूप से टेस्ट किया गया है और Streamlit वेबऐप कॉम्पोनेंट जोड़ा गया है
  • वेबऐप को prettymapp.streamlit.app पर सीधे इस्तेमाल किया जा सकता है, और लोकल में uv sync --extra streamlit के बाद uv run streamlit run streamlit-prettymapp/app.py से चलाया जा सकता है
  • Python पैकेज को pip install prettymapp से इंस्टॉल किया जाता है, और get_aoi, get_osm_geometries, Plot, STYLES का उपयोग करके क्षेत्र परिभाषित करना, OSM डेटा डाउनलोड करना, मैप रेंडर करना, और इमेज सेव करना किया जाता है
  • डिफ़ॉल्ट स्टाइल Peach, Auburn, Citrus, Flannel ये 4 हैं, और draw_settings तथा Plot आर्ग्युमेंट के shape, contour_width आदि से स्टाइल और लेआउट को समायोजित किया जाता है
  • get_osm_geometries_from_xml के जरिए openstreetmap.org आदि से एक्सपोर्ट की गई OSM XML फ़ाइलों को प्लॉट किया जा सकता है, और LANDCOVER_CLASSES सेटिंग से दिखाए जाने वाले OSM landcover classes का चयन बदला जा सकता है

1 टिप्पणियां

 
GN⁺ 2023-08-24
Hacker News की राय
  • OSM मैप्स को कस्टमाइज़ करना चाहने वालों के लिए OSM डेटा लाने वाला Figma plugin उपयोगी है: https://www.figma.com/community/plugin/1251030017228239072/V...
  • उदाहरण app के denial-of-service स्थिति में जाने का मौका देखकर, मैंने इसे खुद Streamlit पर deploy करके देखा, जिसे मैंने पहले कभी इस्तेमाल नहीं किया था। Project में deployment process documented नहीं था, लेकिन top-level docs से ही यह बहुत आसान निकला
    आप खुद आज़मा सकते हैं: https://wfcmzortl5n8cqhdowr6dm.streamlit.app/
    • Local पर चलाते समय मैंने ऐसे किया
      pip install -r requirements.txt
      pip install -r requirements-dev.txt
      pip install -r streamlit-prettymapp/requirements.txt
      streamlit run streamlit-prettymapp/app.py
      streamlit command तीसरी requirements.txt install कर देती है। Macau का मैप ठीक से आता है, लेकिन Creating map... (may take up to a minute) पर अटक जाता है, इसलिए मुझे लगा कि क्या OSM API key काम नहीं कर रही
      सुधार: लगता है कि जिन इलाकों में OSM elements काफ़ी ज़्यादा हैं, वहाँ यह बस बहुत धीमा है। असल में यह OSM को geometry objects में बदलने वाले step पर 4 लाख objects convert करने की कोशिश में अटका हुआ है
      सुधार 2: https://github.com/chrieke/prettymapp/issues/26
    • ज़्यादा देर टिक नहीं पाया
    • यह भी traffic surge से मर गया ;)
  • वाकई शानदार। जानना चाहूँगा कि API docs हैं या नहीं। अच्छा होगा अगर city/town name के बजाय GPS location को center बनाकर map align किया जा सके
    मेरे city name का इस्तेमाल करने पर यह reasonable default के तौर पर downtown लेता है, लेकिन मेरा इलाका वहाँ से काफ़ी दूर है, इसलिए बहुत ज़्यादा zoom out किए बिना वह map में दिखता नहीं
  • पहले भी कई बार कवर हो चुका है: https://hn.algolia.com/?q=Prettymap
    • README के मुताबिक Prettymapp, @marceloprates के शानदार prettymaps project को दोबारा लिखने पर आधारित है
  • किसी को साफ़ पता है कि यह किस license के तहत distribute किया जा रहा है? Original AGPL था, लेकिन अगर rewritten version ज़्यादा permissive license वाला है तो यह काफ़ी अच्छा होगा
    • MIT लगता है: https://github.com/chrieke/prettymapp/blob/main/setup.py#L15...
    • Original AGPL है और नया version MIT है, लेकिन सोच रहा हूँ कि क्या यह legally possible है
      यकीन नहीं कि यह सच में rewrite है या बस adaptation। License बदला नहीं जा सकता हो सकता है, इसलिए सावधान रहना चाहिए
    • यह काफ़ी अच्छा क्यों होगा?
  • Etsy shop generator जैसा लगता है
  • दिलचस्प app है। पहले बंद होने से पहले Ortelius में maps customize करना भी मुझे बहुत पसंद था, और felt.com का Felt भी अच्छा था
  • MapTiler के पास अच्छी SaaS service है। हम MapLibre के साथ उनके vector maps इस्तेमाल कर रहे हैं
    यह इस क्षेत्र में अच्छे tools और maps के साथ business बनाने की कोशिश कर रही अच्छी company है, और open source में भी बड़ा योगदान देती है। कई tools open source हैं, इसलिए self-host भी किए जा सकते हैं। Website पर themed map examples भी अच्छे हैं
  • यह देखना मज़ेदार है कि लोग जिस concept की उम्मीद करते थे, वह किसी दूसरे रूप में implement होता है
    उम्मीद थी कि mainstream functional programming OCaml/Haskell होगा, लेकिन असल में यह functional character वाली JavaScript library React बन गया; और immediate mode GUI के लिए imgui की उम्मीद थी, लेकिन लगता है कि यह Gradio/Streamlit जैसे रूप में आया। मैंने खुद इस्तेमाल नहीं किया है, लेकिन सरसरी तौर पर देखने पर ऐसा ही लगता है
  • HN ने app मार दिया!