4 poin oleh GN⁺ 2023-08-24 | 1 komentar | Bagikan ke WhatsApp
  • Prettymapp adalah aplikasi web sekaligus paket Python untuk membuat peta dari data OpenStreetMap, dan mendukung pembuatan peta baik di aplikasi Streamlit maupun lewat kode Python
  • Proyek ini merupakan penulisan ulang dari prettymaps, dengan fokus pada konfigurasi yang sesuai untuk antarmuka aplikasi web dan pada kecepatan
  • Proyek ini memilih untuk mengurangi opsi konfigurasi yang lebih kompleks sambil meningkatkan kecepatan, mengurangi kompleksitas kode, dan menyederhanakan antarmuka konfigurasi, serta telah diuji sebagian dan menambahkan komponen aplikasi web Streamlit
  • Aplikasi webnya bisa langsung digunakan di prettymapp.streamlit.app, dan di lingkungan lokal dapat dijalankan dengan uv sync --extra streamlit lalu uv run streamlit run streamlit-prettymapp/app.py
  • Paket Python diinstal dengan pip install prettymapp, dan menggunakan get_aoi, get_osm_geometries, Plot, STYLES untuk mendefinisikan area, mengunduh data OSM, merender peta, dan menyimpan gambar
  • Gaya bawaan terdiri dari 4 pilihan: Peach, Auburn, Citrus, Flannel, dan gaya serta tata letak dapat disesuaikan melalui draw_settings dan argumen Plot seperti shape, contour_width, dan lainnya
  • Dengan get_osm_geometries_from_xml, file OSM XML yang diekspor dari openstreetmap.org dan lainnya dapat diplot, dan pilihan kelas landcover OSM yang ditampilkan dapat diubah melalui pengaturan LANDCOVER_CLASSES

1 komentar

 
GN⁺ 2023-08-24
Komentar Hacker News
  • Bagi orang yang ingin mengustomisasi peta OSM, plugin Figma yang mengimpor data OSM berguna: https://www.figma.com/community/plugin/1251030017228239072/V...
  • Karena aplikasi contohnya kebetulan mengalami kondisi penolakan layanan, saya mencoba menerapkannya sendiri ke Streamlit, yang belum pernah saya pakai sebelumnya. Proses deployment tidak didokumentasikan di proyeknya, tetapi dengan dokumentasi tingkat atas saja ternyata sangat mudah
    Bisa dicoba sendiri: https://wfcmzortl5n8cqhdowr6dm.streamlit.app/
    • Saat menjalankannya secara lokal, saya melakukannya seperti ini
      pip install -r requirements.txt
      pip install -r requirements-dev.txt
      pip install -r streamlit-prettymapp/requirements.txt
      streamlit run streamlit-prettymapp/app.py
      Perintah streamlit diinstal oleh requirements.txt yang ketiga. Peta Macau muncul dengan benar, tetapi berhenti di Creating map... (may take up to a minute), jadi saya bertanya-tanya apakah kunci API OSM-nya tidak berfungsi
      Edit: Sepertinya di wilayah dengan elemen OSM yang cukup banyak, ini memang sangat lambat. Sebenarnya macet pada tahap mengonversi OSM menjadi objek geometri, saat mencoba mengonversi 400 ribu objek
      Edit 2: https://github.com/chrieke/prettymapp/issues/26
    • Ternyata tidak bertahan lama
    • Yang ini juga mati karena lonjakan traffic ;)
  • Benar-benar luar biasa. Saya penasaran apakah ada dokumentasi API. Akan bagus kalau peta bisa dipusatkan pada lokasi GPS, bukan nama kota/desa
    Kalau saya memakai nama kota saya, ia menggunakan pusat kota sebagai nilai bawaan yang masuk akal, tetapi lingkungan saya cukup jauh dari sana sehingga tidak muncul di peta kecuali saya melakukan zoom out sangat jauh
  • Sudah pernah dibahas beberapa kali sebelumnya: https://hn.algolia.com/?q=Prettymap
    • Menurut README, Prettymapp didasarkan pada penulisan ulang proyek prettymaps yang luar biasa dari @marceloprates
  • Ada yang tahu dengan jelas ini didistribusikan di bawah lisensi apa? Aslinya AGPL, tetapi kalau versi yang ditulis ulang ini memakai lisensi yang lebih permisif, itu akan cukup bagus
    • Sepertinya MIT: https://github.com/chrieke/prettymapp/blob/main/setup.py#L15...
    • Yang asli AGPL dan versi baru MIT, tetapi saya penasaran apakah ini secara hukum memungkinkan
      Saya tidak yakin apakah ini benar-benar penulisan ulang atau sekadar adaptasi. Bisa jadi lisensinya tidak boleh diubah, jadi perlu hati-hati
    • Kenapa itu dianggap cukup bagus?
  • Terlihat seperti generator toko Etsy
  • Aplikasi yang menarik. Dulu saya juga sangat menikmati mengustomisasi peta di Ortelius sebelum menghilang, dan Felt dari felt.com juga bagus
  • MapTiler punya layanan SaaS yang bagus. Kami menggunakan peta vektor mereka bersama MapLibre
    Mereka adalah perusahaan bagus yang mencoba membangun bisnis dengan alat dan peta yang baik di bidang ini, dan juga berkontribusi besar ke open source. Beberapa alatnya open source sehingga bisa di-host sendiri. Di situs webnya juga ada contoh peta bertema yang cukup bagus
  • Menarik melihat sebuah konsep yang diinginkan orang-orang terwujud dalam bentuk lain
    Saya dulu mengira pemrograman fungsional arus utama akan berupa OCaml/Haskell, tetapi kenyataannya menjadi React, library JavaScript dengan karakter fungsional. Untuk GUI immediate mode, saya mengira akan berupa imgui, tetapi rasanya datang dalam bentuk seperti Gradio/Streamlit. Saya belum pernah memakainya langsung, tetapi sekilas terasa begitu
  • HN membunuh aplikasinya!