This repository contains a static website generator featuring an interactive map of active and lost cemeteries in St. Petersburg. It is being worked on in collaboration with whatiscemetery project.
The data is going to be eventually published elsewhere.
- The website is generated from a spreadsheet (csv/xlsx) which contains geographic coordinates and trivia.
- The build step also fetches vintage photos belonging to geographic boundaries of each cemetery from PastVu using my gem
- While every cemetery is just a fixed HTML page, Hotwire's turbo-frames provide SPA-like expirience when navigating from one cemetery to another.
Ideally, the map is to be deployed on Cloudflare Pages, which is completely free and allows using Ruby for static website building. However, given the Russian government banned the hosting, alternative solutions are being considered.
Cemetery page: object's summary is on the left, and colorful polygons mark other cemeteries on the map
- Find geographic data on existing and historic cemeteries
- Allow building from Excel/CSV files
- Add dynamic image fetching from PastVu on every build stage
- Implement a more appropriate thematic design
- Compose textual desciprition data
- Add data fetching from a 3rd party server (Google Drive)
- Deploy
- Ruby 3.2.2
Development server:
bundle exec middleman
Building project:
bundle exec middleman build
rake data:clean # removes every file in data/ except files starting with sample_ and subdirectories
rake data:csv # from csv
rake data:xlsx # from xlsx
rake img:append # loads new images only without removing or rewriting loaded ones
rake img:clean # rm rf images/vendor completely & removes photos from data yml files
rake img:load # downloads images for every entry's geometry from pastvu into images/vendor/:path_name
rake img:reload # calls image:clean & image:load
rake img:update # loads new images and rewrites previous ones if anything has changed