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 testUntuk 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-envberfungsi bahkan tanpa menggunakan leiningen karenaenvironmencari file itu
Hak Cipta © 2022 ackerleytng