diff --git a/README.md b/README.md index f816af0..17ed952 100644 --- a/README.md +++ b/README.md @@ -16,9 +16,11 @@ It is truly **open-source**: everything, including the full production setup, is The goal of this project is to provide free, production-quality vector-tile hosting using existing tools. -Currently these tools are: [OpenStreetMap](https://www.openstreetmap.org/copyright), [OpenMapTiles](https://github.com/openmaptiles/openmaptiles), [Planetiler](https://github.com/onthegomap/planetiler) , [MapLibre](https://maplibre.org/) and [Natural Earth](https://www.naturalearthdata.com/). OFM does not want to be an alternative to any of these projects. If the community decides, we can replace any of these tools. +Currently these tools are: [OpenStreetMap](https://www.openstreetmap.org/copyright), [OpenMapTiles](https://github.com/openmaptiles/openmaptiles), [Planetiler](https://github.com/onthegomap/planetiler), [MapLibre](https://maplibre.org/), [Natural Earth](https://www.naturalearthdata.com/) and [Wikidata](https://www.wikidata.org/wiki/Wikidata:Main_Page). -The scope of this repo is limited (see below). Once we figure out the technical details, ideally, there should be few commits here, while everything keeps working: the map tiles are automatically generated, servers are automatically updated and load balancing takes care of failing servers. +Special thanks go to [Michael Barry](https://github.com/msbarry) for developing [Planetiler](https://github.com/onthegomap/planetiler). It made it possible to generate the tiles in 5 hours instead of 5 weeks. + +The scope of this repo is limited (see below). Once we figure out the technical details, ideally, there should be few commits here, while everything continues to work: the map tiles are automatically generated, servers are automatically updated and load balancing takes care of any downtime. The [styles repo](https://github.com/hyperknot/openfreemap-styles), on the other hand, is continuously being developed. @@ -101,10 +103,10 @@ I run some [benchmarks](docs/quick_notes/http_benchmark.md) on a Hetzner server, You can directly download the processed full planet runs on the following URLs: -https://planet.openfreemap.com/20231221_134737_pt/tiles.mbtiles // 84 GB, mbtiles file -https://planet.openfreemap.com/20231221_134737_pt/tiles.btrfs.gz // 81 GB, BTRFS partition image +https://planet.openfreemap.com/20240607_232801_pt/tiles.mbtiles // 89 GB, mbtiles file +https://planet.openfreemap.com/20240607_232801_pt/tiles.btrfs.gz // 86 GB, BTRFS partition image -Replace the `20231221_134737_pt` part with any newer run, from the [index file](https://planet.openfreemap.com/index.txt). +Replace the `20240607_232801_pt` part with any newer run, from the [index file](https://planet.openfreemap.com/index.txt). ### Public buckets @@ -116,11 +118,12 @@ There are three public buckets: ### Domains and Cloudflare -The project has two domains: .org and .com. Currently, both are on Cloudflare. +Tiles are currently available on: -The general public only interacts with the .org domain. It has been designed so that this domain can be migrated away from Cloudflare if needed. +- tiles.openfreemap.org - Cloudflare proxied +- direct.openfreemap.org - direct connection, Round-Robin DNS -The .com domain hosts the R2 buckets, which are required to be on Cloudflare. This domain will always remain on CF. +The project has been designed in such a way that we can migrate away from Cloudflare if needed. This is the reason why there are a .com and a .org domain: the .com will always stay on Cloudflare to host the R2 buckets, while the .org domain is independent. ### What about PMTiles? @@ -142,7 +145,7 @@ Smaller tasks: Bigger tasks: -- Split the styles to blocks and build them up from blocks. For example, there should be a POI block, a label block, a road-style related block. +- Split the styles to building blocks. For example, there should be a POI block, a label block, a road-style related block. - Implement automatic updates for tile gen, uploading, testing and setting versions. Tasks outside the scope of this project: diff --git a/docs/self_hosting.md b/docs/self_hosting.md index 784ce5c..cf83aa1 100644 --- a/docs/self_hosting.md +++ b/docs/self_hosting.md @@ -14,19 +14,19 @@ note: Tile generation is 100% optional, as we are providing the processed full p ##### Disk space - **http-host**: 300 GB for hosting a single run +- **http-host**: 300 GB for hosting a single run - **tile-gen**: 500 GB for +- **tile-gen**: 500 GB ##### RAM - **http-host**: 4 GB +- **http-host**: 4 GB - **tile-gen**: 64 GB+ RAM. +- **tile-gen**: 64 GB+ ##### OS - **Ubuntu 22+** +- **Ubuntu 22+** --- @@ -44,7 +44,7 @@ It's recommended to use [direnv](https://direnv.net/), to have automatic venv ac #### 1. Prepare `config` folder -1. Copy `.env.sample` to `.env` and set the values. +1. Copy `.env.sample` to `.env` and set the values. DOMAIN_LE - Use this to specify a domain to be used with Let's Encrypt. Recommended. @@ -64,5 +64,4 @@ After this, go for a walk and by the time you come back it should be up and runn If you have a really beefy machine (see above) and you want to generate tiles yourself, you can run `./init-server.py tile-gen HOSTNAME`. -Trigger a run manually, by running `planetiler_{area}.sh`. Recommended to use tmux or similar, as it can take days. - +Trigger a run manually, by running `planetiler_{area}.sh`. Recommended to use tmux or similar, as it can take days to complete. diff --git a/website/blocks/main.md b/website/blocks/main.md index 6debd9d..32e1f8e 100644 --- a/website/blocks/main.md +++ b/website/blocks/main.md @@ -7,6 +7,7 @@ It is truly **free**: there are no limits on the number of map views or requests It is truly **open-source**: everything, including the full production setup, is on [GitHub](https://github.com/hyperknot/openfreemap). Map data is from OpenStreetMap. ## How can I use it? + (Click below, it's interactive!) @@ -31,13 +32,13 @@ Yes. ## Who is behind this project? -I'm Zsolt Ero ([twitter](https://twitter.com/hyperknot), [blog](https://blog.hyperknot.com/), [email](mailto:zsolt@openfreemap.org)). I built [MapHub](https://maphub.net/) and have been running map hosting in production for 8 years. +I'm Zsolt Ero ([X](https://x.com/hyperknot), [blog](https://blog.hyperknot.com/), [email](mailto:zsolt@openfreemap.org)). I built [MapHub](https://maphub.net/) and have been running map hosting in production for 8 years. ## Why did you build this project? OpenStreetMap is one of the most important collective projects in history. It began almost 20 years ago, and today, 3 million edits are made each day! -Unfortunately, when you want to use the map on your website or app, you need to look for a commercial map tile provider and hope your site doesn't become too popular. Otherwise, you might end up with a $10,000 bill in a single day, as Hoodmaps [did](https://twitter.com/levelsio/status/1730659933232730443). +Unfortunately, when you want to use the map on your website or app, you need to look for a commercial map tile provider and hope your site doesn't become too popular. Otherwise, you might end up with a $10,000 bill in a single day, as Hoodmaps [did](https://x.com/levelsio/status/1730659933232730443). You can try self-hosting, but it requires a big server and a lot of time to get it right. @@ -55,7 +56,7 @@ If this project helps you save on your map hosting costs, please consider subscr ## How can I follow this project? -twitter: [hyperknot](https://twitter.com/hyperknot) (details) and [OpenFreeMapOrg](https://twitter.com/OpenFreeMapOrg) (announcements) +X: [hyperknot](https://x.com/hyperknot) (details) and [OpenFreeMapOrg](https://x.com/OpenFreeMapOrg) (announcements) GitHub: [openfreemap](https://github.com/hyperknot/openfreemap) and [openfreemap-styles](https://github.com/hyperknot/openfreemap-styles) diff --git a/website/blocks/privacy.md b/website/blocks/privacy.md index 8a80252..4749d04 100644 --- a/website/blocks/privacy.md +++ b/website/blocks/privacy.md @@ -8,7 +8,7 @@ There are no user accounts, email lists, API keys, cookies or databases. This page is a static HTML hosted on GitHub pages. -We do not send newsletters. Please follow us on Twitter or GitHub for updates. +We do not send newsletters. Please follow us on X or GitHub for updates. The only data we might collect are server logs. Technically, these are disabled by default and are only enabled temporarily to investigate problems with our service. diff --git a/website/template.html b/website/template.html index f06377a..cf8fb36 100644 --- a/website/template.html +++ b/website/template.html @@ -29,8 +29,8 @@ github - x/twitterx