Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/blacksmithgu/datacore
Work-in-progress successor to Dataview with a focus on UX and speed.
https://github.com/blacksmithgu/datacore
database obsidian obsidian-md personal-knowledge-management pkm
Last synced: 27 days ago
JSON representation
Work-in-progress successor to Dataview with a focus on UX and speed.
- Host: GitHub
- URL: https://github.com/blacksmithgu/datacore
- Owner: blacksmithgu
- License: mit
- Created: 2022-12-26T21:20:16.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2024-09-03T00:08:57.000Z (2 months ago)
- Last Synced: 2024-09-30T09:40:52.658Z (about 1 month ago)
- Topics: database, obsidian, obsidian-md, personal-knowledge-management, pkm
- Language: TypeScript
- Homepage:
- Size: 748 KB
- Stars: 1,392
- Watchers: 131
- Forks: 14
- Open Issues: 20
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.txt
- Roadmap: ROADMAP.md
Awesome Lists containing this project
- jimsghstars - blacksmithgu/datacore - Work-in-progress successor to Dataview with a focus on UX and speed. (TypeScript)
README
# Datacore
Datacore is a work-in-progress re-imagining of [Dataview](https://github.com/blacksmithgu/obsidian-dataview.git) with a
focus on 2-10x better query and rendering performance, as well as fully interactable views.## Roadmap
Datacore is a work in progress. For more details, check out the [roadmap](ROADMAP.md).
### Differences from Dataview
Datacore is fundamentally the same thing as dataview - an index over Markdown files that supports live-updating views
and metadata. However, Datacore focuses on substantial index changes for performance, as well as a new sleek UI which
completely replaces traditional Dataview queries. Datacore supports all query operations that Dataview does, with some
extra functionality.- **New Javascript API**: Javascript-based views are now React-based and support internal state, flickerless updates on
index changes, and a new query API which is much more performant than `dv.pages().where(...)`.
- **WYSIWYG Views**: Datacore queries now use a responsive table view and can be manipulated with a table editor much more akin to
what you would see in places like Notion and Airtable.
- **Functioning Embeds**: Markdown page, image, and video embeds now work in all views, and a new special view type
which is just a list of embeds has been added.
- **Live Editing**: Values inside of table views can now be edited; task views include more nuanced rendering of
metadata like due date and more operations for manipulating tasks directly.
- **Section / Block Queries**: Datacore indexes all files (including attachments, PDFs, and images), and supports queries
at section and block level granularity.## Compiling & Building
You can do a first-time setup of the repository by making sure you have `yarn` installed and then just running
```bash
yarn install
yarn run build
```This will invoke `esbuild` under the hood and dump the final plugin into the `/build` directory. There is a short script which can then copy the compiled plugin into your vault -
```bash
./scripts/install-built /path/to/your/vault/root
```You can combine the build and install into a single command:
```bash
yarn run build && ./scripts/install-built /path/to/your/vault/root
```## Formatting & Running Tests
You can format your code via
```bash
yarn run format
```And you can run jest tests via
```bash
yarn run test
```## Contributing
**Discord**: .
Contributions are welcome; for large contributions, we recommend reaching out via email or discord to make sure what you are trying to implement is reasonable / feasible!