Introducción a la aplicación Placemark
- Placemark es una aplicación web que permite importar, crear, exportar, visualizar y publicar datos geoespaciales.
- Soporta varios formatos de datos geoespaciales, operaciones de edición basadas en algoritmos (por ejemplo, buffering) y tareas basadas en dibujo.
- Hay muchos videos en YouTube usando esta herramienta, y el sitio web archivado contiene material de marketing anterior.
Avisos sobre la versión inicial de código abierto
- Esta es la versión inicial de código abierto de esta base de código; pueden ayudar con la configuración, pero no pueden ofrecer soporte de integración de extremo a extremo.
- Es una aplicación web compleja y funciona en el entorno en el que fue desarrollada, pero no necesariamente en todos los entornos (por ejemplo, casi con certeza no funciona en Windows).
- Se agradecen PR para facilitar la configuración en otros entornos, hacer opcionales ciertas funciones, u otras mejoras o correcciones.
Stack tecnológico
- Se pueden consultar notas sobre el stack tecnológico de la aplicación en
docs/architecture.md.
Ejecución con Docker
- Hay un ejemplo de archivo Docker y se pueden ver los detalles en
docs/docker.
Ejecución en Render
- Está configurado mediante el archivo
render.yaml, y alojarlo en Render puede ser la forma más rápida de ponerlo en marcha.
- También podría funcionar en configuraciones de hosting similares como Railway, Heroku y Flightcontrol.
Instalación
- El proyecto fue construido usando yarn, y la última versión de yarn con la que se probó fue
1.22.19.
- Si se instala con npm u otro gestor de paquetes, pueden aparecer dependencias diferentes.
Variables de entorno
- Durante el desarrollo se lee el archivo
.env, y en producción se requieren variables de entorno.
- Al iniciar se verifican las variables de entorno, así que si falta alguna, la aplicación puede fallar.
- La lista de variables de entorno necesarias puede revisarse en
app/lib/env_server.ts y app/lib/env_client.ts.
Variables de entorno obligatorias y opcionales
- Obligatorias: GitHub, Replicache
- Opcionales: Posthog, Cloudflare, Postmark, WorkOS, Stripe, CampaignMonitor, Logtail
- En una instalación self-hosted puede que no se necesiten algunos servicios como Stripe, y es posible volverlos opcionales.
Infraestructura
- Placemark depende de dos servidores: la aplicación (este repositorio) y una base de datos Postgres 14 (o superior).
Dominios
- En la web, Placemark se sirve bajo tres dominios:
app.placemark.io, api.placemark.io, API
- La API se sirve desde el mismo servidor web que la app, y se usa un Cloudflare Worker para hacer proxy de las solicitudes desde
api.placemark.io hacia app.placemark.io.
Pruebas SSL locales
- Esto se necesita cuando hay que probar funciones que solo operan bajo SSL (por ejemplo, pruebas de geolocalización en iPhone).
- Se usa
tailscale cert, luego se mueve el certificado a este directorio y después se ejecuta caddy start.
Uso de Stripe
- Stripe está pasando a ser una dependencia opcional de este proyecto.
- El proxy de webhook está en
./_scripts/webhook-proxy.js y puede ejecutarse opcionalmente.
Opinión de GN⁺
- Placemark es una potente aplicación web que ofrece varias funciones necesarias para trabajar con datos geoespaciales, por lo que resulta útil para especialistas en GIS o desarrolladores.
- Al ofrecerse como código abierto, puede recibir contribuciones de la comunidad y mejorarse para su uso en distintos entornos.
- Puede desplegarse y ejecutarse fácilmente con herramientas de contenedorización como Docker, y tiene la ventaja de poder desplegarse rápidamente mediante servicios de hosting en la nube.
1 comentarios
Comentarios de Hacker News