ub-movements/README.md

63 lines
1.8 KiB
Markdown
Raw Normal View History

2024-06-21 14:57:44 +00:00
# Movements in the UvA University Library
2024-04-26 13:12:09 +00:00
2024-06-21 14:57:44 +00:00
# Usage
2024-04-26 13:12:09 +00:00
2024-06-21 14:57:44 +00:00
Run dev server:
2024-06-21 14:57:44 +00:00
```sh
npm run dev
```
2024-06-21 14:57:44 +00:00
Or, to expose it on the network: `npm run dev -- --host`.
2024-06-21 14:57:44 +00:00
Update data:
2024-06-21 14:57:44 +00:00
```sh
poetry run python parse_data.py
```
2024-06-21 14:57:44 +00:00
# Install
2024-06-21 14:57:44 +00:00
```sh
npm install
poetry install
```
2024-06-21 14:57:44 +00:00
# TODO
2024-06-21 14:57:44 +00:00
In progress:
2024-09-27 12:27:35 +00:00
* Currently drafting the timeline. Events should show up in the timeline, and still need to pass Events and Overlay_Motions to the scene object. Possibly in a data wrapper. Currently timeline pick a relevant Item
* Scene All:
* draw according to clock
* Show date + time in corner (or use timeline as in Inspiration screenshot -- https://codepen.io/noeldelgado/pen/JdbmYW )
* draw special items (e.g. oldest, most travelled), or just a random title every one in a while
* Counter per library
* Full opacity while drawing so it is clearer which is being drawn.
* Scene timeline
* Draw in reverse?
* Put "travelling from" above "Item arrived", and increase the .divider translateY
* Fade out All movement to highlight the new item
* Put the title more front and center to make it clear an item is selected
* "Missing data" when _current source_ != _previous target_
* E.g. dotted line.
* Possibly end with "added to archive"
* Or another kind of summary at the end
Ideas:
* Can we export get borrow moments for scene.timeline log?
* Can we fill in gaps in travel timeline
2024-06-21 14:57:44 +00:00
#
2024-06-21 14:57:44 +00:00
TODO: check out https://threlte.xyz/ for moving to Threejs instead of svg.
2024-06-21 14:57:44 +00:00
* Story
* Scene
* Oldest item
* All items last month, one by one
* Journey of selected item
2024-09-27 12:27:35 +00:00
2024-09-27 12:28:28 +00:00
Or as middle ground use canvas with **paperjs** or **fabricjs** to draw on canvas instead of SVG. Other [canvas engines](https://github.com/slaylines/canvas-engines-comparison?tab=readme-ov-file) might also work. E.g. [Pixi](https://pixijs.com/) uses webgl