old notes
[ note: this “old notes” page is a scratchpad of useful concepts, potential features and pesky issues ]
other ideas
- Look into using more web components:
- component.gallery (overview of webcomponents)
- Add optional geolocation-support, so we could route a user from the current location to the location of a topic, using the OSMR routing app. See also: offline hiking-maps app
- JSON-LD enhancement: “Add schema:about properties that include #Wikidata (/entity/{id}) and #DBpedia (/resource/{id}) identifiers as property values.” * (this is useful when there are multiple subjects, beyond the main subject)
- ? Offline(-first) support with content-caching (especially useful when traveling and/or without reliable internet-connectivity).
- Example apps: hiking-map app
- ? Research creating some kind of a simple web-application interface standard for input/output/event-handling:
- URL parameter IO (iso2 language, search-string, ID, …)
- Event-handling (other view triggers, key-bindings, fullscreening, …)
-
- sparql-endpoint testing: query all endpoints (note: some endpoints are dead) → then open “sparql explorer 2” in the main-section
- Handle HTTP GET/POST CORS issues with the SPARQL-endpoints (not sure POST is supported in the current Conzept proxy-service)
- build steps here
- See also: SparqlExplorer
- Find and integrate a more lightweight MIDI-webcomponent, if available (html-midi-player is more than 0.5MB by itself)
abstract ideas
- user controls the topic 'journey':
- topic selection (by searching or browsing - and then perhaps filtering)
- explore related topics
- explore internal links
- view other topic dimensions: video, images, etc.
- domain specific exploration: context control (input/select/filters+sorting) & discovery (browse/search/click/…)
- classs (or class tree)
- subclasss (or subclass tree)
- startdate : enddate
- ? filter string
- mental model structure ideas:
- users:
- ..
- developers:
- moldable development (less coding time, more expression / exploration / impact)
design principles
- UX & general design info:
-
-
- Operating Systems design: virtualization (abstraction), concurrency (async), persistence (storage), security (trust and safety)
- Threat Model Manifesto (towards more robust systems)
- “The evolution of computing implies a requirements hierarchy. If the hardware works, then software becomes the priority; if the software works, then user needs become important; and if user needs are fulfilled, then social requirements arise. As one level's issues are met, those of the next appear” - *
- …
- predictability, learnability, memorability, focus
- “Easy to learn, nice to master”.
- “I can remember what that is and where that is”.
- “I still know how to use it”.
- clean UI
- “Put work in front of real people early and often.” (1)
- “Start with user needs, avoid making assumptions”
- “Test and iterate regularly with users”
- “Iterate based on evidence”
- “Release early”
- build-in ambient music for better focus? 1
- effectiveness
- “To understand something, you must actively engage with it.” - *
- efficiency
- performant
- Automate everything that can be automated (both on the server and the client).
- “Do the hard work so the user doesn’t have to”
- “Don't make me think!” (don't waste a users cognitive energy, if that can be avoided.)
- satisfaction & joy
- “… build something genuinely useful, something which really does make people’s lives simpler, more pleasant, productive and fun, our job is also to understand what people think they want and then translate the value of [our application or service] into their terms.” *
- joyful: adventure, knowledge, progress
- “build trust and familiarity across products”
- reliability (low error rate)
- adaptability
-
- “Always consider your design a subsystem. (…) Whenever you’re designing something, the first step is: What is the system my system lives in? I need to understand that system to understand what my system does.”
-
- accessibility (needs more work)
- “Strive to support all who need the product”
- desktop user experience
- mobile user experience (needs more testing and development)
- design for the “Big Screen” too (think: teaching, presentations, workshops, etc.)
- “Design for the most constrained environment”
- “Be part of the open digital community”
-
- check with chrome-extensions
- add “tab-indexes” on “onclick-elements”
- …
- see also:
- people:
- M. Karpeles ideas and projects (OpenLibrary)
- Gerard M. blog (wikimedia)
“When you want to hurry something, that means you no longer care about it and want to get on to other things.” - Robert M. Pirsig
business
“The only two frictions for user adoption are knowing about it and a desire to use it.” - *
- key users:
- professional users (marketing aimed at academic professionsals, scientists, writers, journalists, libraries)
- students (marketing aimed at schools / universities / student groups)
- casual users (marketing aimed at popular hangouts of english-speaking, educated people)
- adult life-long learner (broad interest person, retired professional, high IQ person)
- children and adolescents (marketing aimed at parents to stimulate their childrens curiosity, learning and growth)
-
-
- mission statement: “Provide the best encyclopedia service for individuals and organizations.”
- B2C strategy for third-party integrations?
- key measures of success:
- Have fun developing Conzept.
- Have many happy users.
- Have premium subscribers who love the Conzept service.
- Have Conzept being used in schools, universities and public libraries around the world.
- Provide other people the opportunity to help develop and maintain Conzept.
- Help out projects upon which Conzept depends (and give back to the community where possible).
- Join discussions for related developments of knowledge systems.
- develop the mission strategy
- “pick three key attributes, get those things very, very right, and then forget about everything else (…) By focusing on only a few core features in the first version, you are forced to find the true essence and value of the product.”: pleasant, inspiring, empowering
- The most pleasant, effective and efficient encyclopedic experience ever.
- Inspiration is the energy driving motivation and perseverance of learning and doing. Make the encyclopedic information and its information-relations shine as bright as possible.
- A promise to keep improving the experience and adapt to any new insights.
- marketing for engineers (list of links)
- brainstorming, first principles, traction channels
-
- marketing infrastructure: twitter, reddit, facebook, educational networks (schools, universities, parent orgs), …
- SaaS pricing
- SaaS tools/services:
prio state-flow issues
- implement dual-pane-URL-parameter-control
- review “hash” handling code:
- URL hash not working in all cases (due to character encoding)
- make it robust
- make it also handle the new “:~:” text-fragments standard
- other state-related flows:
- back-and-forth bugs: click on geocode → then go back (not working)
- push/pop page-state changes not always updating result list after “reload this topic” (find the cause)
- also set “explore.language_direction” when going back in the history (eg. from Hebrew to an English topic)
prio now issues
- BUG! sometimes NOTHING can change the URL-title anymore –> research what is causing this!
- clues: “going back to a link-split URL” triggers it?? 1
- BUG! font-change is not propagated to the iframe immediately
- BUG! this article does not load the wikipedia page, why? 1
- BUG: the “contains admin. entities”-button fails to show the fetched labels: 1 (could this be because there are more than 50 labels to fetch?)
- BUG: this page fails to load the existing wikipedia page: 1
- make mobile UX good
- BUG: mobile-random exception in line 12588: res.parse is undefined
- BUG: fix second-content-pane bug
- add swiper-action to default blank page
- add a fixed-button for showing the ToC menu?
- darkmode: autocomplete-item-text not styled yet
- also support 3D glb files in the infobox: 1
- multi-source search integration (wikidata, other SPARQL end-points, etc.)
- no art works found for this artist, why?: link
- improve art browser, inspiration: https://openartbrowser.org/en/
- fix roundtripping bug in root-graph reloading: 1
- history timeline inspiration: 1
- quiz app
- BUG: clear map-marker after round
- word-fill-in-animation 1
- new infinite-scroll data API app structure
- implement more frequently used properties (including multi-values): 1
- BUG: page does not load: 1
- BUG: openstreetmap-map-image not opening (due to other px syntax in URL?)
example: 1
- BUG: compare view: openseadragon-zoom state can't be exited!
- todo: sort out what to do with the skipped images (icons, etc.)
- search museum → sidebar: category:museum undefined
- Wikipedia rendering issues:
- external-link not being opened in new tab: 1 (click on “interactive version”)
- improve image-gallery parsing
- images:
- non-thumb-images:
- infobox
- improve overall styling where possible
- on mobile the infobox needs to be slightly narrower
- can we make the infobox width the same as the right-aligned-thumbs?
- handle detail-open-close elements
- example “Infobox NavFrame”: 1
- test various articles + languages
- internal hash-links of the infobox are not working: 1
- text-align center on infobox table-tr-header not yet implemented, example: 1
- target position to sub-headers too far
- darkmode needs more fixes: infobox, galleries, wikipedia-link-previews, etc.
- wikipedia-preview, see: 1
- encode special characters in URL? example link “grand slams” and those after break: 1
- allow user to toggle this feature on/off
- change bottom links to icons for: read-article | explore this topic
- improve preview header text
- article which has bad html-rendering: 1
- ToC
- ! research the weird “__” title bugfix
- mobile ToC: 1
- links
- user-controlled link-bolding not working (for now this is switched on by default)
- bug: the external link “wiki” → “explore” here: 1
- table styling:
- use same styling as wikipedia?
- test cases:
- hatnote:
- image-in-hatnote breaks line: 1
- image-map not rendered correctly:
- infobox image is misaligned (image-map within the infobox)
- perform multi-lingual tests!! –> when good: port changes to production
- multi-column not working anymore
- category redirect/empty notice not visible: 1
- make the mobile experience great:
- implement multi-frame doc-content
- center infobox on mobile
- make darkmode-theme more aligned with Android. Use :root css variables and see if we can avoid the white-flash.
- see also: JS CSS API
- make detail-elements taller and the fonts larger
- mobile landscape-mode not using the whole screen. (ok for desktop, not mobile)
- fix iOS issues: language undefined, …
- make charts have a minimum height, see also: 1
- is structured-search too slow on mobile? Should we async-preload the large JSON data files?
- on mobile: give detail a subtle background color, so hitting it is clearer and easier.
- on mobile: make the “clear-search button” larger.
- on mobile: add bookmarking link button on content pane
- improve maintenance factor:
- refactor & DRY code (simplify any complex state-handling code)
- collect and document PATCH sets
- setup testing:
- functional tests
- better automated backups & restore docs
- native locale not always used on first visit: example
- set correct custom-parameter in the URL when loading this compare request
- global-hover-menu-fullscreen button not working during split-content-window use.
- implement backend integration
- current issues:
- socketio path issue
- …
-
- steps: mongo install
- add Stripe API integration
- the wikidata link in the navbox at the bottom is linked from, example: 1
- badly rendered image map: 1
- map with link-labels badly formatted: 1
- for timelines: change width too 100% (is this correct in all cases?): 1
- “tright” table layout not good enough here: 1
prio 0 issues
- fix: “TypeError: r.shift is not a function libs.js:2:40107”
- broken infobox: 1
- fix small-image-icon alignment issues, examples: 1
- make “coverhex” page also work on mobile
- BUG: lineage-table overflows page-width (also on Wikipedia!) 1
- overview map breaks for some data: jquery error: “Unexpected end of JSON input at JSON.parse”
- claims sometimes contain start + end dates, but statements only the inception date (leading to reduced dating info): 1
- graph-view issues:
- show the qid (instead of the whole qid-url?) as the link title
- maybe? allow for recursive-interactive querying of the tree-nodes by the concept-URL convention.
- is there a way to show a useful taxonomy tree for “common organism names”, eg cat?
- table-view issues:
- group “actings” by itemLabel
- add optional image (P18) for: film actings, written works, …
- the bookmark-action should not update the URL (as it serves no purpose)
- if first user action is of type 'bookmark' rewrite it the type to 'wikipedia'
- wikidata-query: wikipedia-side issue:
- done by qid? lookup language-specific wikipedia article (instead of just trying to search for the title)
- example: J. Sibelius → compositions graph → “Pan and Echo”
- map-view issues: wikidata-qid page not showing sometimes (for items missing labels?)
- external URL-encoding issues: example
- add a “content-frame-only-output”-parameter to be able to check the wikipedia page rendering in all online accessibility-tools
- image zoom issues:
- navigator-window not showing 1
- compare app: openseadragon-viewer not hiding when closed (or not being closed?)
- zoom not working on some (my) Android phone → Check other physical devices.
- how to properly encode the “language &” so that it can be copy and pasted without loosing the “&language=” part.
- “text-align-center” media icons
- closing the “LC-lightbox”-modal scrolls to the top of the page (in some situations), why?
- allow the locale to be set via an URL parameter
- keyboard access issues:
- settings: font-selection using UP/DOWN + ENTER key not working
- bookmark keyboard-click not working
- needed: search-input-focus / iframe-focus key-combo toggle
- languages.js file:
- add any missing “qid”-fields
- use the “qid”-field to fetch the localized-language-name and render that as the language label
- wikipedia-content-with-link-hash is not encoded correctly
- example case: 1
- add a close-button to the language-select modal
- “nearby” click within nearby-view: scrollToTop() not working
- create new OpenLibrary search/browse app based on the API
- main reason: overcome CORS restrictions and have much better UX integration (visual styling, deep-link bookmarking, …)
- use infinite scrolling for results
- todo: reseach if anyone as been working on this.
- tools: itemJS, facetedsearch
- Android:
- image | video | archive | … action-buttons not working (incorrectly only does a hash-change due to incorrect type-history-management)
- iPhone:
- bold link activation not persistent across page loads.
- add more bottom space to any list view
- Links and backlink view gives same results??
- improve security factor:
- links app: comma-in-title needs escaping, examples: 17
prio 1 issues
- add licenses and links of the used projects to a credit-overview page
- links app: title-with-comma are not expanded automatically (why does this happen?): 1
- set true topic title for rechecked-title-lookups: 1
- fix support for the pre-html-tag (see: “01-document/preProcess/index.js”) in the wiki-text, examples: 1
- add some kind of ip2country lookup system, to detect the user country
- wander app:
- design a system to show several types of media (videos, images, …?)
- data structure of the global media queue
- how to structure the wander app to handle more media types
- can we keep fullscreen on continuously?
- allow for keeping wander in fullscreen: needs postMessage-messages + body-html-regeneration (instead of URL-loading)
- images slideshow example code: images-from-wikidata-sparql slideshow
- openlibrary: OCLC, DOI identifier search
- use unpaywall.org for DOI queries
- make topic-compare-values (especially for the GBIF related properties) clickable: example
- correct function in split-pane situations depends on the fix for setting the qid in the secondary content-window
- europeana app:
- get fullsize image link (from guid data field? or the JSON it points to?)
- get direct pdf/text/… download link if possible
- make audio and video data work
- lowercase all type fields
- replace type fields with an icon in the html
- add a language indicator to bookmarks
- graph: complete owners detection:
- { prop: 'P127', name: 'owner', to_q: false, edge_color: '#3923D6' },
- done: { prop: 'P749', name: 'parentOrg', to_q: false, edge_color: '#FF4848' },
- { prop: 'P1830', name: 'owns', to_q: false, edge_color: '#3923D6' },
- done: { prop: 'P355', name: 'subsidiary', to_q: false, edge_color: '#FF4848' },
- splitter-handles in chrome too close to scrollbar?: add “margin-left: 2px” to .vsplitter (but only for embedded frame), to visually separate the scrollbar from the splitter-bar
- on chrome mobile: fullscreen button not working
- integrations of major national library / art / culture repositories:
- India (still non-https)
- …
- make wallpaper work for:
- non-click-actions
- structured-query searches
- svg-images not showing up as background-image
- when dragging the sidebar open, after-mouse-release: show sticky menu again (if sidebar width is more than ??px)
- in Chrome: the ULS items also show some weird up/down arrows. What is this?
- make all embedded apps appear consistently
- make swiping work in other embedded apps (when possible): toogles, …
- add conzept-global keybindings (toggle sidebar, …) to essential embedded apps
- render stock-tickers and exchanges into links for infoboxes
- the 360 tour is not showing for the “Wassu Stone Circles Museum” topic, but wikidata does have it.
- landing page & onboarding flow:
- correctly reset “explore.marks” whenever another article is clicked by the user.
- fix wikidata-query-embed-URL-string-encoding bug (double encoding?), when loading a URL with an embed-query-link in it
- prevent “i=ndefined” as URL parameter (this happens eg. with Book: titles)
- allow “toggling of sidebar” from external apps (graph, video, timeline, wikidata)
- date list:
- date range slider issue: retain date-range-slider state across date-item clicks.
- why are there no dates shown for this article?
- when reloading a specific date-list-actived item: scroll to that position in the list and highlight the date entry.
- properly encode bookmark-URLs, so they can be independantly reloaded correctly
- can we make article language selection work earlier than after full article load? At least if it's loaded or not.
- better async function handling & webworkers
- design a robust, async wikidata-label-fetching system
- BUG: sometimes typing a query in (fast?) does not load the correct results, why?
- improve performance factor:
- improve initial app loading performance: Lighthouse report
- ? initial app loading indicator
- for CSS-style settings: modify the iframe-document-stylesheet ONCE (instead of modifying the element-css every time the iframe is loaded).
- single-quote commons images don't load fullsize image in the lightbox
- LC lightbox issue: when thumbnail-view is activated the “lc_text” should be moved adaptively up (using a CSS class).
- fix and test mobile layout issues:
- improve cross-mobile-device content-pane-padding with balanced and sufficient margins
- fix show-thumbnails-toolbar hiding issues
- make TinyGesture.js left-right-swiping more responsive (lower x-distance-threshold and lower velocity-threshold)
- fix floating-button-menu placement (sometimes to high up, why?)
- make second-level-explore content frame work correctly om mobile
- add exit-UX in image-gallery-view
- orientation change does not update the iframe height correctly
- add “desktop / mobile” switch to settings menu?
- ? allow dynamic ToC when: 1) the orientation is “landscape”, 2) the window.screenWidth is more than ….px
- handle scroll-to-top for mobile tabs (with refreshed content) better
- iPad: grayscale mode not working
- Windows surface: darkmode not seen when toogles windows was not already in view.
- other iOS issues?:
- fix: infoboxes are hidden (due to them not having the correct width with large images)
- looses search-input-focus when typing (why?) (related, iOS disabled features: jQueryUI-autosuggest, history.pushState() reload whole page)
- search-input not styled correctly before any input-focus
- right content scrolled down (unneeded)
- ToC clicks cause reload
- clicking on a bookmarked topic icon should remove the bookmark.
Invalid Link
- add documentation (guidelines):
- tutorial (“get started”)
- make an introduction video using: videopuppet?
- howto-guide (“how to complete goals”)
- see also: trevor-demo-system, doc
- reference (…, keyboard-controls)
- explanations (tips / definitions / general app info: about, contact, etc.)
- integrate language <-> countries info via the restcountries API
prio 2 issues
- browser specific issues:
- MacOS Safari: sometimes list-content is not being displayed (why?)
- MacOS Safari: a bit more white space to the right on wikipedia content, also to the left between toc.
- Edge: list contents sometimes being removed after being displayed (why?)
- middle-button-clicking on links in the sidebar should open them in a new window
- fix & test auxClick() use
- fix mobile performance issues
- wdq tool: research sparql-based faceted-filtering of table results
- add multi-select config for switching media-action-topics (science, history, legal, etc.) on or off. Also make the list-order customizable?
- FIXED? better fix for sticky-nav-gaps showing scrolling background ( as “margin-top -2px” causes other issues)
- some externel-link-urls are not formatted as links, examples: 1
- research/find fixes for persistent loading-indicator (mostly seen when wikipedia image loads fails?)
- non-loading images also block the lightbox-plugin from going to the next image.
- prevent the “white-flash” upon iframe-loading when resetting iframed in dark-mode
- research a good solution to not allow sidebar-bar-visible-browsing to be regular in embedded-app-views. (maybe allow for hiding the sticky-menu via a URL parameter?)
- wordmap-app fullscreen toggle not working correctly (due to the resize event causing a window reload)
- wrong text-order: bad versus wiki-source
- missing (non-xml) gallery: 1
- image-layout not rendered correctly: 1
- incorrect hash-link: 1
- missing link containing parenthesis: bad versus wiki-source
- plain wiki-text list not displayed: 1
- dates type issues:
- going back for a dates URL does not render the list-view in the sidebar anymore
- clicking on another article in a dates-view → click on a data → TODO: first render article in the content frame.
- store section-id in URL via the “i” parameter?
- data-fetching-layer & paging: correct slighty-off wikipedia total pages flow
- add more icons, see: free design resources
- add more AJAX error-handling and error-reporting
- plugin system:
- data input hooks
- data source type: static JSON, remote API
- data source configuration object: name, index fields, search limit (per page), …
- data source function-hooks registration and calling
- implement optional data source loading in configuration menu (eg. for museums)
- data output hooks
- hookup new render types via plugins
- implementation examples: microplugin.js, 1
- sometimes the 'explore-this-topic' action (on the Wikipedia-page) fails to replace the left-pane state, why?
- force portal tables to fit width: layout problem example
- Bibliography / ISBNs: what is going wrong here compared to the original section
- screen rotation & resizing handling:
- resize / reload whole application again? in landscape mode screen-switch arrow is not visible anymore
- define the minimal screen-sizes to show the “wikipedia dynamic ToC”.
- respect the previous sidebar-toggle-value when the screen was resized
- on very large screens: allow the second content-frame to show the ToC for wikipedia articles.
- wikipedia-language-dropdown languages only showing after input field change, why?
- after typing: also mark the shown article
- Make go-to-top easier to hit, and make it gray in darkmode.
- large-graph-views are not usable: example 1
prio 3 issues
- rarely, but sometimes the ToC list (of first-order headers) is very long, causing some header items not to be visible. Possible solutions:
- aside: overflow-y: none
- make header-items-height a bit smaller
- examples: 1, …
- for wikipedia-content-panes: also add a bookmark-icon to the top-right-corner (alongside the “explore this” and “wikipedia” button)
- add a custom focus style to interactive UI elements (which currently don't have any focus style)
- refractor CSS with mobile as the default
- first H1 should be moved up in desktop-view, but not in the mobile-view.
- in desktop view: when making dragging the content-pane over the sidebar, the logo-header and randombuttom are displayed on top.
- how to implement “toggle-fullscreen” from an iframe? (browser security issue)
- get true iframe-url for internal sites (so the breakout button works correctly)
- darkmode:
- when the leftpane is first minimized and then manually (by dragging) enlarged again, the sticky-menu should be shown again.
- font-switching not applied to the current window-panes on mobile
- hash-string-with-special-characters breaks targeting: example
- query-term with an encoded forward-slash is mis-interpreted as URL-path-separator: example
- unable to prevent the drag-and-drop from triggering the autocomplete-menu?
- for wikipedia-articles with a main geocode, show it on the page.
-
- fix double character-encoding: 1
- TTS system: add supported language-voices to the wikipedia-languages-array
- how to handle queries to specific video-title-requests that also return wikipedia results?
- dynamic ToC issue: can the aside scrollbar be sized dynamically by only accounting for all the visible item-heights?
- allow categories to display their “super/sub/inner-pages relations” to be displayed in list-links
- image formatting sometimes incorrect:
- example (incorrect replacement of %252C ? check original image name)
- on mobile the “random” action should stay left.
- on mobile: collapse video-filtermenu and show a menu button
- how to handle “User:” namespaces better?
* on Windows Edge:
- change summary block from blue to gray?
- Make summary button inline.
- how to properly handle forward slashes in URLs so they can be linked to? example: 1
- detect geocodes in chart-table-cells and render them as map-links, examples: 1
other ideas
- improve tree browsing:
- use entitree?
- or this: family tree tool
- use xeno-canto API to add sounds to the sidebar topics for birds.
- collabaritive experiences:
- voice
- VR
- …
- country statistics: example
-
- indicate visited links when clicking same-domain iframe links (note: middle-mouse-clicked links do registed as visited)
- share buttons
- offline reading
- note taking
- auto-detect non-wikipedia search-types:
- DOI's: example using the CrossRef API library
- detect by a string starting with: “doi:10.1016/j.ihj.2014.10.362”
- Wikidata Qid's: “Q123456”
- detect by a string starting with a capital Q, and where all following characters are a number (at least 2 numbers). “Q23233”
- ISBN's using the OpenLibrary API: “isbn:234-343-320-4994”
- setup self-hosted group presentation / sharing using 2nfm webrtc screen sharing.
- this would eg. allow teachers to take students on a tour through a subject.
- nearby feature should have a map with all locations (overview map)
- add a button (to the location-topics on the left-side) for activating a location in the overview map (right-side)
- integrate GBIF API for organism topics.
- What could we use the species API for?
- add an interactive climate data layer interface:
- Specimens held by a collection
- Type specimens held by a collection
- Species/taxa represented in a collection (with/without specimen counts)
- Sequences, images and other preparations from the collection (but these may be better treated as information about specimens rather than about the collection)
- Datasets (checklists, occurrences, sampling events) associated with the collection
- Collecting expeditions carried out by or contributing to the collection (modeled as sampling events?)
- Collectors associated with a collection
- Publications based on materials from the collection
- Researchers/staff associated with the collection
- Field notebooks
- interactive-visual-search examples:
- integrate visual chemical compound search (github)
- open question: Can we generalize interactive-visual-searching?
- integrate wikiblame tool for user-selected line-strings
- plant search and identification:
- integrate with BirdNet (bird song search and identification)
- integrate with diatoms.org (wikidata)
- integrate with algaebase.org
- get picture of the day and “article of the day”
- 'important' topic spheres which should polished: people, film, companies, painting, music, animals,
- make a system to easily browse the main topics based on the wikidata qid's of those topics. Can we group these main topics in a smaller set of “super groups”?
- research usefulness of scroll-snapping (1) for: articles view, list view, video-grid-rows, …, image-grid-rows
- topical group text/audio/video chat:
- tools to view high-level architecture
- more functional coding approach (single argument functions, immutability?)
- better async data fetching: 1
- are pluggable datasources a good idea? how to integrate these correctly?
- expand internationalization translations
- social sharing with the WebShare API
- research adding zooming into images by mousewheel: openseadragon, mirador (advanced), wheelzoom (basic)
- add “Holland Code” aspiration/preference, which could be used for better predicting topics (and topic journeys) of personal interest.
- table visualization option:
- 1) detect if all the data of the first colum or the first row is time-based (only constrain to years?)
- 2) if so: convert table data to json
- 3) render a multi-axis line-graph for each data column? (1)
- treemap (1) based on the pageviews of all the outgoing-links (and the article itself)
- integrate for category concepts:
- random article in category: randomarticle (src)
- search with depth in category: petscan
- ? store scroll-position for local-iframe-content: $('#infoframe')[0].contentWindow.pageYOffset
- research: cancelling running API queries and processing when the latest query input length is much further far ahead than the processed query.
- select / filter widgets:
- note-taking functionality for internally-rendered content (wikipedia, wikischool)
- store notes locally (as a list of sentence-range numbers)
- detect if current page has related notes, if so: highlight all these sentences in yellow.
- web apps: capstone, video Notational Velocity UX
- render mindmap from markdown using markmap
- goal & activity planner?:
- define life goals
- attach study topics to those goals
- attach activities to those topics and/or goals
- signal motivational messages to the user
- show progress
- functional (end-to-end) testing using Nightwatch.js
- test realistic user paths
- URL parameters
- settings changes
- search-input typing and results
- etc.
- code documentation using JSDoc
- bookmarks tree feature (dev. in progress)
- before any write: first re-read bookmark data from storage
- todo: add confirm-removal-modal
- todo: register and use wikipedia-article-hash
- todo: show language indicator for wikipedia bokmarks (only for non-english articles?)
- bug: show a better “display” value and a “bookmark-type-icon” (if useful)
- export bookmarks to: markdown (preferably dokuwiki compatible), plain text, html, json
- search in bookmarks
- ? todo: remove all saved articles
- ? allow for “marked text sections” (annotation) as bookmarks
- ? server-based syncing of bookmarks (required user accounts + authentication)
- rxdb (synced pub-sub database)
- bug: make bookmarking a “wikischool-page” work correctly
- ? Google translate integration (can be useful beyond the multi-lingual wiki articles)
- wikipedia ToC:
- desktop: allow for hiding/showing via the settings menu and a wikipedia-frame-toggle.
- mobile: display ToC as an overlay-modal?
- display a link to the toogles app, when playing toogle-video window (so this can easily be copied)
- storytelling (todo: define this term in the explore-app-context) from a left-pane-tab
- alternative autocomplete: autoComplete.js
- data graphing:
- SandDance app (“visually explore, understand, and present your data”)
- youtube:
- allow for background video playing
- 1) user clicks the “background-play-this-video” button
- 2) get the current video time-signature & stop video
- 3) load it into the media-player-tab (or via a bookmark-tab or via a floating panel?)
- 4) start playing video at the time-signature
- youtube timestamp list (useful?)
- language options:
- or only set the preferred caption language?
- keyboard controls:
- Allow for using the arrow-keys and [ENTER] to select articles.
- Shortcut-keys for:
- search-input focus
- …
- fullscreening (especially within a video context)
- by “MOD-f” key
- or by a menu-button
- power-user command console: 1
- todo: find article geocodes
- todo: find nearby places
- find the more general parent topic(s) for a given article (if possible)
- find directly related topics (use wikipedia category system?)
- human touch: tips, advice, humour, …
- directions of a concept: eg. guitar
- multiple term
- make result list more accurate
- URL parameters for media-types:
- todo: links, geo locations, tts-wikipedia, bookmarks-tab
- common crawl URL-list by domain: example
- various tips & ideas:
- Twine-iframe experimentation for a storytelling system
- conceptual blending ( “question-interest” + “a varying stimulus” ] to enhance creative thinking
- specific city → local-radio + city-streetcam-switching
- specific country → country-radio + country-streetcam-switching
- specific organism/visual-artist/architect/… → image-slide-show + music
- …
- quizzing and spaced repetition
- local-first “DB engines”: sql.js + load a DB from a remote location, …
- use comlink to offload all-but-the-rendering to a worker thread.
- 3D model viewer (web component)
- go through these study fields and find ways to improve the subject integration with the media-action-sections, eg.:
- chemistry:
- cheminfo tool (still needs some polish)
- pharma
- education
- health
- law
- art
- engineering
- mathematics
- see: math.mx project
- embed interactive (math) content with CindyJS
- integrate Indeed job API
- integrate map-search old map overlays (need to find source-repo to add URL-query-searching )
- link-to / context-search / SPARQL integrate: other data portals
-
- see also:
- interesting “data-driver” visualization library: muzejs
- integrate with the future release of the GeoFluxus waste dashboard app.
technical principles
- 1) URL-params are only used for “initial parameter state loading” and “follow up user-presentation-state” (for visual representation and linking)
- TODO: reset URL-related fields upon each each call to onClick / handleClick
- 2) any link/button actions should contain ALL the required data (but nothing else!), when making a call to handleClick()
- what about “type”-continuation?
- 3) clicking on a link/button should update the URL correctly and ignore representing unneeded fields
tools & data
- tiny-helpers.dev (various online tools)
- integrate? Raun - live edit viewer
- wikidata:
- updated lists of virtual 360 tours: 1
- NLP and question answering:
- compromise (rule-based NLP)
-
- immortalDB (persistent web storage)
-
- Wiktionary word data (returns page ID, see also: tips )
- DBPedia (summary text, categories / labels, redirect titles, broader associations, external links, …:
- datatables (advanced table display)
- wikidata + more comparisons based on datatables
- BioViz tool (its a Java tool though, not a web app)
- What other than “R” OSM types are available to use in border-maps?
- interesting ideas in this tree-graph D3 tool
- research integration with the conceptnet.io API
wikidata timeline
-
- When using WDQ, these properties are used for determining time:
- startTime: 'P577', 'P580', 'P569', 'P571'
- endTime: 'P577', 'P582', 'P570', 'P576'
- ? point in time (P585)
- implement dynamic query building
- concepts / identifiers / items / entities (“Q”):
- Properties (“P”):
- Lexemes [“L”]
- Forms (“F”)
- Senses (“S”)
- realtime query-data (using EventSource)
dynamic query ideas:
- research this complete properties overview
- histropedia:
- list concepts (Q's) (which contain end and start dates): show a list of $Qs (if they contain start and end dates?)
- position-held in $Q (where Q is a geographical region)
- step 2: "instances of" "empire" query
×
>
<