├── worker
├── dev_assets
│ └── .gitkeep
├── local_assets
│ └── .gitkeep
├── .prettierrc
├── .editorconfig
├── vitest.config.js
├── package.json
├── public
│ └── index.html
├── README.md
├── test
│ └── index.spec.js
├── .gitignore
├── wrangler.jsonc
├── scripts
│ └── update-db.js
└── src
│ └── index.js
├── .gitignore
├── data_curation
├── utils
│ ├── __init__.py
│ └── extraction_utils.py
├── generated_data
│ └── .gitkeep
├── wikipedia_data
│ └── .gitkeep
├── requirements.txt
├── .gitignore
└── README.md
├── docs
├── data_organization.md
├── assets
│ ├── geoquash.jpg
│ ├── geoquah_tree.png
│ ├── completed_tree.jpg
│ ├── dates_by_year.png
│ ├── geohash_level0.jpg
│ ├── geohash_level1.jpg
│ ├── geoquash_tree.png
│ ├── map_geoquashes.jpg
│ ├── event_screenshot.jpeg
│ ├── pages_until_year.png
│ ├── geoquash_tree_zooms.jpg
│ ├── pushing_down_the_tree.jpg
│ └── map_geoquashes_completed.jpg
├── README.md
├── economics_of_landnotes.md
├── user_experience.md
├── future_directions.md
└── displaying_on_the_map.md
├── website
├── public
│ ├── icon.png
│ ├── icon-192x192.png
│ ├── icon-512x512.png
│ ├── icons
│ │ ├── README.md
│ │ ├── search.svg
│ │ ├── flag.svg
│ │ ├── expand-vertical.svg
│ │ ├── mountain-snow.svg
│ │ ├── external-link.svg
│ │ ├── expand.svg
│ │ ├── book-marked.svg
│ │ ├── person-standing.svg
│ │ ├── shrink.svg
│ │ ├── square-user-round.svg
│ │ ├── text-search.svg
│ │ ├── newspaper.svg
│ │ ├── skull.svg
│ │ ├── trees.svg
│ │ ├── calendar-fold.svg
│ │ ├── pin.svg
│ │ ├── briefcase-business.svg
│ │ ├── train-front.svg
│ │ ├── luggage.svg
│ │ ├── landmark.svg
│ │ ├── baby.svg
│ │ ├── city.svg
│ │ ├── plane-takeoff.svg
│ │ ├── waves.svg
│ │ ├── map.svg
│ │ ├── school.svg
│ │ ├── church.svg
│ │ ├── tree-palm.svg
│ │ ├── trophy.svg
│ │ ├── building.svg
│ │ └── menu.svg
│ └── manifest.webmanifest
├── README.md
├── src
│ ├── main.js
│ ├── vite-env.d.ts
│ ├── app.css
│ ├── lib
│ │ ├── data
│ │ │ ├── page_data.svelte.js
│ │ │ ├── utils.js
│ │ │ ├── events_data.js
│ │ │ ├── date_utils.js
│ │ │ ├── places_data.js
│ │ │ ├── mapEntries.svelte.js
│ │ │ └── geohash.js
│ │ ├── sliding_pane
│ │ │ ├── About.svelte
│ │ │ ├── SlidingPaneHeader.svelte
│ │ │ ├── SlidingPane.svelte
│ │ │ ├── PageEvents.svelte
│ │ │ └── SameLocationEvents.svelte
│ │ ├── menu
│ │ │ ├── DropdownMenu.svelte
│ │ │ ├── DatePicker.svelte
│ │ │ └── MenuDropdown.svelte
│ │ ├── map
│ │ │ ├── createMarker.js
│ │ │ ├── MarkerIcon.svelte
│ │ │ ├── MapPopup.svelte
│ │ │ └── WikiPreview.svelte
│ │ └── appState.svelte.js
│ └── App.svelte
├── svelte.config.js
├── .gitignore
├── package.json
├── vite.config.js
├── jsconfig.json
├── index.html
└── notes.md
├── LICENCE.txt
└── README.md
/worker/dev_assets/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/worker/local_assets/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .vscode
2 | .DS_Store
--------------------------------------------------------------------------------
/data_curation/utils/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/data_curation/generated_data/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/data_curation/wikipedia_data/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/data_organization.md:
--------------------------------------------------------------------------------
1 | # Data Organization in Landnotes
2 |
3 | Section in progress.
--------------------------------------------------------------------------------
/data_curation/requirements.txt:
--------------------------------------------------------------------------------
1 | cartopy
2 | wiki_dump_extractor[llm]
3 | sqlalchemy
4 | rapidfuzz
--------------------------------------------------------------------------------
/website/public/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zulko/landnotes/HEAD/website/public/icon.png
--------------------------------------------------------------------------------
/docs/assets/geoquash.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zulko/landnotes/HEAD/docs/assets/geoquash.jpg
--------------------------------------------------------------------------------
/docs/assets/geoquah_tree.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zulko/landnotes/HEAD/docs/assets/geoquah_tree.png
--------------------------------------------------------------------------------
/docs/assets/completed_tree.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zulko/landnotes/HEAD/docs/assets/completed_tree.jpg
--------------------------------------------------------------------------------
/docs/assets/dates_by_year.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zulko/landnotes/HEAD/docs/assets/dates_by_year.png
--------------------------------------------------------------------------------
/docs/assets/geohash_level0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zulko/landnotes/HEAD/docs/assets/geohash_level0.jpg
--------------------------------------------------------------------------------
/docs/assets/geohash_level1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zulko/landnotes/HEAD/docs/assets/geohash_level1.jpg
--------------------------------------------------------------------------------
/docs/assets/geoquash_tree.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zulko/landnotes/HEAD/docs/assets/geoquash_tree.png
--------------------------------------------------------------------------------
/docs/assets/map_geoquashes.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zulko/landnotes/HEAD/docs/assets/map_geoquashes.jpg
--------------------------------------------------------------------------------
/website/public/icon-192x192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zulko/landnotes/HEAD/website/public/icon-192x192.png
--------------------------------------------------------------------------------
/website/public/icon-512x512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zulko/landnotes/HEAD/website/public/icon-512x512.png
--------------------------------------------------------------------------------
/docs/assets/event_screenshot.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zulko/landnotes/HEAD/docs/assets/event_screenshot.jpeg
--------------------------------------------------------------------------------
/docs/assets/pages_until_year.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zulko/landnotes/HEAD/docs/assets/pages_until_year.png
--------------------------------------------------------------------------------
/docs/assets/geoquash_tree_zooms.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zulko/landnotes/HEAD/docs/assets/geoquash_tree_zooms.jpg
--------------------------------------------------------------------------------
/worker/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "printWidth": 140,
3 | "singleQuote": true,
4 | "semi": true,
5 | "useTabs": true
6 | }
7 |
--------------------------------------------------------------------------------
/docs/assets/pushing_down_the_tree.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zulko/landnotes/HEAD/docs/assets/pushing_down_the_tree.jpg
--------------------------------------------------------------------------------
/docs/assets/map_geoquashes_completed.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Zulko/landnotes/HEAD/docs/assets/map_geoquashes_completed.jpg
--------------------------------------------------------------------------------
/website/README.md:
--------------------------------------------------------------------------------
1 | # The Landnotes app
2 |
3 | For local development use:
4 |
5 | ```
6 | npm install
7 | npm run dev
8 | ```
9 |
10 | Pushes to master trigger a redeployment of the website.
11 |
--------------------------------------------------------------------------------
/website/public/icons/README.md:
--------------------------------------------------------------------------------
1 | # Icons from Lucide
2 |
3 | The icons in this folder come from the open source Lucide icons library and are under the ISC License (see https://lucide.dev/license for license details).
--------------------------------------------------------------------------------
/website/src/main.js:
--------------------------------------------------------------------------------
1 | import { mount } from 'svelte'
2 | import './app.css'
3 | import App from './App.svelte'
4 |
5 | const app = mount(App, {
6 | target: document.getElementById('app'),
7 | })
8 |
9 | export default app
10 |
--------------------------------------------------------------------------------
/worker/.editorconfig:
--------------------------------------------------------------------------------
1 | # http://editorconfig.org
2 | root = true
3 |
4 | [*]
5 | indent_style = tab
6 | end_of_line = lf
7 | charset = utf-8
8 | trim_trailing_whitespace = true
9 | insert_final_newline = true
10 |
11 | [*.yml]
12 | indent_style = space
13 |
--------------------------------------------------------------------------------
/website/svelte.config.js:
--------------------------------------------------------------------------------
1 | import { vitePreprocess } from '@sveltejs/vite-plugin-svelte'
2 |
3 | export default {
4 | // Consult https://svelte.dev/docs#compile-time-svelte-preprocess
5 | // for more information about preprocessors
6 | preprocess: vitePreprocess(),
7 | }
8 |
--------------------------------------------------------------------------------
/worker/vitest.config.js:
--------------------------------------------------------------------------------
1 | import { defineWorkersConfig } from '@cloudflare/vitest-pool-workers/config';
2 |
3 | export default defineWorkersConfig({
4 | test: {
5 | poolOptions: {
6 | workers: {
7 | wrangler: { configPath: './wrangler.jsonc' },
8 | },
9 | },
10 | },
11 | });
12 |
--------------------------------------------------------------------------------
/website/src/vite-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
10 | Landnotes shows Wikipedia places and events on a map (see the menu
11 |
12 | for options).
13 |
16 | There are currently 6.5 million events extracted from 400,000 articles using 17 | Google Gemini. If anything doesn't make sense, blame it on the AI! There 18 | might be 10 times more events to extract by scanning all of Wikipedia - 19 | learn more on the project's Github page. 23 |
24 | 25 | 26 |8 |
16 |
19 |
20 | No page specified
139 | {/if} 140 |







