roadmap

general

  • Fix the items mentioned in issues.
    • Work towards creating more data-defined software… do more with less code. This makes the software more 'malleable' for various contexts (eg. datasources, fields, languages, content rendering functions).
    • Improve and maintain conceptual integrity of how the various Conzept framework pieces fit together: datasources, fields, URL structure, central configuration of common data across apps, easy intercommunication between apps, recursive Conzept views, 5D views (3D location + 1D time + 1D data-view).
  • Get more engagement and feedback from users and software developers.
    • What should and could be improved for them in the knowledge exploration and learning process?
  • Composable search functionality (mostly done). Allow for combining:
    • search terms
      • including “double-quotes” (for literal phrase searching) (TODO: test for using multiple literal phrases)
    • search scope: datasource set or individual datasources
    • search filters: media-type (done), geospatial contraints, temporal (year-range) contraints
    • search sorting: common sort-keys
  • Unfinshed search-modalities:
    • Geospatial search (status: partly done for Wikidata)
      • open issue: URL-serialization not working correctly.
      • Implement for other datasources (with geo-search support)
    • Structured search using SPARQL (beyond Wikidata)
      • Ontology classes
      • Ontology properties
      • Autocompletion
      • Multi-lingual labels
      • Handle CORS issues
  • Potential new search modalitites:
    • Temporal-range search (point-in-time, start-time, end-time) (status: implementation started)
  • Improve existing search modalities:
    • ? Wikidata: Allow for filtering by raw-text-strings in “structured search” (currently not supported in the Wikidata-query-builder)
    • Wikidata: Add claim-support to the Wikidata-data fetching (and support for claim-data in the field-definitions).
  • Speech-based search input
    • how to allow for multi-line text input?
    • hwo to combine speech-input with search commands?
    • Currently this is used a little for AI-chat and simple mathematical graph plotting.
    • How could we combine this with multi-modal, client-side AI?
    • What other search-commands are needed?

datasources

  • Implement async wikidata-enriching (partly done)
  • Indepent active/autocomplete/search toggles per DS (eg. to allow for searching Wikipedia concepts in other datasources). More control over how datasources are used, with toggle-switches for:
    • datasource is active (boolean toggle)
      • datasource autocomplete (boolean toggle)
      • datasource searching (boolean toggle)
  • Improve existing datasources (use more datasource meta-data, better view-pages, etc.)
  • Candidate new search-in datasource-sets:
    • “web search” datasource
    • art / museum archives
    • youtube (requires approval)
  • Add a datasources search-filter (needed when the list gets too large)

presentation system

  • Allow for extra Text-to-Speech (TTS) storylines around a topic (beyond Wikipedia and Wikidata information).
    • Related books, science articles (partly done), AI-generated summaries and other content, AI explain text selection, …?
  • UI for creating and sharing user-created presentations around a topic.
    • Allow for bookmarking presentations

browser extension

  • Re-implement the extension with Manifest v3 support (MV3). This is a requirement for the Chrome extension store.
    • Maybe look into using the Plasmo browser extension framework.
    • Goal: Provide a right-click menu-option to search on Conzept (make it work in embedded iframes and perhaps PDFs too, if possible)

frontend ideas

  • Bookmarking:
    • Cross-tab bookmark state-syncing
    • Allow for bookmarking presentations
    • Bookmark edit mode → then click on bookmark → display bookmark edit modal → save button
    • Better generic data support, based on the “item data object”
    • Add more input-formats:
    • Research better drag-and-drop support
  • Find and integrate a more lightweight MIDI-webcomponent, if available (html-midi-player is more than 0.5MB by itself!)
  • 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)

admin-dev workflows

  • Clean up any issues with field definitions:
    • Turn the the inline-API field-structure into an object (instead of a string)?
  • Field-translation support: Create a structure to store field-label translations (title and icon-title), both for Wikidata and non-Wikidata fields.
    • Allow the json2fields script to fetch and store property translations too.
  • Add a test-framework → start adding tests for the most essential / complex code parts
  • How to detect if the field URL could be embedded (instead of opening a a new tab)? (run a headless browser loading an iframe with the URL, checking for CORS-errors?)

educational-support enhancements

  • Collaborative & social learning features:
  • Quizzing: Auto-generated, spaced-repetition-based facts learning (for a certain topic / set of topics / topic-domain)
  • Experiencing / Simulating: eg. play Chess positions (done), …
  • ? Note-taking integration (eg.: Bangle, …)
  • Better ways to indicate personal and professional interests (similar to the persona-tags setting)

other ideas

  • ? Offline(-first) support with content-caching (especially useful when traveling and/or without reliable internet-connectivity).
  • ? 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, …)