gowherene adalah aplikasi web untuk membantu warga Singapura merencanakan rekomendasi makanan, seperti http://thesmartlocal.com/read/cheap-food-orchard dari thesmartlocal, di peta.
Blog populer ini tidak memiliki tampilan peta untuk rekomendasinya, jadi saya membuat gowherene untuk membantu memvisualisasikan lokasi geografis dari rekomendasi untuk pengambilan keputusan yang lebih baik.
Beberapa halaman rekomendasi yang telah diuji dengan cermat adalah
gowherene juga dapat memplot alamat, bukan hanya rekomendasi! Mencoba:
Anda memerlukan setidaknya versi 1.10.1.727 dari Clojure CLI yang diinstal.
data
Saat mengurai halaman untuk menemukan informasi alamat, kode sering kali mengacu pada data
atau address-info
, peta:
kunci | nilai |
---|---|
:postal-code-loc | Lokasi (seperti pada hickory) tempat kode pos ditemukan, bersama dengan beberapa informasi alamat |
:header-loc | Lokasi header yang ditentukan secara heuristik untuk ini :postal-code-loc |
:place | Nama tempat ini |
:address | Alamat tempat ini |
:latlng | Garis lintang dan bujur tempat ini |
Di emacs, lakukan cider-jack-in
, lalu pada prompt user>
, lakukan
user> (def server (start-gowherene))
... elided ...
#'user/server
Dan kemudian periksa apakah backend sudah aktif dengan curl
:
curl -X GET 'http://localhost:3000/parse/?url=http://thesmartlocal.com/read/restaurants-with-no-gst' | jq
user> (.stop server)
Lakukan Cc MJ
dan ketika diminta, masukkan figwheel-main
. Saat ditanya build, masukkan dev
Tab browser akan terbuka, menunjuk ke http://localhost:9500
.
Untuk membangun produksi
make
Ini harus membangun backend dan frontend.
DOCKER_BUILDKIT=1 docker build -t test .
GOWHERENE_DEBUG=1 java -cp target/gowherene.jar clojure.main -m gowherene.core
Di atas harus memulai server pada port 3000.
Dengan buruh pelabuhan, lakukan
docker run --rm --publish 3000:3000 --env PORT=3000 --env GOOGLE_API_TOKEN= < token > --env GOWHERENE_DEBUG=1 -it test
Untuk menanyakannya,
curl -vv -X GET 'http://localhost:3000/parse/?url=http://thesmartlocal.com/read/restaurants-with-no-gst' | jq
Dorong ke master, render.com akan mengambilnya dari GitHub dan menerapkannya.
Buka netlify, seret dan lepas target/dist
untuk diunggah.
Di gowherene
, saya mengharapkan variabel lingkungan berikut ada.
kunci | nilai |
---|---|
:google-api-token | Token API untuk API geocoding Google Maps |
:port | Port untuk menjalankan server (defaultnya adalah 3000) |
:gowherene-debug | Setel ke true untuk mencegah pengalihan otomatis ke HTTPS pada port 443 |
Untuk pengembangan, saya menggunakan file .lein-env
di direktori proyek, tampilannya seperti ini
{:google-api-token "xxx"
:gowherene-debug true}
.lein-env
berfungsi bahkan tanpa menggunakan leiningen karenaenviron
mencari file itu
Hak Cipta © 2022 ackerleytng