Showing preview only (1,881K chars total). Download the full file or copy to clipboard to get everything.
Repository: obsidianmd/obsidian-releases
Branch: master
Commit: ec107aec2559
Files: 23
Total size: 1.8 MB
Directory structure:
gitextract_c9_29s2c/
├── .github/
│ ├── PULL_REQUEST_TEMPLATE/
│ │ ├── plugin.md
│ │ └── theme.md
│ ├── pull_request_template.md
│ └── workflows/
│ ├── format.yml
│ ├── plugin-stat.yml
│ ├── skip.yml
│ ├── stale-validation-failed.yml
│ ├── stale.yml
│ ├── validate-plugin-entry.yml
│ └── validate-theme-entry.yml
├── .gitignore
├── README.md
├── cla.md
├── community-css-themes-removed.json
├── community-css-themes.json
├── community-plugin-deprecation.json
├── community-plugin-stats.json
├── community-plugins-removed.json
├── community-plugins.json
├── community-snippets.json
├── desktop-releases.json
├── package.json
└── plugin-review.md
================================================
FILE CONTENTS
================================================
================================================
FILE: .github/PULL_REQUEST_TEMPLATE/plugin.md
================================================
# I am submitting a new Community Plugin
- [ ] I attest that I have done my best to deliver a high-quality plugin, am proud of the code I have written, and would recommend it to others. I commit to maintaining the plugin and being responsive to bug reports. If I am no longer able to maintain it, I will make reasonable efforts to find a successor maintainer or withdraw the plugin from the directory.
## Repo URL
<!--- Paste a link to your repo here for easy access -->
Link to my plugin:
## Release Checklist
- [ ] I have tested the plugin on
- [ ] Windows
- [ ] macOS
- [ ] Linux
- [ ] Android _(if applicable)_
- [ ] iOS _(if applicable)_
- [ ] My GitHub release contains all required files (as individual files, not just in the source.zip / source.tar.gz)
- [ ] `main.js`
- [ ] `manifest.json`
- [ ] `styles.css` _(optional)_
- [ ] GitHub release name matches the exact version number specified in my manifest.json (_**Note:** Use the exact version number, don't include a prefix `v`_)
- [ ] The `id` in my `manifest.json` matches the `id` in the `community-plugins.json` file.
- [ ] My README.md describes the plugin's purpose and provides clear usage instructions.
- [ ] I have read the developer policies at https://docs.obsidian.md/Developer+policies, and have assessed my plugin's adherence to these policies.
- [ ] I have read the tips in https://docs.obsidian.md/Plugins/Releasing/Plugin+guidelines and have self-reviewed my plugin to avoid these common pitfalls.
- [ ] I have added a license in the LICENSE file.
- [ ] My project respects and is compatible with the original license of any code from other plugins that I'm using.
I have given proper attribution to these other projects in my `README.md`.
================================================
FILE: .github/PULL_REQUEST_TEMPLATE/theme.md
================================================
# I am submitting a new Community Theme
## Repo URL
<!--- Paste a link to your repo here for easy access -->
Link to my theme:
## Theme checklist
<!--- Confirm that you have done the following before submitting your theme -->
- [ ] My repo contains all required files (please *do not* add them to this `obsidian-releases` repo).
- [ ] `manifest.json`
- [ ] `theme.css`
- [ ] The screenshot file (16:9 aspect ratio, recommended size is 512px by 288px for fast loading).
- [ ] I have indicated which modes (dark, light, or both) are compatible with my theme.
- [ ] I have read the developer policies at https://docs.obsidian.md/Developer+policies, and have assessed my theme's adherence to these policies.
- [ ] I have read the tips in https://docs.obsidian.md/Themes/App+themes/Theme+guidelines and have self-reviewed my theme to avoid these common pitfalls.
- [ ] I have added a license in the LICENSE file.
- [ ] My project respects and is compatible with the original license of any code from other themes that I'm using. I have given proper attribution to these other themes in my `README.md`.
================================================
FILE: .github/pull_request_template.md
================================================
Please switch to **Preview** and select one of the following links:
* [Community Plugin](?template=plugin.md)
* [Community Theme](?template=theme.md)
================================================
FILE: .github/workflows/format.yml
================================================
name: Format
on:
push:
branches:
- master
jobs:
format:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: ${{ github.head_ref }}
- uses: actions/setup-node@v3
with:
node-version: "16.x"
- run: npm ci --no-save
- run: npm run format
- name: Commit changes
run: |
git config --local user.name 'Obsidian Bot'
git config --local user.email 'admin@obsidian.md'
git add .
git commit -m "chore: Format JSON" || exit 0
git push
================================================
FILE: .github/workflows/plugin-stat.yml
================================================
name: Pull plugin stats
on:
schedule:
- cron: "0 0 * * *"
workflow_dispatch: # Put here!!
jobs:
pull-stats:
if: github.repository == 'obsidianmd/obsidian-releases'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v2
- uses: actions/github-script@v6
with:
github-token: ${{ secrets.PLUGIN_STAT_TOKEN }}
script: |
let fs = require('fs');
let plugins = JSON.parse(fs.readFileSync('./community-plugins.json', 'utf8'));
let stats = JSON.parse(fs.readFileSync('./community-plugin-stats.json', 'utf8'));
console.log(`Updating stats for ${Object.keys(plugins).length} plugins`);
let newStats = {};
for (let plugin of plugins) {
let key = plugin.id;
if (stats.hasOwnProperty(key)) {
newStats[key] = stats[key];
}
}
(async() => {
console.log('Rate limit', (await github.rest.rateLimit.get()).data.rate);
for (let key in plugins) {
if (!plugins.hasOwnProperty(key)) {
continue;
}
try {
let plugin = plugins[key];
let id = plugin.id;
console.log(`Downloading stats for ${id} (${plugin.repo})`);
let stats = newStats[id] = newStats[id] || {};
let [owner, repo] = plugin.repo.split('/');
const releases = [];
const releasesData = github.paginate.iterator(github.rest.repos.listReleases, {owner, repo, per_page: 100});
for await (const { data: data } of releasesData) {
releases.push(...data);
}
// stats is Array<{tag_name: string, assets: Array<{name: string, download_count}>}>
let updated = 0;
for (let release of releases) {
let version = release.tag_name;
let assets = release.assets;
let downloads = 0;
let publishTs = new Date(release.published_at).getTime();
if (publishTs > updated) {
updated = publishTs;
}
for (let asset of assets) {
if (asset.name === 'manifest.json') {
downloads = asset.download_count;
}
}
if (downloads) {
stats[version] = downloads;
}
}
let total = 0;
for (let version in stats) {
if (stats.hasOwnProperty(version) && version !== 'downloads' && version !== 'updated' && version !== 'latest') {
total += stats[version];
}
}
console.log(`Downloads: ${total} Releases: ${releases.length}`);
stats['downloads'] = total;
stats['updated'] = updated;
} catch (e) {
console.log('Failed', e.message);
}
}
fs.writeFileSync('./community-plugin-stats.json', JSON.stringify(newStats, null, 2), 'utf8')
console.log('All done!');
})();
- run: |
npm ci --no-save
npm run format
- run: |
git config --local user.name 'Obsidian Bot'
git config --local user.email 'admin@obsidian.md'
git add .
git commit -m "chore: Update plugin stats"
git push
================================================
FILE: .github/workflows/skip.yml
================================================
name: "Skip on comment"
on:
issue_comment:
types: [created]
jobs:
deploy:
runs-on: ubuntu-latest
if: github.event.issue.pull_request && contains(github.event.comment.body, '/skip') && github.event.comment.user.login != 'ObsidianReviewBot'
steps:
- run: gh issue edit "$NUMBER" --add-label "$LABELS"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GH_REPO: ${{ github.repository }}
NUMBER: ${{ github.event.issue.number }}
LABELS: Skipped code scan
- run: gh issue edit "$NUMBER" --remove-assignee "$ASSIGNEE"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GH_REPO: ${{ github.repository }}
NUMBER: ${{ github.event.issue.number }}
ASSIGNEE: ObsidianReviewBot
================================================
FILE: .github/workflows/stale-validation-failed.yml
================================================
name: 'Close stale PRs with failed validation'
on:
schedule:
- cron: "27 3 * * *"
jobs:
stale:
runs-on: ubuntu-latest
permissions:
pull-requests: write
actions: write
steps:
- uses: actions/stale@v9
with:
stale-pr-message: "Hi there, as this PR has not seen any activity in the last 7 days, it will be closed in 7 days unless there are any updates."
close-pr-message: "Hi there, to keep things tidy, we're closing PRs that haven't passed the validation after 14 days of inactivity."
days-before-stale: 7
days-before-close: 7
stale-pr-label: stale
only-pr-labels: Validation failed
operations-per-run: 200
================================================
FILE: .github/workflows/stale.yml
================================================
name: 'Close stale PRs'
on:
schedule:
- cron: "27 7 * * *"
jobs:
stale:
runs-on: ubuntu-latest
permissions:
pull-requests: write
actions: write
steps:
- uses: actions/stale@v9
with:
stale-pr-message: "Hi there, as this PR has not seen any activity in the last 30 days, it will be closed in 15 days unless there are any updates.\nPlease double check that you have made all of the requested changes if you believe that this is a mistake."
close-pr-message: "Hi there, to keep things tidy, we're closing PRs after one and a half months of inactivity.\nFeel free to create a new pull request when you're ready to continue. Thanks for your understanding!"
days-before-stale: 30
days-before-close: 15
stale-pr-label: stale
exempt-pr-labels: Ready for review,Skipped code scan
operations-per-run: 400
================================================
FILE: .github/workflows/validate-plugin-entry.yml
================================================
name: Validate Plugin Entry
on:
pull_request_target:
branches:
- master
paths:
- community-plugins.json
jobs:
plugin-validation:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
ref: "refs/pull/${{ github.event.number }}/head"
- uses: actions/setup-node@v2
- uses: actions/github-script@v6
with:
script: |
const fs = require('fs');
// Don't run any validation checks if the user is just modifying existing plugin config
if (context.payload.pull_request.additions <= context.payload.pull_request.deletions) {
return;
}
const escapeHtml = (unsafe) => unsafe.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"').replace(/'/g, ''');
const errors = [];
const addError = (error) => {
errors.push(`:x: ${error}`);
console.log('Found issue: ' + error);
};
const warnings = [];
const addWarning = (warning) => {
warnings.push(`:warning: ${warning}`);
console.log('Found issue: ' + warning);
}
let plugin;
// Core validation logic
await (async () => {
if (context.payload.pull_request.changed_files > 1) {
addError('You modified files other than `community-plugins.json`.');
}
if (!context.payload.pull_request.maintainer_can_modify) {
addWarning('Maintainers of this repo should be allowed to edit this pull request. This speeds up the approval process.');
}
const templateStrings = [
'I have tested the plugin on',
'My GitHub release contains all required files (as individual files, not just in the source.zip / source.tar.gz)', 'GitHub release name matches the exact version number specified in my manifest.json',
'The `id` in my `manifest.json` matches the `id` in the `community-plugins.json` file.',
'My README.md describes the plugin\'s purpose and provides clear usage instructions.',
'I have read the developer policies at https://docs.obsidian.md/Developer+policies, and have assessed my plugin',
'I have read the tips in https://docs.obsidian.md/Plugins/Releasing/Plugin+guidelines and have self-reviewed my plugin to avoid these common pitfalls',
'I have added a license in the LICENSE file.',
'My project respects and is compatible with the original license of any code from other plugins that I\'m using.',
'I have given proper attribution to these other projects in my `README.md`.'
];
if (!templateStrings.every(element => context.payload.pull_request.body?.includes(element))) {
addError('You did not follow the pull request template. The PR template can be found [here](https://raw.githubusercontent.com/obsidianmd/obsidian-releases/refs/heads/master/.github/PULL_REQUEST_TEMPLATE/plugin.md)');
}
let plugins = [];
try {
plugins = JSON.parse(fs.readFileSync('community-plugins.json', 'utf8'));
} catch (e) {
addError('Could not parse `community-plugins.json`, invalid JSON. ' + e.message);
return;
}
plugin = plugins[plugins.length - 1];
let validKeys = ['id', 'name', 'description', 'author', 'repo'];
for (let key of validKeys) {
if (!plugin.hasOwnProperty(key)) {
addError(`Your PR does not have the required \`${key}\` property.`);
}
}
for (let key of Object.keys(plugin)) {
if (plugin.hasOwnProperty(key) && validKeys.indexOf(key) === -1) {
addError(`Your PR has the invalid \`${key}\` property.`);
}
}
// Validate plugin repo
let repoInfo = plugin.repo.split('/');
if (repoInfo.length !== 2) {
addError(`It seems like you made a typo in the repository field \`${plugin.repo}\`.`);
}
let [owner, repo] = repoInfo;
console.log(`Repo info: ${owner}/${repo}`);
const author = context.payload.pull_request.user.login;
if (owner.toLowerCase() !== author.toLowerCase()) {
try {
const isInOrg = await github.rest.orgs.checkMembershipForUser({org: owner, username: author});
if (!isInOrg) {
throw undefined;
}
} catch (e) {
addError(`The newly added entry is not at the end, or you are submitting on someone else's behalf. The last plugin in the list is: \`${plugin.repo}\`. If you are submitting from a GitHub org, you need to be a public member of the org.`);
}
}
try {
const repository = await github.rest.repos.get({owner, repo});
if (!repository.data.has_issues) {
addWarning('Your repository does not have issues enabled. Users will not be able to report bugs and request features.');
}
} catch (e) {
addError(`It seems like you made a typo in the repository field \`${plugin.repo}\`.`);
}
if (plugin.id?.toLowerCase().includes('obsidian')) {
addError(`Please don't use the word \`obsidian\` in the plugin ID. The ID is used for your plugin's folder so keeping it short and simple avoids clutter and helps with sorting.`);
}
if (plugin.id?.toLowerCase().endsWith('plugin')) {
addError(`Please don't use the word \`plugin\` in the plugin ID. The ID is used for your plugin's folder so keeping it short and simple avoids clutter and helps with sorting.`);
}
if (plugin.id && !/^[a-z0-9-_]+$/.test(plugin.id)) {
addError('The plugin ID is not valid. Only alphanumeric lowercase characters and dashes are allowed.');
}
if (plugin.name?.toLowerCase().includes('obsidian')) {
addError(`Please don't use the word \`Obsidian\` in your plugin name since it's redundant and adds clutter to the plugin list.`);
}
if (plugin.name?.toLowerCase().endsWith('plugin')) {
addError(`Please don't use the word \`Plugin\` in the plugin name since it's redundant and adds clutter to the plugin list.`);
}
if (plugin.name?.toLowerCase().startsWith("Obsi") || plugin.name?.toLowerCase().endsWith('dian')) {
addError(`Please don't parts of the name \`Obsidian\` in the plugin name, it's redundant`);
}
if (plugin.author && /^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$/.test(plugin.author)) {
addWarning(`We generally discourage including your email addresses in the \`author\` field.`);
}
if (plugin.description?.toLowerCase().includes('obsidian')) {
addError('Please don\'t include `Obsidian` in the plugin description');
}
if (plugin.description?.toLowerCase().includes('this plugin') || plugin.description?.toLowerCase().includes('this is a plugin') || plugin.description?.toLowerCase().includes('this plugin allows')) {
addWarning('Avoid including sentences like `This is a plugin that does` in your description');
}
if (!plugin.description?.endsWith('.') && !plugin.description?.endsWith('?') && !plugin.description?.endsWith('!') && !plugin.description?.endsWith(')')) {
addError('Your description needs to have one of the following characters at the end: `.?!)`');
}
if (plugin.description?.length > 250) {
addError(`Your plugin has a long description. Users typically find it difficult to read a very long description, so you should keep it short and concise.`);
}
if (plugin.id && plugins.filter(p => p.id === plugin.id).length > 1) {
addError(`There is already a plugin with the id \`${plugin.id}\`.`);
}
if (plugin.name && plugins.filter(p => p.name === plugin.name).length > 1) {
addError(`There is already a plugin with the name \`${plugin.name}\`.`);
}
if (plugin.repo && plugins.filter(p => p.repo === plugin.repo).length > 1) {
addError(`There is already a entry pointing to the \`${plugin.repo}\` repository.`);
}
const removedPlugins = JSON.parse(fs.readFileSync('community-plugins-removed.json', 'utf8'));
if (plugin.id && removedPlugins.filter(p => p.id === plugin.id).length > 1) {
addError(`Another plugin used to exist with the id \`${plugin.id}\`. To avoid issues for users that still have the old plugin installed using this plugin ID is not allowed`);
}
if (plugin.name && removedPlugins.filter(p => p.name === plugin.name).length > 1) {
addWarning(`Another plugin used to exist with the name \`${plugin.name}\`. To avoid confussion we recommend against using this name.`);
}
let manifest = null;
try {
let manifestFile = await github.rest.repos.getContent({
owner,
repo,
path: 'manifest.json',
});
manifest = JSON.parse(Buffer.from(manifestFile.data.content, 'base64').toString('utf-8'));
} catch (e) {
addError(`You don't have a \`manifest.json\` at the root of your repo, or it could not be parsed.`);
}
if (manifest) {
let validManifestKeys = ['id', 'name', 'description', 'author', 'version', 'minAppVersion', 'isDesktopOnly'];
for (let key of validManifestKeys) {
if (!manifest.hasOwnProperty(key)) {
addError(`Your manifest does not have the required \`${key}\` property.`);
}
}
let allowedManifestKeys = [...validManifestKeys, 'authorUrl', 'fundingUrl', 'helpUrl'];
for (let key of Object.keys(manifest)) {
if (!allowedManifestKeys.includes(key)) {
addError(`Your manifest has the invalid \`${key}\` property.`);
}
}
if (plugin.name && manifest.id !== plugin.id) {
addError(`Plugin ID mismatch, the ID in this PR (\`${plugin.id}\`) is not the same as the one in your repo (\`${manifest.id}\`). If you just changed your plugin ID, remember to change it in the manifest.json in your repo and your latest GitHub release.`);
}
if (plugin.name && manifest.name !== plugin.name) {
addError(`Plugin name mismatch, the name in this PR (\`${plugin.name}\`) is not the same as the one in your repo (\`${manifest.name}\`). If you just changed your plugin name, remember to change it in the manifest.json in your repo and your latest GitHub release.`);
}
if (plugin.description && manifest.description !== plugin.description) {
addError(`Description mismatch, the description in this PR (\`${plugin.description}\`) is not the same as the one in your repo (\`${manifest.description}\`). If you just changed it, remember to change it in the manifest.json in your repo and your latest GitHub release.`);
}
if (manifest.authorUrl) {
if (manifest.authorUrl === "https://obsidian.md") {
addError(`The \`authorUrl\` field in your manifest should not point to the Obsidian Website. If you don't have a website you can just point it to your GitHub profile.`);
}
if (manifest.authorUrl.toLowerCase().includes("github.com/" + plugin.repo.toLowerCase())) {
addError(`The \`authorUrl\` field in your manifest should not point to the GitHub repository of the plugin.`);
}
}
if (manifest.fundingUrl && manifest.fundingUrl === "https://obsidian.md/pricing") {
addError(`The \`fundingUrl\` field in your manifest should not point to the Obsidian Website, If you don't have a link were users can donate to you, you can just remove it from the manifest.`);
}
if (manifest.fundingUrl && manifest.fundingUrl === "") {
addError('The `fundingUrl` is meant for links to services like _Buy me a coffee_, _GitHub sponsors_ and so on, if you don\'t have such a link remove it from the manifest.');
}
if (!/^[0-9.]+$/.test(manifest.version)) {
addError('Your latest version number is not valid. Only numbers and dots are allowed.');
}
try {
let release = await github.rest.repos.getReleaseByTag({
owner,
repo,
tag: manifest.version,
});
const assets = release.data.assets || [];
if (!assets.find(p => p.name === 'main.js')) {
addError(`The release \`${manifest.version}\` specified in the \`manifest.json\` in the root of the repo is missing the \`main.js\` file.`);
}
if (!assets.find(p => p.name === 'manifest.json')) {
addError(`The release \`${manifest.version}\` specified in the \`manifest.json\` in the root of the repo is missing the \`manifest.json\` file.`);
}
} catch (e) {
addError(`Unable to find a release with the tag \`${manifest.version}\`. Make sure that the version in your manifest.json file in your repo points to the correct Github Release.`);
}
}
try {
await github.rest.licenses.getForRepo({owner, repo});
} catch (e) {
addError(`Your repository does not include a license. Go to <https://choosealicense.com/> to compare different open source licenses.`);
}
})();
if (errors.length > 0 || warnings.length > 0) {
let message = [`#### Hello!\n`]
message.push(`**I found the following issues in your plugin submission**\n`);
if (errors.length > 0) {
message.push(`**Errors:**\n`);
message = message.concat(errors);
message.push(`\n---\n`);
}
if (warnings.length > 0) {
message.push(`**Warnings:**\n`);
message = message.concat(warnings);
message.push(`\n---\n`);
}
message.push(`<sup>This check was done automatically. Do <b>NOT</b> open a new PR for re-validation. Instead, to trigger this check again, make a change to your PR and wait a few minutes, or close and re-open it.</sup>`);
await github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: message.join('\n'),
});
}
const labels = [];
if (errors.length > 0) {
labels.push("Validation failed");
core.setFailed("Failed to validate plugin");
}
if (errors.length === 0) {
await github.rest.pulls.update({
owner: context.repo.owner,
repo: context.repo.repo,
pull_number: context.issue.number,
title: `Add plugin: ${plugin.name}`
});
const comments = github.rest.issues.listComments({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number
});
const commentAuthors = [];
for (const comment in comments) {
commentAuthors.push(comment.user.login);
}
if (!commentAuthors.includes("ObsidianReviewBot")) {
await github.rest.issues.addAssignees({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
assignees: 'ObsidianReviewBot'
});
}
if(!context.payload.pull_request.labels.filter(label => label.name === 'Changes requested').length > 0) {
labels.push("Ready for review");
}
}
if (context.payload.pull_request.labels.filter(label => label.name === 'Changes requested').length > 0) {
labels.push('Changes requested');
}
if (context.payload.pull_request.labels.filter(label => label.name === 'Additional review required').length > 0) {
labels.push('Additional review required');
}
if (context.payload.pull_request.labels.filter(label => label.name === 'Minor changes requested').length > 0) {
labels.push('Minor changes requested');
}
if (context.payload.pull_request.labels.filter(label => label.name === 'requires author rebase').length > 0) {
labels.push('requires author rebase');
}
if (context.payload.pull_request.labels.filter(label => label.name === 'Installation not recommended').length > 0) {
labels.push('Installation not recommended');
}
if (context.payload.pull_request.labels.filter(label => label.name === 'Changes made').length > 0) {
labels.push('Changes made');
}
if (context.payload.pull_request.labels.filter(label => label.name === 'Skipped code scan').length > 0) {
labels.push('Skipped code scan');
}
labels.push('plugin');
await github.rest.issues.setLabels({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
labels,
});
permissions:
contents: read
issues: write
pull-requests: write
================================================
FILE: .github/workflows/validate-theme-entry.yml
================================================
name: Validate Theme Entry
on:
pull_request_target:
branches:
- master
paths:
- community-css-themes.json
jobs:
theme-validation:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: "refs/pull/${{ github.event.number }}/merge"
- uses: actions/setup-node@v2
- run: npm install -g probe-image-size && npm link probe-image-size
- uses: actions/github-script@v6
with:
script: |
if (context.payload.pull_request.additions <= context.payload.pull_request.deletions) {
// Don't run any validation checks if the user is just modifying existing theme config
return;
}
const probe = require('probe-image-size');
const fs = require('fs');
const errors = [];
const addError = (error) => {
errors.push(`:x: ${error}`);
console.log('Found issue: ' + error);
};
const warnings = [];
const addWarning = (warning) => {
warnings.push(`:warning: ${warning}`);
console.log('Found issue: ' + warning);
}
// core validation logic
await (async () => {
if (context.payload.pull_request.changed_files > 1) {
addError('You modified files other than `community-css-themes.json`.');
}
if (!context.payload.pull_request.maintainer_can_modify) {
addWarning('Maintainers of this repo should be allowed to edit this pull request. This speeds up the approval process.');
}
if (context.payload.pull_request.body.includes('Please switch to **Preview** and select one of the following links:')) {
addError('You did not follow the pull request template.');
}
let themes;
try {
themes = JSON.parse(fs.readFileSync('community-css-themes.json', 'utf8'));
} catch (e) {
addError('Could not parse `community-css-themes.json`, invalid JSON. ' + e.message);
return;
}
const theme = themes[themes.length - 1];
const validPrKeys = ['name', 'author', 'repo', 'screenshot', 'modes'];
for (let key of validPrKeys) {
if (!theme.hasOwnProperty(key)) {
addError(`Your PR does not have the required \`${key}\` property.`);
}
}
for (let key of Object.keys(theme)) {
if (!validPrKeys.includes(key)) {
addError(`Your PR has the invalid \`${key}\` property.`);
}
}
// Validate theme repo
let repoInfo = theme.repo.split('/');
if (repoInfo.length !== 2) {
addError(`It seems like you made a typo in the repository field ${theme.repo}`);
return;
}
let [owner, repo] = repoInfo;
console.log(`Repo info: ${owner}/${repo}`);
const author = context.payload.pull_request.user.login;
if (owner.toLowerCase() !== author.toLowerCase()) {
try {
const isInOrg = await github.rest.orgs.checkMembershipForUser({ org: owner, username: author });
if (!isInOrg) {
throw undefined;
}
} catch (e) {
addError(`The newly added entry is not at the end, or you are submitting on someone else's behalf. The last theme in the list is: \`${theme.repo}\`. If you are submitting from a GitHub org, you need to be a public member of the org.`);
}
}
try {
const repository = await github.rest.repos.get({ owner, repo });
if (!repository.data.has_issues) {
addWarning('Your repository does not have issues enabled. Users will not be able to report bugs and request features.');
}
} catch (e) {
addError(`It seems like you made a typo in the repository field ${theme.repo}`);
return;
}
if (theme.name.toLowerCase().includes('obsidian')) {
addError(`We discourage themes from including the word \`Obsidian\` in their name since it's redundant and makes the theme selection screen harder to visually parse.`);
}
if (theme.name.toLowerCase().includes('theme')) {
addError(`We discourage themes from including the word \`theme\` in their name since it's redundant and makes the theme selection screen harder to visually parse.`);
}
if (theme.name.match(/([^A-Za-z0-9_\- ]+)/g)) {
addError('Your theme name contains invalid symbols, allowed are letters, digits, spaces, hyphens and underscores.');
}
if (/^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$/.test(theme.author)) {
addWarning('We generally discourage from including email addresses in the `author` field.');
}
if (themes.filter(t => t.name === theme.name).length > 1) {
addError('There is already a theme with this name');
}
if (themes.filter(t => t.repo === theme.repo).length > 1) {
addError('There is already a entry pointing to the `' + theme.repo + '` repository');
}
let manifest = null;
try {
let manifestFile = await github.rest.repos.getContent({
owner,
repo,
path: 'manifest.json',
});
manifest = JSON.parse(Buffer.from(manifestFile.data.content, 'base64').toString('utf-8'));
} catch (e) {
addError(`You don't have a valid \`manifest.json\` at the root of your repo.`);
}
if (manifest) {
let requiredManifestKeys = ['name', 'minAppVersion', 'author', 'version'];
for (let key of requiredManifestKeys) {
if (!manifest.hasOwnProperty(key)) {
addError(`Your manifest does not have the required \`${key}\` property.`);
}
}
if (manifest.name !== theme.name) {
addError(`Theme name mismatch, the name in this PR (\`${theme.name}\`) is not the same as the one in your repo (\`${manifest.name}\`). If you just changed your theme name, remember to change it in the manifest.json in your repo, and your latest GitHub release, if you have one.`);
}
if (manifest.authorUrl) {
if (manifest.authorUrl === "https://obsidian.md") {
addError(`The \`authorUrl\` field in your manifest should not point to the Obsidian Website. If you don't have a website you can just point it to your GitHub profile.`);
}
if (manifest.authorUrl.toLowerCase().includes("github.com/" + theme.repo.toLowerCase())) {
addError(`The \`authorUrl\` field in your manifest should not point to the GitHub repository of the theme.`);
}
}
if (manifest.fundingUrl && manifest.fundingUrl === "https://obsidian.md/pricing") {
addError(`The \`fundingUrl\` field in your manifest should not point to the Obsidian Website, If you don't have a link were users can donate to you, you can just omit this.`);
}
if (!(/^[0-9.]+$/i.test(manifest.version))) {
addError('Your latest version number is not valid. Only numbers and dots are allowed.');
}
try {
await github.rest.repos.getContent({
owner, repo, path: 'theme.css'
});
} catch (e) {
addError('Your repository does not include a `theme.css` file');
}
try {
await github.rest.repos.getContent({
owner, repo, path: 'obsidian.css'
});
addWarning('Your repository includes a `obsidian.css` file, this is only used in legacy versions of Obsidian.');
} catch (e) { }
let imageMeta = null;
try {
const screenshot = await github.rest.repos.getContent({
owner, repo, path: theme.screenshot
});
imageMeta = await probe(screenshot.data.download_url);
} catch (e) {
console.log(e);
addError('The theme screenshot cannot be found.');
}
if (imageMeta) {
if (imageMeta.type !== 'png' && imageMeta.type !== 'jpg') {
addError('Theme screenshot is not of filetype `.png` or `.jpg`');
}
const recommendedSize = `we generally recommend a size around 512 × 288 pixels.\n Detected size: ${imageMeta.width} x ${imageMeta.height} pixels`
if (imageMeta.width > 1000 || imageMeta.height > 500) {
addError(`Your theme screenshot is too big, ${recommendedSize}`);
}
else if (imageMeta.width < 250 || imageMeta.height < 100) {
addError(`Your theme screenshot is too small, ${recommendedSize}`);
} else if (imageMeta.width !==512 || imageMeta.height !== 288) {
addWarning(`Theme theme screenshot size is not optimal, ${recommendedSize}`);
}
}
// only validate releases if version is included
if (manifest.hasOwnProperty('version')) {
try {
let release = await github.rest.repos.getReleaseByTag({
owner,
repo,
tag: manifest.version,
});
const assets = release.data.assets || [];
if (!assets.find(p => p.name === 'theme.css')) {
addError('Your latest Release is missing the `theme.css` file.');
}
if (!assets.find(p => p.name === 'manifest.json')) {
addError('Your latest Release is missing the `manifest.json` file.');
}
} catch (e) { }
}
}
try {
await github.rest.licenses.getForRepo({ owner, repo });
} catch (e) {
addWarning('Your repository does not include a license. It is generally recommended for open-source projects to have a license. Go to <https://choosealicense.com/> to compare different open source licenses.');
}
await github.rest.pulls.update({
owner: context.repo.owner,
repo: context.repo.repo,
pull_number: context.issue.number,
title: `Add theme: ${theme.name}`
});
})();
if (errors.length > 0 || warnings.length > 0) {
let message = [`#### Hello!\n`];
message.push(`**I found the following issues in your theme submission**\n`);
if (errors.length > 0) {
message.push(`**Errors:**\n`);
message = message.concat(errors);
message.push(`\n---\n`);
}
if (warnings.length > 0) {
message.push(`**Warnings:**\n`);
message = message.concat(warnings);
message.push(`\n---\n`);
}
message.push(`<sup>This check was done automatically. Do <b>NOT</b> open a new PR for re-validation. Instead, to trigger this check again, make a change to your PR and wait a few minutes, or close and re-open it.</sup>`);
await github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: message.join('\n'),
});
}
if (errors.length > 0) {
core.setFailed("Failed to validate theme");
}
let labels = errors.length > 0 ? ['Validation failed'] : ['Ready for review'];
if (context.payload.pull_request.labels.includes('Changes requested')) {
labels.push('Changes requested');
}
if (context.payload.pull_request.labels.includes('Additional review required')) {
labels.push('Additional review required');
}
if (context.payload.pull_request.labels.includes('Minor changes requested')) {
labels.push('Minor changes requested');
}
if (context.payload.pull_request.labels.includes('Requires author rebase')) {
labels.push('requires author rebase');
}
if (context.payload.pull_request.labels.includes('Installation not recommended')) {
labels.push('Installation not recommended');
}
if (context.payload.pull_request.labels.includes('Changes made')) {
labels.push('Changes made');
}
labels.push('theme');
await github.rest.issues.setLabels({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
labels,
});
permissions:
contents: read
issues: write
pull-requests: write
================================================
FILE: .gitignore
================================================
node_modules/
.DS_Store
.idea
*.iml
================================================
FILE: README.md
================================================
## About this repo
This repo is used for hosting public releases of Obsidian, as well as our community plugins & themes directories.
Obsidian is not open source software and this repo _DOES NOT_ contain the source code of Obsidian. However, if you wish to contribute to Obsidian, you can easily do so with our extensive plugin system. A plugin guide can be found here: https://docs.obsidian.md
This repo does not accept issues, if you have questions or issues with plugins, please go to their own repo to file them. If you have questions or issues about core Obsidian itself, please post them to our community: https://obsidian.md/community
## Submit your plugin or theme
When opening a pull request, please switch to preview mode and select the option to go through our submission checklist. Submit your entry by following the convention in the JSON file and we will review your submission.
Thanks for submitting your creations!
You can find a detailed explanation for submitting your [plugin here](https://docs.obsidian.md/Plugins/Releasing/Submit+your+plugin) and your [theme here](https://docs.obsidian.md/Themes/App+themes/Submit+your+theme).
## Policies
All submissions must conform with our [developer policies](https://docs.obsidian.md/Developer+policies)
## Community Theme
To add your theme to our theme store, make a pull request to the `community-css-theme.json` file. Please add your theme to the end of the list.
- `name`: a unique name for your theme. Must not collide with other themes.
- `author`: the author's name for display.
- `repo`: the GitHub repository identifier, in the form of `user-name/repo-name`, if your GitHub repo is located at `https://github.com/user-name/repo-name`.
- `screenshot`: path to the screenshot of your theme.
- `modes`: if your theme supports both dark and light mode, put `["dark", "light"]`. Otherwise, put `["dark"]` if your theme only supports dark mode, or `["light"]` if your theme only supports light mode.
- `publish`: if your theme supports Obsidian Publish, set this to `true`. Omit it otherwise.
To get your theme compatible with Obsidian Publish, you can use `applyCss` and `applyCssByLink` to test out your CSS in the developer console of Obsidian Publish sites, so that you don't actually need to own sites to test your `publish.css`. You can test it out on our help site here: https://help.obsidian.md/
`applyCss` takes a CSS string, you can use backtick (template strings) for multiline CSS. `applyCssByLink` takes a link and loads the CSS, would recommend GitHub raw file URLs.
## Community Plugin
### Community Plugins format
To add your plugin to the list, make a pull request to the `community-plugins.json` file. Please add your plugin to the end of the list.
- `id`: A unique ID for your plugin. Make sure this is the same one you have in your `manifest.json`.
- `name`: The name of your plugin.
- `author`: The author's name.
- `description`: A short description of what your plugin does.
- `repo`: The GitHub repository identifier, in the form of `user-name/repo-name`, if your GitHub repo is located at `https://github.com/user-name/repo-name`.
### How community plugins are pulled
- Obsidian will read the list of plugins in `community-plugins.json`.
- The `name`, `author` and `description` fields are used for searching.
- When the user opens the detail page of your plugin, Obsidian will pull the `manifest.json` and `README.md` from your GitHub repo).
- The `manifest.json` in your repo will only be used to figure out the latest version. Actual files are fetched from your GitHub releases.
- If your `manifest.json` requires a version of Obsidian that's higher than the running app, your `versions.json` will be consulted to find the latest version of your plugin that is compatible.
- When the user chooses to install your plugin, Obsidian will look for your GitHub releases tagged identically to the version inside `manifest.json`.
- Obsidian will download `manifest.json`, `main.js`, and `styles.css` (if available), and store them in the proper location inside the vault.
### Announcing the First Public Release of your Plugin/Theme
- Once admitted to the plugin/theme browser, you can announce the public availability of your plugin/theme:
- [in the forums](https://forum.obsidian.md/c/share-showcase/9) as a showcase, and
- [on the Discord Server](https://discord.gg/veuWUTm) in the channel `#updates`. (You need the `developer` role to be able to post in that channel; [you can get that role here](https://discord.com/channels/686053708261228577/702717892533157999/830492034807758859).)
- You can also announce the first working version of your plugin as a public beta before "officially" submitting it to the plugin/theme browser. That way, you can acquire some beta testers for feedback. It's recommended to use the [BRAT Plugin](https://obsidian.md/plugins?id=obsidian42-brat) to make the installation as easy as possible for interested beta testers.
================================================
FILE: cla.md
================================================
# Contributor License Agreement ("Agreement")
Thank you for your interest in the open source project(s) managed by Dynalist, Inc. (“Obsidian”). By contributing to Obsidian, you accept and agree to the following terms and conditions for your present and future contributions submitted to Obsidian. Except for the license granted herein to Obsidian and recipients of software distributed by Obsidian, you reserve all right, title, and interest in and to your contributions.
1. Definitions.
"You" (or "Your") shall mean the copyright owner or legal entity authorized by the copyright owner that is making this Agreement with Obsidian. For legal entities, the entity making a contribution and all other entities that control, are controlled by, or are under common control with that entity are considered to be a single contributor. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.
2. Grant of Copyright License.
Subject to the terms and conditions of this Agreement, You hereby grant to Obsidian and to recipients of software distributed by Obsidian a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Your contributions and such derivative works.
3. Grant of Patent License.
Subject to the terms and conditions of this Agreement, You hereby grant to Obsidian and to recipients of software distributed by Obsidian a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by You that are necessarily infringed by Your contribution(s) alone or by combination of Your contribution(s) with the Work to which such contribution(s) were submitted.
4. You represent that you are legally entitled to grant the above license. If your employer(s) has rights to intellectual property that you create that includes your contributions, you represent that you have received permission to make contributions on behalf of that employer, that your employer has waived such rights for your contributions to Obsidian, or that your employer has executed a separate Corporate CLA with Obsidian.
5. You represent that each of Your contributions is Your original creation (see Section 7 for submissions on behalf of others). You represent that Your contribution submissions include complete details of any third-party license or other restriction (including, but not limited to, related patents and trademarks) of which you are personally aware and which are associated with any part of Your contributions.
6. You are not expected to provide support for Your contributions, except to the extent You desire to provide support. You may provide support for free, for a fee, or not at all. Unless required by applicable law or agreed to in writing, You provide Your contributions on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE.
7. Should You wish to submit work that is not Your original creation, You may submit it to Obsidian separately from any contribution, identifying the complete details of its source and of any license or other restriction (including, but not limited to, related patents, copyrights, and trademarks) of which you are personally aware, and conspicuously marking the work as "Submitted on behalf of a third-party: [named here]".
8. You agree to notify Obsidian of any facts or circumstances of which you become aware that would make these representations inaccurate in any respect.
Please reply "I have read the CLA agreement and I hereby sign the CLA" to indicate your agreement to the terms of this Agreement.
================================================
FILE: community-css-themes-removed.json
================================================
[
{
"name": "Molecule",
"reason": "Developer policies violation: Remote resources",
"issue": "https://github.com/manassadasivuni/obsidian-molecule/issues/1"
},
{
"name": "Vileplume",
"reason": "Developer policies violation: Remote resources",
"issue": "https://github.com/hungsu/vileplume-obsidian/issues/11"
},
{
"name": "Agora",
"reason": "Developer policies violation: Remote resources",
"issue": "https://github.com/Seraaron/agora-obsidian-theme/issues/4"
},
{
"name": "Slytherin",
"reason": "Developer policies violation: Remote resources",
"issue": "https://github.com/MatheusZarkov/Obsidian-Slytherin/issues/3"
},
{
"name": "gummy",
"reason": "Developer policies violation: Remote resources",
"issue": "https://github.com/7368697661/gummy/issues/3"
},
{
"name": "Creature",
"reason": "Repository archived"
},
{
"name": "Big & Bold",
"reason": "Developer policies violation: Remote resources",
"issue": "https://github.com/Bluemoondragon07/obsidian-big-and-bold/issues/20"
},
{
"name": "\ud83d\udd14 Chime",
"reason": "Developer policies violation: Remote resources",
"issue": "https://github.com/Bluemoondragon07/chime-theme/issues/25"
},
{
"name": "Light & Bright",
"reason": "Developer policies violation: Remote resources",
"issue": "https://github.com/Bluemoondragon07/obsidian-light-and-bright-theme/issues/8"
},
{
"name": "WilcoxOne",
"reason": "Developer policies violation: Remote resources",
"issue": "https://github.com/MattWilcox/obsidian-wilcox-one/issues/3"
},
{
"name": "Christmas",
"reason": "Developer policies violation: Remote resources",
"issue": "https://github.com/deathau/obsidian-christmas-theme/issues/2"
},
{
"name": "Nebula",
"reason": "Developer policies violation: Remote resources",
"issue": "https://github.com/dlccyes/obsidian-nebula/issues/3"
},
{
"name": "Shiba Inu",
"reason": "Developer policies violation: Remote resources",
"issue": "https://github.com/faroukx/Obsidian-shiba-inu-theme/issues/11"
},
{
"name": "Sparkling Wisdom",
"reason": "Developer policies violation: Remote resources",
"issue": "https://github.com/learnerfvs/Sparkling-Wisdom-obsidian-theme-/issues/7"
},
{
"name": "Spectrum",
"reason": "Developer policies violation: Remote resources",
"issue": "https://github.com/wiktoriavh/Spectrum/issues/60"
},
{
"name": "Venom",
"reason": "Developer policies violation: Remote resources",
"issue": "https://github.com/fatiger92/obsidian_venom_theme/issues/4"
},
{
"name": "WiseLight",
"reason": "Developer policies violation: Remote resources",
"issue": "https://github.com/learnerfvs/WiseLight/issues/4"
},
{
"name": "Minimal-Resources",
"reason": "Account deleted"
},
{
"name": "Simple Color",
"reason": "Account deleted"
},
{
"name": "cocoa",
"reason": "Repository deleted"
},
{
"name": "parfait",
"reason": "Repository deleted"
},
{
"name": "Atomus",
"reason": "Repository archived"
},
{
"name": "Dust",
"reason": "Repository archived"
},
{
"name": "OverCast",
"reason": "Repository deleted"
},
{
"name": "MagicUser",
"reason": "Repository archived"
}
]
================================================
FILE: community-css-themes.json
================================================
[
{
"name": "Atom",
"author": "kognise",
"repo": "kognise/obsidian-atom",
"screenshot": "screenshot-hybrid.png",
"modes": ["dark", "light"]
},
{
"name": "Amethyst",
"author": "cotemaxime",
"repo": "cotemaxime/obsidian-amethyst",
"screenshot": "screenshot.png",
"modes": ["dark", "light"],
"legacy": true
},
{
"name": "Obsidian gruvbox",
"author": "insanum",
"repo": "insanum/obsidian_gruvbox",
"screenshot": "dark.png",
"modes": ["dark", "light"]
},
{
"name": "Obsidian Nord",
"author": "insanum",
"repo": "insanum/obsidian_nord",
"screenshot": "dark.png",
"modes": ["dark", "light"]
},
{
"name": "Dracula for Obsidian",
"author": "jarodise",
"repo": "jarodise/Dracula-for-Obsidian.md",
"screenshot": "screencap.jpg",
"modes": ["dark"]
},
{
"name": "Gastown",
"author": "lizardmenfromspace",
"repo": "dogwaddle/obsidian-gastown-theme.md",
"screenshot": "ObsidianOne.png",
"modes": ["light"],
"legacy": true
},
{
"name": "80s Neon",
"author": "deathau",
"repo": "deathau/80s-Neon-for-Obsidian.md",
"screenshot": "screenshot.jpg",
"modes": ["dark", "light"]
},
{
"name": "Base2Tone",
"author": "deathau",
"repo": "deathau/Base2Tone-For-Obsidian.md",
"screenshot": "colours.gif",
"modes": ["dark"]
},
{
"name": "Notation",
"author": "deathau",
"repo": "deathau/Notation-for-Obsidian",
"screenshot": "screenshot.jpg",
"modes": ["dark", "light"]
},
{
"name": "Solarized",
"author": "harmtemolder",
"repo": "harmtemolder/obsidian-solarized",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Comfort color dark",
"author": "ezs",
"repo": "obsidian-ezs/obsidian-comfort-color-dark",
"screenshot": "screencap.png",
"modes": ["dark"]
},
{
"name": "Ursa",
"author": "ezs",
"repo": "obsidian-ezs/obsidian-ursa",
"screenshot": "light-theme_full.png",
"modes": ["dark", "light"]
},
{
"name": "Cybertron",
"author": "nickmilo",
"repo": "nickmilo/Cybertron",
"screenshot": "Cybertron.png",
"modes": ["dark"]
},
{
"name": "Moonlight",
"author": "karz",
"repo": "kartik-karz/moonlight-obsidian",
"screenshot": "moonlight-theme.png",
"modes": ["dark", "light"]
},
{
"name": "Red Graphite",
"author": "SeanWcom",
"repo": "seanwcom/Red-Graphite-for-Obsidian",
"screenshot": "thumbnail.png",
"modes": ["dark", "light"]
},
{
"name": "Subtlegold",
"author": "karz",
"repo": "kartik-karz/subtlegold-obsidian",
"screenshot": "subtlegold-theme.png",
"modes": ["dark", "light"]
},
{
"name": "Obsidian Boom",
"author": "Sainadh",
"repo": "sainadhx/obsidian-boom",
"screenshot": "roam-1.png",
"modes": ["light"]
},
{
"name": "Hulk",
"author": "Reggie",
"repo": "pgalliford/Obsidian-theme-Incredible-Hulk",
"screenshot": "Screen Shot.png",
"modes": ["dark"]
},
{
"name": "Pisum",
"author": "MooddooM",
"repo": "GuangluWu/obsidian-pisum",
"screenshot": "fullpower.png",
"modes": ["dark"]
},
{
"name": "Traffic Lights",
"author": "Boyd",
"repo": "elliotboyd/obsidian-traffic-lights",
"screenshot": "dark.png",
"modes": ["dark", "light"],
"legacy": true
},
{
"name": "Ars Magna",
"author": "Mediapathic",
"repo": "mediapathic/obsidian-arsmagna-theme",
"screenshot": "arsmagna.png",
"modes": ["dark", "light"],
"legacy": true
},
{
"name": "Obsdn-Dark-Rmx",
"author": "_ph",
"repo": "cannibalox/Obsdn-dark-rmx",
"screenshot": "Obsdn-Dark-Rmx.png",
"modes": ["dark", "light"],
"legacy": true
},
{
"name": "Minimal",
"author": "kepano",
"repo": "kepano/obsidian-minimal",
"screenshot": "dark-simple.png",
"modes": ["dark", "light"]
},
{
"name": "obsidian_ia",
"author": "rcvd",
"repo": "rcvd/obsidian_ia",
"screenshot": "light.png",
"modes": ["dark", "light"]
},
{
"name": "Charcoal",
"author": "bernardo_v",
"repo": "bcdavasconcelos/Obsidian-Charcoal",
"screenshot": "charcoal.png",
"modes": ["dark"]
},
{
"name": "Panic Mode",
"author": "bernardo_v",
"repo": "bcdavasconcelos/Obsidian-Panic_Mode",
"screenshot": "panic.png",
"modes": ["dark"]
},
{
"name": "Dark Graphite",
"author": "bernardo_v",
"repo": "bcdavasconcelos/Obsidian-Graphite",
"screenshot": "graphite.png",
"modes": ["dark"]
},
{
"name": "Ayu",
"author": "bernardo_v",
"repo": "bcdavasconcelos/Obsidian-Ayu",
"screenshot": "ayu2.png",
"modes": ["light"],
"legacy": true
},
{
"name": "Ayu Mirage",
"author": "bernardo_v",
"repo": "bcdavasconcelos/Obsidian-Ayu_Mirage",
"screenshot": "ayu1.png",
"modes": ["dark"]
},
{
"name": "GDCT",
"author": "bernardo_v",
"repo": "bcdavasconcelos/Obsidian-GDCT",
"screenshot": "gdct.png",
"modes": ["light"]
},
{
"name": "GDCT Dark",
"author": "bernardo_v",
"repo": "bcdavasconcelos/Obsidian-GDCT_Dark",
"screenshot": "gdct.png",
"modes": ["dark"]
},
{
"name": "Obuntu",
"author": "Dubinin Dmitry",
"repo": "dmytrodubinin/Obuntu-theme-for-Obsidian",
"screenshot": "screenshot.jpg",
"modes": ["dark", "light"]
},
{
"name": "Ono Sendai",
"author": "_ph",
"repo": "cannibalox/ono-sendai_obsdn",
"screenshot": "ono-sendai_obsdn_00.png",
"modes": ["dark", "light"]
},
{
"name": "Blue Topaz",
"author": "Whyl",
"repo": "PKM-er/Blue-Topaz_Obsidian-css",
"screenshot": "preview_Blue Topaz.png",
"modes": ["dark", "light"]
},
{
"name": "Reverie",
"author": "Santi Younger",
"repo": "santiyounger/Reverie-Obsidian-Theme",
"screenshot": "img/reverie-2020-09-14-dark.png",
"modes": ["dark", "light"]
},
{
"name": "Dark Graphite Pie",
"author": "kitchenrunner",
"repo": "ryjjin/Obsidian-Dark-Graphite-Pie-theme",
"screenshot": "Dark Graphite Pie theme 0.9.4.png",
"modes": ["dark", "light"]
},
{
"name": "Obsidianite",
"author": "Benny Guo",
"repo": "bennyxguo/Obsidian-Obsidianite",
"screenshot": "images/demo1.png",
"modes": ["dark"]
},
{
"name": "Gitsidian",
"author": "Ish Gunacar",
"repo": "ismailgunacar/gitsidian",
"screenshot": "showcase.png",
"modes": ["dark", "light"]
},
{
"name": "Comfort Smooth",
"author": "Spark",
"repo": "sparklau/comfort-smooth",
"screenshot": "comfort-smooth.png",
"modes": ["dark"]
},
{
"name": "Suddha",
"author": "dxcore35",
"repo": "dxcore35/Suddha-theme",
"screenshot": "Images/Preview1.jpg",
"modes": ["dark", "light"]
},
{
"name": "Discordian",
"author": "radekkozak",
"repo": "radekkozak/discordian",
"screenshot": "media/screenshots/discordian-full-mode.png",
"modes": ["dark"]
},
{
"name": "Al Dente",
"author": "chad-bennett",
"repo": "chad-bennett/al-dente-obsidian-theme",
"screenshot": "aldente-screenshot.png",
"modes": ["light"]
},
{
"name": "Wasp",
"author": "Santi Younger",
"repo": "santiyounger/Wasp-Obsidian-Theme",
"screenshot": "img/wasp-dark.png",
"modes": ["dark", "light"]
},
{
"name": "Higlighter",
"author": "lukauskas",
"repo": "lukauskas/obsidian-highlighter-theme",
"screenshot": "screenshots/screenshot-themes-panel.png",
"modes": ["light"],
"legacy": true
},
{
"name": "ITS Theme",
"author": "SlRvb",
"repo": "SlRvb/Obsidian--ITS-Theme",
"screenshot": "ITS.png",
"modes": ["dark", "light"]
},
{
"name": "Hipstersmoothie",
"author": "Andrew Lisowski",
"repo": "hipstersmoothie/hipstersmoothie-obsidian-theme",
"screenshot": "hipstersmoothie-obsidian-theme.png",
"modes": ["dark"]
},
{
"name": "Aurora",
"author": "Benny Guo",
"repo": "auroral-ui/aurora-obsidian-md",
"screenshot": "screenshots/screenshot-1.png",
"modes": ["dark"]
},
{
"name": "Iceberg",
"author": "izumin5210",
"repo": "izumin5210/obsidian-iceberg",
"screenshot": "screenshot.png",
"modes": ["dark"]
},
{
"name": "Yin and Yang",
"author": "Chetachi E.",
"repo": "chetachiezikeuzor/Yin-and-Yang-Theme",
"screenshot": "assets/screenshot.png",
"modes": ["dark", "light"],
"legacy": true
},
{
"name": "Golden Topaz",
"author": "Mouth on Cloud",
"repo": "shaggyfeng/obsidian-Golden-Topaz-theme",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Pink Topaz",
"author": "Mouth on Cloud",
"repo": "shaggyfeng/obsidian-Pink-topaz-theme",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Dark Moss",
"author": "sergey",
"repo": "sergey900553/obsidian_githublike_theme",
"screenshot": "screenshot.png",
"modes": ["dark"]
},
{
"name": "Mammoth",
"author": "Witt Allen",
"repo": "Wittionary/mammoth-obsidian-theme",
"screenshot": "screenshots/thumbnail.png",
"modes": ["dark"]
},
{
"name": "Rmaki",
"author": "Luke Ruokaismaki",
"repo": "luke-rmaki/rmaki-obsidian",
"screenshot": "screenshot.png",
"modes": ["dark"]
},
{
"name": "Cyber Glow",
"author": "ThePharaohArt",
"repo": "ThePharaohArt/Obsidian-CyberGlow",
"screenshot": "Screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Darkyan",
"author": "johackim",
"repo": "johackim/obsidian-darkyan",
"screenshot": "screenshot.png",
"modes": ["dark"]
},
{
"name": "Everforest",
"author": "MrGlitchByte",
"repo": "0xGlitchbyte/obsidian_everforest",
"screenshot": "dark_v2.png",
"modes": ["dark", "light"]
},
{
"name": "Blackbird",
"author": "Ivan Chernov",
"repo": "vanadium23/obsidian-blackbird-theme",
"screenshot": "images/example.png",
"modes": ["dark"]
},
{
"name": "Behave dark",
"author": "Chrismettal",
"repo": "Chrismettal/Obsidian-Behave-dark",
"screenshot": "Screenshot.png",
"modes": ["dark"]
},
{
"name": "Obsidian Windows 98 Edition",
"author": "SMUsamaShah",
"repo": "SMUsamaShah/Obsidian-Win98-Edition",
"screenshot": "screenshots/main.png",
"modes": ["dark", "light"],
"legacy": true
},
{
"name": "Lizardmen Zettelkasten",
"author": "lizardmenfromspace",
"repo": "dogwaddle/lizardmen-zettelkasten",
"screenshot": "screenshot.png",
"modes": ["light"],
"legacy": true
},
{
"name": "Shimmering Focus",
"author": "pseudometa",
"repo": "chrisgrieser/shimmering-focus",
"screenshot": "assets/promo-screenshot.webp",
"modes": ["dark", "light"]
},
{
"name": "Firefly",
"author": "Ali Soueidan",
"repo": "lazercaveman/obsidian-firefly-theme",
"screenshot": "firefly-theme-screenshot.png",
"modes": ["dark"]
},
{
"name": "Purple Owl",
"author": "zacharyc",
"repo": "zacharyc/purple-owl-theme",
"screenshot": "purple-owl-theme.png",
"modes": ["dark"]
},
{
"name": "Emerald",
"author": "Piglet1236",
"repo": "gracejoseph1236/obsidian-emerald",
"screenshot": "example.png",
"modes": ["dark"],
"legacy": true
},
{
"name": "Sodalite",
"author": "tomzorz",
"repo": "tomzorz/Sodalite",
"screenshot": "screenshot.png",
"modes": ["dark"]
},
{
"name": "Faded",
"author": "Josh Kasap",
"repo": "JoshKasap/Obsidian-Faded-Theme",
"screenshot": "Faded.png",
"modes": ["dark"]
},
{
"name": "Sanctum",
"author": "jdanielmourao",
"repo": "jdanielmourao/obsidian-sanctum",
"screenshot": "cover.png",
"modes": ["dark", "light"]
},
{
"name": "Cardstock",
"author": "cassidoo",
"repo": "cassidoo/cardstock",
"screenshot": "miniscreenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Pine Forest Berry",
"author": "Nilahn",
"repo": "Nilahn/pine_forest_berry",
"screenshot": "Screenshot PFB 1.png",
"modes": ["dark", "light"]
},
{
"name": "Ros\u00e9 Pine Moon",
"author": "mimishahzad",
"repo": "mimishahzad/rose-pine-moon-obsidian",
"screenshot": "assets/template.png",
"modes": ["dark"]
},
{
"name": "Ruby",
"author": "Piglet1236",
"repo": "gracejoseph1236/obsidian-ruby",
"screenshot": "example.png",
"modes": ["dark"],
"legacy": true
},
{
"name": "Prism",
"author": "Damian Korcz",
"repo": "damiankorcz/Prism-Theme",
"screenshot": "assets/screenshots/Community Themes Screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Carnelian",
"author": "Piglet1236",
"repo": "gracejoseph1236/obsidian-carnelian",
"screenshot": "example.png",
"modes": ["dark"],
"legacy": true
},
{
"name": "Ebullientworks",
"author": "Erin Schnabel",
"repo": "ebullient/obsidian-theme-ebullientworks",
"screenshot": "images/ebullientworks-theme.jpg",
"modes": ["dark", "light"]
},
{
"name": "Purple Aurora",
"author": "<Serice",
"repo": "AndreasStandar/Obsidian-Theme---Purple-Aurora",
"screenshot": "1 Purple Aurora screenshot.png",
"modes": ["dark"]
},
{
"name": "Primary",
"author": "Cecilia May",
"repo": "primary-theme/obsidian",
"screenshot": "assets/obsidian-store-header.png",
"modes": ["light", "dark"]
},
{
"name": "Terminal",
"author": "zcysxy",
"repo": "zcysxy/Obsidian-Terminal-Theme",
"screenshot": "screenshots/terminal.png",
"modes": ["dark"]
},
{
"name": "Bubble Space",
"author": "Emrie Candera",
"repo": "Emrie-Candera/Bubble-Space-Theme",
"screenshot": "screenshot.png",
"modes": ["dark", "light"],
"legacy": true
},
{
"name": "Things",
"author": "Colin Eckert",
"repo": "colineckert/obsidian-things",
"screenshot": "assets/main-demo.png",
"modes": ["light", "dark"]
},
{
"name": "Typomagical",
"author": "Hung-Su Nguyen",
"repo": "hungsu/typomagical-obsidian",
"screenshot": "Typomagical-split.jpg",
"modes": ["light", "dark"]
},
{
"name": "Wyrd",
"author": "Curio Heart",
"repo": "curio-heart/obsidian-wyrd",
"screenshot": "img/Wyrd.png",
"modes": ["dark", "light"]
},
{
"name": "Typewriter",
"author": "crashmoney",
"repo": "crashmoney/obsidian-typewriter",
"screenshot": "cover.jpg",
"modes": ["dark", "light"]
},
{
"name": "Harmonic",
"author": "Thiews",
"repo": "Thiews/Obsidian-Harmonic",
"screenshot": "cover.png",
"modes": ["dark", "light"],
"legacy": true
},
{
"name": "Dracula Official",
"author": "Dracula",
"repo": "dracula/obsidian",
"screenshot": "screenshot.png",
"modes": ["dark"]
},
{
"name": "Dracula Slim",
"author": "bLaCkwEw",
"repo": "bLaCkwEw/Dracula-Slim",
"screenshot": "screenshot.png",
"modes": ["dark"]
},
{
"name": "Sandstorm",
"author": "jaysan",
"repo": "jaysan0/obsidian-sandstorm",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "LYT Mode",
"author": "nickmilo",
"repo": "nickmilo/LYT-Mode",
"screenshot": "lyt-mode-graphic-1.jpg",
"modes": ["dark"]
},
{
"name": "Carpe Noctem",
"author": "Alex B",
"repo": "operator-axel/obsdian_theme--Carpe_Noctem",
"screenshot": "screenshot.png",
"modes": ["dark"],
"legacy": true
},
{
"name": "Catppuccin",
"author": "Marshall Beckrich",
"repo": "catppuccin/obsidian",
"screenshot": "assets/screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Theme-That-Shall-Not-Be-Named",
"author": "Chop the Viking",
"repo": "ChopTV/Obsidian-Theme-That-Shall-Not-Be-Named",
"screenshot": "Theme-That-Shall-Not-Be-Named.png",
"modes": ["dark"]
},
{
"name": "Willemstad",
"author": "tingmelvin",
"repo": "tingmelvin/willemstad-x",
"screenshot": "img/Willemstad-X.png",
"modes": ["dark", "light"],
"publish": true
},
{
"name": "Royal Velvet",
"author": "caro401",
"repo": "caro401/royal-velvet",
"screenshot": "royal-velvet.png",
"modes": ["dark", "light"]
},
{
"name": "Dracula + LYT",
"author": "xRyul",
"repo": "xRyul/ObsidianMD_Dracula_x_LYT",
"screenshot": "Overview.jpg",
"modes": ["dark"]
},
{
"name": "Mado 11",
"author": "hydescarf",
"repo": "hydescarf/Obsidian-Theme-Mado-11",
"screenshot": "img/store-cover.png",
"modes": ["dark", "light"]
},
{
"name": "Everblush",
"author": "Mangeshrex",
"repo": "Everblush/Obsidian",
"screenshot": "preview.png",
"modes": ["dark"]
},
{
"name": "AbsoluteGruv",
"author": "kkY",
"repo": "kkYrusobad/AbsoluteGruv",
"screenshot": "obsidian.png",
"modes": ["dark"]
},
{
"name": "Violet Evening",
"author": "aitaDev",
"repo": "aitaDev/Violet-Evening-for-Obsidian",
"screenshot": "screenshot.png",
"modes": ["dark"]
},
{
"name": "Zenburn",
"author": "danyim",
"repo": "danyim/obsidian-zenburn",
"screenshot": "screen.png",
"modes": ["dark"]
},
{
"name": "Modern Dark",
"author": "Robert M",
"repo": "roberts-code/obsidian-theme-modern-dark",
"screenshot": "screenshot.png",
"modes": ["dark"],
"legacy": true
},
{
"name": "Solitude",
"author": "MajorEnkidu",
"repo": "KyleKlus/solitude-obsidian-theme",
"screenshot": "promo_screenshot.png",
"modes": ["dark"]
},
{
"name": "Viridian",
"author": "mulfok",
"repo": "mulfok/obsidian-viridian",
"screenshot": "cover.png",
"modes": ["dark", "light"],
"legacy": true
},
{
"name": "Kanagawa",
"author": "sspaeti",
"repo": "sspaeti/obsidian_kanagawa",
"screenshot": "dark.png",
"modes": ["dark", "light"]
},
{
"name": "Encore",
"author": "Lucas Champagne",
"repo": "Carbonateb/obsidian-encore-theme",
"screenshot": "images/promo-image.png",
"modes": ["dark", "light"]
},
{
"name": "Mado Miniflow",
"author": "hydescarf",
"repo": "hydescarf/Obsidian-Theme-Mado-Miniflow",
"screenshot": "img/store-cover.png",
"modes": ["dark", "light"]
},
{
"name": "Micro Mike",
"author": "ThisTheThe",
"repo": "ThisTheThe/MicroMike",
"screenshot": "screenshotThumb.png",
"modes": ["dark"]
},
{
"name": "Dayspring",
"author": "Eric Rykwalder",
"repo": "erykwalder/dayspring-theme",
"screenshot": "screenshots/thumbnail.png",
"modes": ["light"]
},
{
"name": "Fusion",
"author": "zamsyt",
"repo": "zamsyt/obsidian-fusion",
"screenshot": "thumbnail.png",
"modes": ["dark", "light"]
},
{
"name": "Ultra Lobster",
"author": "kneecaps",
"repo": "7368697661/Ultra-Lobster",
"screenshot": "preview_thumb.png",
"modes": ["dark", "light"]
},
{
"name": "GitHub Theme",
"author": "krios2146",
"repo": "krios2146/obsidian-theme-github",
"screenshot": "imgs/thumbnail.png",
"modes": ["dark", "light"]
},
{
"name": "SynthWave",
"author": "Marco Luzi",
"repo": "marcoluzi/obsidian-synthwave",
"screenshot": "screenshot.jpeg",
"modes": ["dark"]
},
{
"name": "Oldsidian Purple",
"author": "ltctceplrm",
"repo": "ltctceplrm/oldsidian-purple",
"screenshot": "cover.png",
"modes": ["dark"]
},
{
"name": "deeper work",
"author": "lucas",
"repo": "lucas-fern/obsidian-deeper-work-theme",
"screenshot": "thumbnail.png",
"modes": ["dark"]
},
{
"name": "Aura",
"author": "ashwinjadhav818",
"repo": "shadowash8/obsidian-aura",
"screenshot": "assets/showcase-preview.png",
"modes": ["dark", "light"]
},
{
"name": "ion",
"author": "zamsyt",
"repo": "zamsyt/obsidian-ion",
"screenshot": "thumbnail.png",
"modes": ["dark"]
},
{
"name": "Listive",
"author": "efemkay",
"repo": "efemkay/obsidian-listive-theme",
"screenshot": "thumbnail.jpg",
"modes": ["dark", "light"]
},
{
"name": "Material Ocean",
"author": "dragonwocky",
"repo": "dragonwocky/obsidian-material-ocean",
"screenshot": "thumbnail.png",
"modes": ["dark"]
},
{
"name": "WY Console",
"author": "Satchelmouth",
"repo": "Satchelmouth/Obsidian-Theme-WYConsole",
"screenshot": "WYConsole_Store_Screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Adwaita",
"author": "birneee",
"repo": "birneee/obsidian-adwaita-theme",
"screenshot": "generated/theme-store-preview.png",
"modes": ["dark", "light"]
},
{
"name": "Apatheia",
"author": "AmadeusWM",
"repo": "AmadeusWM/Obsidian-Apatheia",
"screenshot": "promo_screenshot.png",
"modes": ["dark"]
},
{
"name": "Origami",
"author": "kneecaps",
"repo": "7368697661/Origami",
"screenshot": "screen.png",
"modes": ["dark", "light"]
},
{
"name": "Border",
"author": "Akifyss",
"repo": "Akifyss/obsidian-border",
"screenshot": "cover.png",
"modes": ["dark", "light"]
},
{
"name": "Typora-Vue",
"author": "ZekunC",
"repo": "ZekunC/Obsidian-Typora-Vue-Theme",
"screenshot": "obsidian-typora-vue.png",
"modes": ["dark", "light"]
},
{
"name": "Abecedarium",
"author": "zalenza",
"repo": "zalenza/Abecedarium-theme",
"screenshot": "abecedarium_dark.png",
"modes": ["dark", "light"]
},
{
"name": "Light & Bright",
"author": "Ha'ani Whitlock",
"repo": "Bluemoondragon07/obsidian-light-and-bright-theme",
"screenshot": "light-and-bright-cover.png",
"modes": ["dark", "light"]
},
{
"name": "Wikipedia",
"author": "Ha'ani Whitlock",
"repo": "Bluemoondragon07/Wikipedia-Theme",
"screenshot": "example.png",
"modes": ["dark", "light"]
},
{
"name": "Material Gruvbox",
"author": "AllJavi",
"repo": "AllJavi/material_gruvbox_obsidian",
"screenshot": "promo_screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Wombat",
"author": "hush-hush",
"repo": "hush-hush/obsidian_wombat",
"screenshot": "main_thumbnail.png",
"modes": ["dark"]
},
{
"name": "Vibrant",
"author": "James Lemony",
"repo": "JamesLemony/obsidian_vibrant",
"screenshot": "images/demo1.png",
"modes": ["dark"]
},
{
"name": "Shiba Inu",
"author": "Farouk",
"repo": "faroukx/Obsidian-shiba-inu-theme",
"screenshot": "shibainubackgroundshowcase.png",
"modes": ["dark", "light"]
},
{
"name": "AnuPpuccin",
"author": "Anubis",
"repo": "AnubisNekhet/AnuPpuccin",
"screenshot": "preview.png",
"modes": ["dark", "light"]
},
{
"name": "Abyssal",
"author": "tazpellegrini",
"repo": "tazpellegrini/abyssalobsidian",
"screenshot": "abyssal-thumbnail.png",
"modes": ["dark", "light"]
},
{
"name": "Jotter",
"author": "lnbgc",
"repo": "lnbgc/obsidian-jotter",
"screenshot": "jotter.png",
"modes": ["dark", "light"]
},
{
"name": "PLN",
"author": "PipeItToDevNull",
"repo": "PipeItToDevNull/PLN",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Dracula Gemini",
"author": "Alex Olshansky",
"repo": "clbn/dracula-gemini",
"screenshot": "images/cover-thumbnail.png",
"modes": ["dark"]
},
{
"name": "Dawn",
"author": "Min",
"repo": "ds-package/Dawn",
"screenshot": "assets/00-screenshot-small.png",
"modes": ["dark", "light"]
},
{
"name": "Cybertron Shifted",
"author": "JorgEdmundo",
"repo": "JorgEdmundo/cybertron-shifted",
"screenshot": "CybertronShifted.png",
"modes": ["dark"]
},
{
"name": "Rezin",
"author": "NicolasGHS",
"repo": "NicolasGHS/Rezin-theme",
"screenshot": "assets/image.png",
"modes": ["dark"]
},
{
"name": "Material Flat",
"author": "Threethan",
"repo": "threethan/obsidian-material-flat-theme",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Nightingale",
"author": "frank0713",
"repo": "frank0713/nightingale-obsidian",
"screenshot": "image/cover.png",
"modes": ["dark"]
},
{
"name": "Dekurai",
"author": "sergey",
"repo": "sergey900553/obsidian_dekurai_theme",
"screenshot": "screenshot.png",
"modes": ["dark"]
},
{
"name": "Polka",
"author": "Callum Hackett",
"repo": "callumhackett/obsidian_polka_theme",
"screenshot": "polka.png",
"modes": ["dark", "light"]
},
{
"name": "Tomorrow Night Bright",
"author": "Gerard Braad",
"repo": "gbraad-obsidian/obsidian-tomorrow-night-bright-theme",
"screenshot": "images/example.png",
"modes": ["dark"]
},
{
"name": "Lemons Theme",
"author": "Moritz Jung",
"repo": "mProjectsCode/obsidian-lemons-theme",
"screenshot": "lemons-theme-picture-low-res.PNG",
"modes": ["dark"]
},
{
"name": "Maple",
"author": "subframe7536",
"repo": "subframe7536/obsidian-theme-maple",
"screenshot": "img/screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Obsidianotion",
"author": "Diego Eis",
"repo": "diegoeis/obsidianotion",
"screenshot": "cover.png",
"modes": ["dark", "light"]
},
{
"name": "Elegance",
"author": "Victologo",
"repo": "Victologo/elegance-theme",
"screenshot": "assets/Miniatura - Elegance (tema para Obisidian).jpg",
"modes": ["dark", "light"]
},
{
"name": "Tokyo Night",
"author": "tcmmichaelb139",
"repo": "tcmmichaelb139/obsidian-tokyonight",
"screenshot": "dark.png",
"modes": ["dark", "light"]
},
{
"name": "iA Writer",
"author": "mrowa44",
"repo": "mrowa44/obsidian-ia-writer",
"screenshot": "promo_screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Notation 2",
"author": "Ha'ani Whitlock",
"repo": "Bluemoondragon07/obsidian-notation-2",
"screenshot": "cover-small.png",
"modes": ["dark", "light"]
},
{
"name": "Dune",
"author": "Joval",
"repo": "Jopp-gh/Obsidian-Dune84",
"screenshot": "Dune-Obsidian.jpg",
"modes": ["dark", "light"]
},
{
"name": "Sanguine",
"author": "Satchelmouth",
"repo": "Satchelmouth/Obsidian-Theme-Sanguine",
"screenshot": "Sanguine_Store_Screenshot.png",
"modes": ["dark"]
},
{
"name": "Everforest Enchanted",
"author": "FireIsGood",
"repo": "FireIsGood/obsidian-everforest-enchanted",
"screenshot": "promo_screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "sQdthOne",
"author": "Keith 'sQdth' Lerner",
"repo": "KeithLerner/ObsidianMDsQdthOne",
"screenshot": "GitCapture.png",
"modes": ["dark", "light"]
},
{
"name": "GitHubDHC",
"author": "Scott Kirvan",
"repo": "ScottKirvan/GitHubDHC",
"screenshot": "imgs/thumbnail.png",
"modes": ["dark"]
},
{
"name": "Proper Dark",
"author": "Lukas Bach",
"repo": "lukasbach/obsidian-proper-dark",
"screenshot": "thumb.png",
"modes": ["dark", "light"]
},
{
"name": "Sparkling Night",
"author": "Isax785",
"repo": "isax785/obsidian-sparkling-night",
"screenshot": "img/sparkling_night.png",
"modes": ["dark", "light"]
},
{
"name": "Serenity",
"author": "Ha'ani Whitlock",
"repo": "Bluemoondragon07/Obsidian-Serenity",
"screenshot": "cover-small.png",
"modes": ["dark", "light"]
},
{
"name": "Olivier\u2019s Theme",
"author": "Olivier Spinnler",
"repo": "OlivierPS/Olivier-s-Theme",
"screenshot": "main-screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Synthwave '84",
"author": "George Jose",
"repo": "G2Jose/synthwave-84-obsidian-theme",
"screenshot": "screenshot-512x288.png",
"modes": ["dark"]
},
{
"name": "iB Writer",
"author": "whereiswhere",
"repo": "whereiswhere/iB-Writer",
"screenshot": "store-screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Buena Vista",
"author": "oqipo",
"repo": "oqipoDev/buena-vista-obsidian",
"screenshot": "img/thumb.png",
"modes": ["dark", "light"]
},
{
"name": "Simplicity",
"author": "Thiews",
"repo": "Thiews/obsidian-simplicity",
"screenshot": "cover.png",
"modes": ["dark", "light"]
},
{
"name": "ProtocolBlue",
"author": "bluecosmo",
"repo": "PrettyBoyCosmo/ProtocolBlue",
"screenshot": "assets/image.png",
"modes": ["dark"]
},
{
"name": "Yue",
"author": "Gixo",
"repo": "GixoXYZ/YueObsidian",
"screenshot": "assets/main-demo.png",
"modes": ["light", "dark"]
},
{
"name": "Brutalism",
"author": "abrahambahez",
"repo": "abrahambahez/Brutalism",
"screenshot": "brutalism_dark.png",
"modes": ["dark", "light"]
},
{
"name": "Tokyo Night Storm",
"author": "arozx",
"repo": "arozx/obsidian_tokyo-night-storm",
"screenshot": "tokyo-night-storm.png",
"modes": ["dark"]
},
{
"name": "Strict",
"author": "Nikolai2038",
"repo": "Nikolai2038/strict-obsidian-theme",
"screenshot": "screenshot_edit_mode.png",
"modes": ["dark"]
},
{
"name": "NeuBorder",
"author": "sq1000000",
"repo": "sq1000000/NeuBorder",
"screenshot": "img/cover.png",
"modes": ["light", "dark"]
},
{
"name": "Bolt",
"author": "Ha'ani Whitlock",
"repo": "Bluemoondragon07/Obsidian-Bolt",
"screenshot": "cover.png",
"modes": ["dark", "light"]
},
{
"name": "Origin",
"author": "Ha'ani Whitlock",
"repo": "Bluemoondragon07/Obsidian-Origin",
"screenshot": "origin.png",
"modes": ["dark", "light"]
},
{
"name": "Covert",
"author": "Schrunchee",
"repo": "schrunchee/obsidian-covert-theme",
"screenshot": "obsidian_covert_theme_sm3.jpg",
"modes": ["dark"]
},
{
"name": "Dracula Plus",
"author": "saket",
"repo": "saket61195/Dracula_obsidian_theme",
"screenshot": "demo1.png",
"modes": ["dark"]
},
{
"name": "SALEM",
"author": "Salem Elatar",
"repo": "SalemElatar/salem-obsidian-theme",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Feather",
"author": "zfmohammed",
"repo": "zfmohammed/obsidian-feather",
"screenshot": "assets/Screenshot.png",
"modes": ["dark"]
},
{
"name": "Comfort Dark",
"author": "Ooopz",
"repo": "Ooopz/obsidianmd-theme-comfort-dark",
"screenshot": "screenshot.png",
"modes": ["dark"]
},
{
"name": "Simple",
"author": "Diego Eis",
"repo": "diegoeis/simple-obsidian",
"screenshot": "cover.png",
"modes": ["dark", "light"]
},
{
"name": "Comfort",
"author": "Carrie999",
"repo": "Carrie999/comfort",
"screenshot": "screenshot.png",
"modes": ["light"]
},
{
"name": "NotSwift",
"author": "David Roos",
"repo": "davidjroos/obsidian-notswift",
"screenshot": "screenie.png",
"modes": ["dark", "light"]
},
{
"name": "Neo",
"author": "ABDO",
"repo": "x0aa7i/obsidian-neo",
"screenshot": "cover.png",
"modes": ["dark", "light"]
},
{
"name": "Vanilla AMOLED",
"author": "Sakura Akeno Isayeki",
"repo": "SakuraIsayeki/vanilla-amoled-theme",
"screenshot": "sample-screenshot-sm.png",
"modes": ["dark"]
},
{
"name": "Qlean",
"author": "Fro-Q",
"repo": "froq0/Qlean",
"screenshot": "assets/Qlean.png",
"modes": ["dark", "light"]
},
{
"name": "Aura Dark",
"author": "ProbablyNot",
"repo": "possibly-not/obsidian-aura-theme",
"screenshot": "img/aura_dark_diagonal.png",
"modes": ["dark"]
},
{
"name": "Serika",
"author": "Warrobot10",
"repo": "Warrobot10/Serika-for-obsidian",
"screenshot": "Serika.png",
"modes": ["dark", "light"]
},
{
"name": "Autotape",
"author": "Delphi",
"repo": "1612elphi/autotape-theme",
"screenshot": "Screen.png",
"modes": ["dark", "light"]
},
{
"name": "LaTeX",
"author": "Ben @ phooey.foo",
"repo": "benf2004/Obsidian-LaTeX-Theme",
"screenshot": "screenshots/preview.png",
"modes": ["dark", "light"]
},
{
"name": "halcyon",
"author": "dbarenholz",
"repo": "dbarenholz/halcyon-obsidian",
"screenshot": "img/halcyon-banner-small.png",
"modes": ["dark"]
},
{
"name": "monochroYOU",
"author": "GuiMar10",
"repo": "GuiMar10/monochroYou",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Flexoki",
"author": "kepano",
"repo": "kepano/flexoki-obsidian",
"screenshot": "cover-small.png",
"modes": ["dark", "light"]
},
{
"name": "Green Nightmare",
"author": "prradox",
"repo": "prradox/green-nightmare",
"screenshot": "screenshot.png",
"modes": ["dark"]
},
{
"name": "Transient",
"author": "GeorgeAzma",
"repo": "GeorgeAzma/Transient",
"screenshot": "theme.png",
"modes": ["dark"]
},
{
"name": "Kakano",
"author": "Isaac Freeman",
"repo": "isaacfreeman/kakano-obsidian-theme",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "EvilRed",
"author": "Atmanand Gauns",
"repo": "tu2-atmanand/EvilRed-ObsidianTheme",
"screenshot": "Thumbnail.png",
"modes": ["dark"]
},
{
"name": "Prussian Blue",
"author": "EddieTheEd",
"repo": "EddieTheEd/Prussian-Blue",
"screenshot": "assets/thumbnail.png",
"modes": ["dark"]
},
{
"name": "Zario",
"author": "Ricardo Nazario",
"repo": "nazarioricardo/zario-obsidian",
"screenshot": "screenshot.png",
"modes": ["light", "dark"]
},
{
"name": "Perso",
"author": "Behrouze",
"repo": "behrouze/obsidian-theme",
"screenshot": "screenshots/theme-perso-obsidian.png",
"modes": ["light"]
},
{
"name": "Heboric",
"author": "nhrrs",
"repo": "nhrrs/heboric-obsidian",
"screenshot": "screenshots/Heboric-screenshot-sm2.png",
"modes": ["light", "dark"]
},
{
"name": "Vicious",
"author": "Zaher Al Majed",
"repo": "zaheralmajed/vicious-theme-obsidian",
"screenshot": "screenshot.png",
"modes": ["light", "dark"]
},
{
"name": "Spring",
"author": "Mateus Derossi",
"repo": "MateusHenriquegringo/spring-theme-obsidian",
"screenshot": "SPRING.png",
"modes": ["dark", "light"]
},
{
"name": "Celestial Night",
"author": "Ha'ani Whitlock",
"repo": "Bluemoondragon07/Obsidian-Celestial-Night-Theme",
"screenshot": "assets/low-res.png",
"modes": ["dark"]
},
{
"name": "Ros\u00e9 Pine",
"author": "sspaeti",
"repo": "sspaeti/obsidian_rose_pine",
"screenshot": "dark.jpg",
"modes": ["dark", "light"]
},
{
"name": "Carbon",
"author": "V.H. Belvadi",
"repo": "vhbelvadi/obsidian-carbon",
"screenshot": "obsidian-screenshot-small.png",
"modes": ["dark", "light"]
},
{
"name": "Phoenix",
"author": "RyzenFromFire",
"repo": "RyzenFromFire/obsidian-phoenix",
"screenshot": "thumbnail.png",
"modes": ["dark", "light"]
},
{
"name": "Garden Gnome (Adwaita, GTK)",
"author": "oqipo",
"repo": "oqipoDev/garden-gnome-obsidian",
"screenshot": "img/thumb.png",
"modes": ["dark", "light"]
},
{
"name": "Monokai",
"author": "bitSchleuder",
"repo": "bitSchleuder/obsidian-monokai-theme",
"screenshot": "assets/monokai-obsidian-theme-thumbnail.png",
"modes": ["dark", "light"]
},
{
"name": "Ethereon",
"author": "rohit04saluja",
"repo": "ethereontheme/obsidian",
"screenshot": "screenshots/dark.png",
"modes": ["dark", "light"]
},
{
"name": "Tomorrow",
"author": "deudz",
"repo": "deudz/obsidian-tomorrow-theme",
"screenshot": "res/thumb.png",
"modes": ["dark"]
},
{
"name": "Nightfox",
"author": "mbromell",
"repo": "markmacode/obsidian-nightfox",
"screenshot": "thumbnail.png",
"modes": ["dark", "light"]
},
{
"name": "Novadust",
"author": "marta.stl",
"repo": "mmartamg/novadust-obsidian",
"screenshot": "novadust-img.png",
"modes": ["dark"]
},
{
"name": "Pure",
"author": "Lychi",
"repo": "lychileng/Obsidian-Theme-Pure",
"screenshot": "screenshots/cover.png",
"modes": ["dark", "light"]
},
{
"name": "Prime",
"author": "Eda",
"repo": "rivea0/obsidian-prime",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Arcane",
"author": "xRyul",
"repo": "xRyul/obsidian-arcane-theme",
"screenshot": "Arcane_sample_01.jpg",
"modes": ["dark"]
},
{
"name": "MistyMauve",
"author": "RaveSplash",
"repo": "RaveSplash/obsidian-misty-mauve",
"screenshot": "dark.jpg",
"modes": ["dark", "light"]
},
{
"name": "Sea Glass",
"author": "Kyle Stewart",
"repo": "KStew1017/obsidian-sea-glass-theme",
"screenshot": "sea-glass-preview.png",
"modes": ["dark"]
},
{
"name": "Improved Potato",
"author": "Dominik Meurer",
"repo": "DMeurer/improved-potato",
"screenshot": "images/image2.png",
"modes": ["dark", "light"]
},
{
"name": "Neovim",
"author": "slavamak",
"repo": "slavafyi/obsidian-neovim",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Sparkling Day",
"author": "Isax785",
"repo": "isax785/obsidian-sparkling-day",
"screenshot": "img/sparkling_day_small.png",
"modes": ["light"]
},
{
"name": "mono black (monochrome, charcoal)",
"author": "ZeChArtiahSaher",
"repo": "ZeChArtiahSaher/obsidian-mono-black",
"screenshot": "img/screen-1.png",
"modes": ["dark"]
},
{
"name": "Tom's Theme",
"author": "Tom Kay",
"repo": "tomkaygames/Tom-s-Theme",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Soloing",
"author": "Isax785",
"repo": "isax785/obsidian-soloing",
"screenshot": "img/soloing_small.png",
"modes": ["dark", "light"]
},
{
"name": "Reshi",
"author": "Laney Elizabeth",
"repo": "contrapasso3/Reshi",
"screenshot": "Reshi Preview.png",
"modes": ["dark", "light"]
},
{
"name": "Focus",
"author": "Moritz Jung",
"repo": "mProjectsCode/obsidian-focus-theme",
"screenshot": "FocusThemeImage.png",
"modes": ["dark"]
},
{
"name": "Nordic",
"author": "Nato",
"repo": "natowb/obsidian-nordic",
"screenshot": "obsidian-nordic.png",
"modes": ["dark", "light"]
},
{
"name": "Tiniri",
"author": "Vlad.studio",
"repo": "vladstudio/tiniri-obsidian",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Kurokula",
"author": "indyandie",
"repo": "Indyandie/kurokula-obsidian-theme",
"screenshot": "dark.png",
"modes": ["dark"]
},
{
"name": "Apex",
"author": "clearlysid",
"repo": "clearlysid/apex",
"screenshot": "preview.png",
"modes": ["dark", "light"]
},
{
"name": "Poimandres",
"author": "Diego Espinosa",
"repo": "yoGhastly/poimandres-obsidian",
"screenshot": "dark.png",
"modes": ["dark"]
},
{
"name": "Eldritch",
"author": "Eldritch",
"repo": "eldritch-theme/obsidian",
"screenshot": "eldritch.png",
"modes": ["dark"]
},
{
"name": "Soothe",
"author": "AwesomeDog",
"repo": "AwesomeDog/obsidian-soothe",
"screenshot": "preview.png",
"modes": ["dark", "light"]
},
{
"name": "Sandover",
"author": "eliz-abeth",
"repo": "eliz-abeth/sandover",
"screenshot": "/images/sandover-plain.png",
"modes": ["light", "dark"]
},
{
"name": "Dunite",
"author": "Ch0live",
"repo": "Ch0live/dunite",
"screenshot": "dunite-icon.png",
"modes": ["dark", "light"]
},
{
"name": "Virgo",
"author": "Jack Liu",
"repo": "loveminimal/obsidian-theme-virgo",
"screenshot": "assets/screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Penumbra",
"author": "Josef Bisits",
"repo": "jbisits/penumbra-obsidian-theme",
"screenshot": "screenshot_light.png",
"modes": ["dark", "light"]
},
{
"name": "Trace Labs",
"author": "Trace Labs",
"repo": "humandecoded/Trace-Labs-Obsidian-Theme",
"screenshot": "screenshot.png",
"modes": ["dark"]
},
{
"name": "W95",
"author": "phchnag",
"repo": "phchang/W95",
"screenshot": "w95.png",
"modes": ["light", "dark"]
},
{
"name": "Sanctum reborn",
"author": "Anto Kein\u00e4nen",
"repo": "antoKeinanen/obsidian-sanctum-reborn",
"screenshot": "cover.png",
"modes": ["dark", "light"]
},
{
"name": "Spectrum Blue",
"author": "ryanjrman",
"repo": "SandmansDreams/Spectrum-Blue",
"screenshot": "SpectrumBluePreview.png",
"modes": ["dark"]
},
{
"name": "Cobalt Peacock",
"author": "dpavaoman",
"repo": "dpavaoman/cobalt-peacock-obmd",
"screenshot": "screenshot.png",
"modes": ["dark"]
},
{
"name": "Lorens",
"author": "Lorens Osman",
"repo": "lorens-osman-dev/Lorens-Obsidian-Theme",
"screenshot": "cover.png",
"modes": ["dark"]
},
{
"name": "Rift",
"author": "Noah Boos",
"repo": "NoahBoos/obsidian-rift",
"screenshot": "showcase-temporaire.png",
"modes": ["dark", "light"]
},
{
"name": "Blossom",
"author": "BlossomTheme",
"repo": "BlossomTheme/Obsidian",
"screenshot": "screenshot01.png",
"modes": ["dark"]
},
{
"name": "Space",
"author": "BHappen",
"repo": "bhappen/obsidian-space",
"screenshot": "obsidian-space.png",
"modes": ["dark"]
},
{
"name": "Neon Synthwave",
"author": "Grant Smith",
"repo": "grjsmith/Neon-Synthwave",
"screenshot": "screenshot.jpg",
"modes": ["dark"]
},
{
"name": "Vauxhall",
"author": "CyanVoxel",
"repo": "CyanVoxel/vauxhall-obsidian",
"screenshot": "cover.png",
"modes": ["dark", "light"]
},
{
"name": "Allium",
"author": "Nullglyph",
"repo": "xainapse/Allium",
"screenshot": "AlliumScreenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Pale - \u6de1",
"author": "Elhary",
"repo": "hariiy-sys/obsidian-Pale",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Creme brulee",
"author": "Anareaty",
"repo": "anareaty/creme-brulee-obsidian-theme",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Dynamic Color",
"author": "Rody Davis",
"repo": "rodydavis/obsidian-dynamic-color",
"screenshot": "screenshots/light-purple.png",
"modes": ["dark", "light"]
},
{
"name": "Dark Castle",
"author": "scottgriv",
"repo": "scottgriv/Dark-Castle-Obsidian",
"screenshot": "screenshot-small.png",
"modes": ["dark"]
},
{
"name": "RetroNotes",
"author": "Sr.Campelo",
"repo": "sr-campelo/retronotes",
"screenshot": "cover.jpg",
"modes": ["dark", "light"]
},
{
"name": "Bossidian",
"author": "BossElijah",
"repo": "BossElijah/bossidian",
"screenshot": "images/image-1-small.png",
"modes": ["dark"]
},
{
"name": "Aurora-Twilight",
"author": "Quintavalle Pietro",
"repo": "Quinta0/Aurora-Twilight",
"screenshot": "image-small.png",
"modes": ["dark", "light"]
},
{
"name": "Evergreen-Shadow",
"author": "Quinta0",
"repo": "Quinta0/Evergreen-Shadow",
"screenshot": "Evergreen-Shadow-small.png",
"modes": ["dark"]
},
{
"name": "Velvet-Moon",
"author": "Quinta0",
"repo": "Quinta0/Velvet-Moon",
"screenshot": "Velvet-Moon-small.png",
"modes": ["dark"]
},
{
"name": "Midnight-Fjord",
"author": "Quinta0",
"repo": "Quinta0/Midnight-Fjord",
"screenshot": "Midnight-Fjord-small.png",
"modes": ["dark"]
},
{
"name": "Mint-Breeze",
"author": "Quinta0",
"repo": "Quinta0/Mint-Breeze",
"screenshot": "Mint-Breeze-small.png",
"modes": ["light"]
},
{
"name": "Lavender-Mist",
"author": "Quinta0",
"repo": "Quinta0/Lavender-Mist",
"screenshot": "Lavender-Mist-small.png",
"modes": ["light"]
},
{
"name": "Northern-Sky",
"author": "Quinta0",
"repo": "Quinta0/Northern-Sky",
"screenshot": "Northern-Sky-small.png",
"modes": ["light"]
},
{
"name": "Seamless View",
"author": "Gustavo Salgado",
"repo": "GustavoSZ124/Obsidian-Theme-Seamless-View",
"screenshot": "assets/Seamless View.png",
"modes": ["dark", "light"]
},
{
"name": "Gummy-Revived",
"author": "WinnerWind",
"repo": "WinnerWind/gummy-revived",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Agate",
"author": "solmi",
"repo": "solm0/Agate",
"screenshot": "agate_screenshot.png",
"modes": ["light"]
},
{
"name": "Vanilla Palettes",
"author": "GnRlLeclerc",
"repo": "GnRlLeclerc/Vanilla-Theme-Palettes",
"screenshot": "thumbnail.png",
"modes": ["light", "dark"]
},
{
"name": "Dark Clarity",
"author": "chenbihao",
"repo": "chenbihao/obsidian-theme-dark-clarity",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Nier",
"author": "exloseur3d",
"repo": "exloseur3d/nier-theme",
"screenshot": "preview_Nier_theme.png",
"modes": ["dark"]
},
{
"name": "DarkEmber",
"author": "miz",
"repo": "miz-i/Obsidian-theme-DarkEmber",
"screenshot": "images/screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Pxld",
"author": "Lina674",
"repo": "Lina674/Pxld-Obsidian-Theme",
"screenshot": "merged_diagonal_resized.png",
"modes": ["dark", "light"]
},
{
"name": "chiaroscuroflow",
"author": "Quinta0",
"repo": "Quinta0/chiaroscuroflow",
"screenshot": "cover.png",
"modes": ["light", "dark"]
},
{
"name": "Muted-Blue",
"author": "HasanTheSyrian",
"repo": "HasanTheSyrian/Muted-Blue-Obsidian",
"screenshot": "preview.png",
"modes": ["dark"]
},
{
"name": "Oreo",
"author": "carols12352",
"repo": "carols12352/Oreo-theme",
"screenshot": "images/thumbnail.png",
"modes": ["light", "dark"]
},
{
"name": "Brainhack",
"author": "Spekulucius",
"repo": "Spekulucius/obsidian-brainhack",
"screenshot": "preview.png",
"modes": ["light", "dark"]
},
{
"name": "nobb",
"author": "buluw",
"repo": "buluw/nobb-obsidian",
"screenshot": "nobb-obtheme.jpg",
"modes": ["dark"]
},
{
"name": "Vanilla AMOLED Color",
"author": "sskki",
"repo": "Sskki-exe/vanilla-amoled-theme-color",
"screenshot": "sample-screenshot-sm.png",
"modes": ["dark"]
},
{
"name": "Abate",
"author": "ricedev10",
"repo": "ricedev10/Abate-theme",
"screenshot": "ScreenshotPreview.png",
"modes": ["light"]
},
{
"name": "Shade Sanctuary",
"author": "Elevict",
"repo": "Elevict/Shade-Sanctuary",
"screenshot": "cover.png",
"modes": ["dark", "light"]
},
{
"name": "Underwater",
"author": "Seniblue",
"repo": "Seniblue/Underwater",
"screenshot": "uw.png",
"modes": ["dark", "light"]
},
{
"name": "Kiwi Mono",
"author": "c-sooyoung",
"repo": "c-sooyoung/kiwi-mono-obsidian-theme",
"screenshot": "thumbnail.png",
"modes": ["dark", "light"]
},
{
"name": "Lumines",
"author": "Daniel Khmara",
"repo": "danielkhmara/obsidian-lumines",
"screenshot": "obsidian-lumines.png",
"modes": ["dark", "light"]
},
{
"name": "Colored Candy",
"author": "Erika Gozar",
"repo": "Erallie/colored-candy",
"screenshot": "colored-candy-thumbnail.png",
"modes": ["dark", "light"]
},
{
"name": "Adrenaline",
"author": "Spekulucius",
"repo": "Spekulucius/obsidian-adrenaline",
"screenshot": "adrenaline_thumbnail.png",
"modes": ["dark", "light"]
},
{
"name": "OISTNB",
"author": "omsandeeppatil",
"repo": "omsandippatil/OISTNB",
"screenshot": "OISTNB.png",
"modes": ["dark", "light"]
},
{
"name": "Black",
"author": "Simon Ostini (behem0th)",
"repo": "b3h3m0th/black-obsidian-theme",
"screenshot": "screenshot_512x275.png",
"modes": ["dark"]
},
{
"name": "Refined Default",
"author": "Faisal Tamano Jr.",
"repo": "FaisalTamanoJr/Refined-Default",
"screenshot": "banner.png",
"modes": ["dark", "light"]
},
{
"name": "Rose Red",
"author": "Atmanand Gauns",
"repo": "tu2-atmanand/RoseRed-ObsidianTheme",
"screenshot": "Thumbnail.png",
"modes": ["dark"]
},
{
"name": "Minimal Edge",
"author": "Elhary",
"repo": "hariiy-sys/Obsidian-Minimal-Edge",
"screenshot": "minimal-edge.png",
"modes": ["dark", "light"]
},
{
"name": "AMOLED Serenity",
"author": "Darth Demono",
"repo": "darthdemono/AMOLED-Serenity",
"screenshot": "AMOLED-Serenity-sm.png",
"modes": ["dark"]
},
{
"name": "Hackthebox",
"author": "Golam",
"repo": "golam71/obsidian-hackthebox",
"screenshot": "dark.png",
"modes": ["dark", "light"]
},
{
"name": "Transparent",
"author": "Oczko24",
"repo": "Oczko24/Obsidian-transparent",
"screenshot": "cover.png",
"modes": ["dark", "light"]
},
{
"name": "Lagom",
"author": "LeslyeCream",
"repo": "LeslyeCream/Lagom-Obsidian-Theme",
"screenshot": "IMG_20241009_134537.jpg",
"modes": ["dark", "light"]
},
{
"name": "Simply Colorful",
"author": "Lorenzo Pegorari",
"repo": "LorenzoPegorari/SimplyColorful",
"screenshot": "preview.png",
"modes": ["dark", "light"]
},
{
"name": "OneNice",
"author": "S.Sunhaloo - P.Roy",
"repo": "Sunhaloo/OneNice",
"screenshot": "OneNice.png",
"modes": ["dark", "light"]
},
{
"name": "Fancy-a-Story",
"author": "Kapirklaa",
"repo": "ElsaTam/obsidian-fancy-a-story",
"screenshot": "overview-mini.png",
"modes": ["dark", "light"]
},
{
"name": "Flexoki Warm",
"author": "ofalvai",
"repo": "ofalvai/flexoki-warm",
"screenshot": "screenshots/cover-small.png",
"modes": ["dark", "light"]
},
{
"name": "evangelion",
"author": "xero",
"repo": "xero/evangelion.obsidian",
"screenshot": "preview.png",
"modes": ["dark"]
},
{
"name": "Borealis",
"author": "Juanchi Parra",
"repo": "juanchiparra/obsidian-borealis",
"screenshot": "docs/dark-cover.png",
"modes": ["dark", "light"]
},
{
"name": "Red-Shadow",
"author": "DKLiberty",
"repo": "DKLiberty/Red-Shadow",
"screenshot": "Resources/Screenshot.png",
"modes": ["dark"]
},
{
"name": "Shadeflow",
"author": "Artorias",
"repo": "artorias305/obsidian-shadeflow",
"screenshot": "dark.png",
"modes": ["dark", "light"]
},
{
"name": "Orange",
"author": "Alex F",
"repo": "afrangi/Obsidian-Theme-Orange",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Winter Spices",
"author": "incantatem2",
"repo": "incantatem2/Obsidian-winter-spices",
"screenshot": "images/winterspices-thumbnail.jpg",
"modes": ["light"]
},
{
"name": "Consolas",
"author": "Pinei",
"repo": "pinei/obsidian-consolas-theme",
"screenshot": "screenshot.png",
"modes": ["dark"]
},
{
"name": "Neutral Academia",
"author": "incantatem2",
"repo": "incantatem2/Obsidian-neutral-academia",
"screenshot": "images/neutralacademia-dark-thumbnail.jpg",
"modes": ["dark", "light"]
},
{
"name": "Ink",
"author": "harmtemolder",
"repo": "harmtemolder/obsidian-ink",
"screenshot": "screenshot.png",
"modes": ["light"]
},
{
"name": "Frost",
"author": "drkpxl",
"repo": "drkpxl/Frost",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Glass Robo",
"author": "Lorens Osman",
"repo": "lorens-osman-dev/Glass-Robo",
"screenshot": "cover.png",
"modes": ["dark", "light"]
},
{
"name": "Mulled Wine",
"author": "incantatem2",
"repo": "incantatem2/Obsidian-mulled-wine",
"screenshot": "images/mulledwine-thumbnail.jpg",
"modes": ["dark", "light"]
},
{
"name": "Vortex",
"author": "abhimangs",
"repo": "abhimangs/obsidian-vortex",
"screenshot": "cover.png",
"modes": ["dark", "light"]
},
{
"name": "Kanagawa Paper",
"author": "sspaeti",
"repo": "sspaeti/obsidian_kanagawa_paper",
"screenshot": "dark.jpg",
"modes": ["dark", "light"]
},
{
"name": "Sakurajima",
"author": "Daiki Nakashima",
"repo": "Daiki48/sakurajima.obsidian",
"screenshot": "screenshots/cover.png",
"modes": ["dark"]
},
{
"name": "Cupertino",
"author": "Alexis C",
"repo": "aaaaalexis/obsidian-cupertino",
"screenshot": "cupertino.png",
"modes": ["dark", "light"]
},
{
"name": "Emerald Echo",
"author": "Malcolm Mielle",
"repo": "MalcolmMielle/Emerald-Echo",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Playground",
"author": "Ezben",
"repo": "benjaminezequiel/playground-theme",
"screenshot": "theme_preview.png",
"modes": ["dark", "light"]
},
{
"name": "Minimal Dracula",
"author": "Druxorey",
"repo": "druxorey/minimal-dracula-for-obsidian",
"screenshot": "resources/cover.png",
"modes": ["dark", "light"]
},
{
"name": "Ukiyo",
"author": "kinmury, Technerium",
"repo": "technerium/obsidian-ukiyo",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Zen",
"author": "laughmaker",
"repo": "laughmaker/Zen",
"screenshot": "cover.png",
"modes": ["dark", "light"]
},
{
"name": "OLED.Black",
"author": "Inc44",
"repo": "Inc44/OLED.Black",
"screenshot": "screenshot.png",
"modes": ["dark"]
},
{
"name": "Sei",
"author": "iwa",
"repo": "iwa/Sei",
"screenshot": "assets/thumbnail.jpg",
"modes": ["dark", "light"]
},
{
"name": "Sunbather",
"author": "babidisrc",
"repo": "babidisrc/obsidian-sunbather",
"screenshot": "thumbnail.png",
"modes": ["dark", "light"]
},
{
"name": "Minimal Red",
"author": "AfonsoMiranda02",
"repo": "AfonsoMiranda02/MinimalRed-Obsidian-Theme",
"screenshot": "cover.png",
"modes": ["dark"]
},
{
"name": "Rose Pine",
"author": "JTrenerry ",
"repo": "rose-pine/obsidian",
"screenshot": "thumbnail.png",
"modes": ["dark", "light"]
},
{
"name": "Composer",
"author": "vran",
"repo": "vran-dev/obsidian-composer",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Old World",
"author": "Double Tilde",
"repo": "double-tilde/old-world-obsidian",
"screenshot": "images/screenshot.png",
"modes": ["dark"]
},
{
"name": "Material 3",
"author": "HarmfulBreeze",
"repo": "HarmfulBreeze/obsidian-material-3-theme",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Serif",
"author": "agodlyman",
"repo": "GodlyMan-bit/Serif",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Sad Machine Druid",
"author": "Halftroll0",
"repo": "Halftroll0/Sad-Machine-Druid",
"screenshot": "sad_machine_druid_screenshot_v1.jpg",
"modes": ["dark", "light"]
},
{
"name": "flexcyon",
"author": "bladeacer",
"repo": "bladeacer/flexcyon",
"screenshot": "/docs/dark.png",
"modes": ["dark", "light"]
},
{
"name": "Retro Windows",
"author": "codeisconfusing",
"repo": "codeisconfusing/retro-windows-obsidian",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "LessWrong",
"author": "henry",
"repo": "outsidetext/lesswrong-obsidian",
"screenshot": "preview.png",
"modes": ["dark", "light"]
},
{
"name": "Vercel Geist",
"author": "en3sis",
"repo": "en3sis/vercel-obsidian",
"screenshot": "assets/vercel-obsidian-small.png",
"modes": ["dark", "light"]
},
{
"name": "aged whisky",
"author": "incantatem2",
"repo": "incantatem2/Obsidian-aged-whisky",
"screenshot": "images/aged-whisky-thumbnail.jpg",
"modes": ["dark"]
},
{
"name": "FastPpuccin",
"author": "LostViking09",
"repo": "LostViking09/obsidian-fastppuccin",
"screenshot": "theme_image.png",
"modes": ["dark", "light"]
},
{
"name": "Minimal-Dark-Coder",
"author": "Krishna Sen",
"repo": "Krishna-Sen-Programming-World/Minimal-Dark-Coder",
"screenshot": "images/image.jpg",
"modes": ["dark"]
},
{
"name": "Things 3",
"author": "Paralloid",
"repo": "MrParalloid/obsidian-things",
"screenshot": "things-screenshot.jpg",
"modes": ["dark", "light"]
},
{
"name": "Enhanced file explorer tree",
"author": "LennZone",
"repo": "LennZone/enhanced-file-explorer-tree",
"screenshot": "thumbnail.png",
"modes": ["dark", "light"]
},
{
"name": "Planetary",
"author": "ninetyfive666",
"repo": "ninetyfive666/Planetary",
"screenshot": "thumbnail.jpg",
"modes": ["dark", "light"]
},
{
"name": "Neumorphism",
"author": "LennZone",
"repo": "LennZone/Neumorphism",
"screenshot": "thumbnail.png",
"modes": ["dark", "light"]
},
{
"name": "Camena",
"author": "Bee",
"repo": "splendidissimemendax/Camena",
"screenshot": "Thumbnail.png",
"modes": ["dark", "light"]
},
{
"name": "Pomme Notes",
"author": "Paralloid",
"repo": "MrParalloid/pomme-notes",
"screenshot": "images/screenshot.jpg",
"modes": ["dark", "light"]
},
{
"name": "deep submerge",
"author": "incantatem2",
"repo": "incantatem2/Obsidian-deep-submerge",
"screenshot": "images/deep-submerge-thumbnail.jpg",
"modes": ["dark"]
},
{
"name": "Mono High Contrast",
"author": "manuelcoca",
"repo": "manuelcoca/obsidian-mono-high-contrast-theme",
"screenshot": "assets/thumbnail.png",
"modes": ["dark", "light"]
},
{
"name": "Publisher",
"author": "aidanastridge",
"repo": "aidanastridge/Publisher",
"screenshot": "src/thumbnail.png",
"modes": ["dark", "light"]
},
{
"name": "Ribbons",
"author": "ddspog",
"repo": "ddspog/obsidian-ribbons-theme",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "TerraFlow",
"author": "fabdub",
"repo": "dubefab/obsidian-TerraFlow",
"screenshot": "Terraflow-cover.png",
"modes": ["dark", "light"]
},
{
"name": "RetroOS 98",
"author": "ThePharaohArt",
"repo": "ThePharaohArt/Obsidian-RetroOS98",
"screenshot": "screen.png",
"modes": ["dark", "light"]
},
{
"name": "Quillcode",
"author": "theaayushpatel",
"repo": "theaayushpatel/quillcode",
"screenshot": "assets/dark-screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Myst",
"author": "mulder3062",
"repo": "mulder3062/Myst",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Soli Deo Gloria",
"author": "agodlyman",
"repo": "GodlyMan-bit/SoliDeoGloria",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Hojicha",
"author": "pr0methevs",
"repo": "pr0methevs/Hojicha",
"screenshot": "assets/thumbnail.png",
"modes": ["dark"]
},
{
"name": "Marathon",
"author": "Spekulucius",
"repo": "Spekulucius/obsidian-marathon",
"screenshot": "preview.png",
"modes": ["dark", "light"]
},
{
"name": "Handwriting (Kalam)",
"author": "Kumar Anurag",
"repo": "kmranrg/obsidian-handwriting-theme",
"screenshot": "screenshot.png",
"modes": ["light"]
},
{
"name": "Vesper",
"author": "omarrashad",
"repo": "omarrashad/obsidian-vesper",
"screenshot": "assets/cover.png",
"modes": ["dark", "light"]
},
{
"name": "Powered by Lancer",
"author": "SourTarte",
"repo": "SourTarte/Powered-By-Lancer",
"screenshot": "PoweredByLancer-Icon.png",
"modes": ["dark", "light"]
},
{
"name": "Terminal2K",
"author": "isax785",
"repo": "isax785/Terminal2K",
"screenshot": "img/screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Meridian",
"author": "mvahaste",
"repo": "mvahaste/meridian",
"screenshot": "preview.png",
"modes": ["dark", "light"]
},
{
"name": "Modern GenZ Vibedose",
"author": "Omkar Iyer",
"repo": "omkar-4/Modern-GenZ-Vibedose",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Duality",
"author": "CacadeThemes",
"repo": "CascadeThemes/Duality",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Minimalists Paradise",
"author": "Isabelle Basso",
"repo": "bellebasso/Minimalists-Paradise",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "dashboard",
"author": "incantatem2",
"repo": "incantatem2/Obsidian-dashboard",
"screenshot": "images/thumbnail.jpg",
"modes": ["light"]
},
{
"name": "SpectrumPlus",
"author": "Jo\u00e3o Ribeiro",
"repo": "anotherlusitano/SpectrumPlus",
"screenshot": "SpectrumPlusStorePreview.png",
"modes": ["dark"]
},
{
"name": "Radiance",
"author": "JabariD",
"repo": "JabariD/obsidian-radiance",
"screenshot": "cover.png",
"modes": ["dark", "light"]
},
{
"name": "Iridium",
"author": "kyffa",
"repo": "kyffa/Iridium",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "FlatCap",
"author": "cheycron",
"repo": "cheycron/flatcap-obsidian",
"screenshot": "images/screenshot.png",
"modes": ["dark"]
},
{
"name": "Mushin",
"author": "Vlad 3Design",
"repo": "Vlad3Design/Mushin",
"screenshot": "Mushin.jpg",
"modes": ["dark", "light"]
},
{
"name": "Avatar",
"repo": "cxj05h/obsidian-avatar",
"author": "cxj05h",
"modes": ["dark"],
"screenshot": "Avatar_Theme.png"
},
{
"name": "Robsi",
"author": "Riffaells",
"repo": "Riffaells/Robsi",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Coffee",
"author": "@regawaras",
"repo": "regawaras/Coffee",
"screenshot": "coffee.png",
"modes": ["dark", "light"]
},
{
"name": "RedShift - OLED Blue Light Filter",
"author": "Yazan Abu Queider",
"repo": "norderan/RedShift-obsidian-theme",
"screenshot": "screenshot.png",
"modes": ["dark"]
},
{
"name": "Nostromo",
"author": "gvorbeck",
"repo": "gvorbeck/Nostromo",
"screenshot": "assets/screenshot.png",
"modes": ["dark"]
},
{
"name": "Ravenloft",
"author": "Ivan Devyatko",
"repo": "circkumflexx/obsidian-ravenloft-theme",
"screenshot": "preview.png",
"modes": ["dark", "light"]
},
{
"name": "Tokyo Night Simple",
"author": "Daniel Arnold",
"repo": "danarnold/tokyonight-simple",
"screenshot": "directory-screenshot.png",
"modes": ["dark"]
},
{
"name": "Omega",
"author": "OmegaC",
"repo": "OmegaCentauri68/Omega-Theme-for-Obsidian",
"screenshot": "img/thumb.png",
"modes": ["dark"]
},
{
"name": "Baseline",
"author": "Alexis C",
"repo": "aaaaalexis/obsidian-baseline",
"screenshot": "baseline.png",
"modes": ["dark", "light"]
},
{
"name": "Azure",
"author": "Anna Grace",
"repo": "annagracedev/obsidian-azure",
"screenshot": "azure_store.png",
"modes": ["dark", "light"]
},
{
"name": "Noctis",
"author": "konnta0",
"repo": "konnta0/obsidian-noctis-theme",
"screenshot": "screenshot_512x228.png",
"modes": ["dark"]
},
{
"name": "Matrix",
"author": "fabdub",
"repo": "dubefab/Matrix",
"screenshot": "cover.png",
"modes": ["dark"]
},
{
"name": "Powered by Lancer - Retouched",
"author": "Cloopy",
"repo": "Cloopy/Powered-by-Lancer---Retouched",
"screenshot": "RetouchedLancer.jpg",
"modes": ["dark", "light"]
},
{
"name": "Osaka Jade",
"author": "sspaeti",
"repo": "sspaeti/obsidian_osaka_jade",
"screenshot": "dark.png",
"modes": ["dark", "light"]
},
{
"name": "Everforest Spruce",
"author": "vupdivup",
"repo": "vupdivup/obsidian-everforest-spruce",
"screenshot": "cover.png",
"modes": ["dark"]
},
{
"name": "Nota Limonada Light",
"author": "CrisHood",
"repo": "crishood/nota-limonada-light",
"screenshot": "thumbnail.png",
"modes": ["light"]
},
{
"name": "Nord",
"author": "Lucas Haux",
"repo": "Lucas-Haux/Nord",
"screenshot": "dark.png",
"modes": ["dark"]
},
{
"name": "Velocity",
"author": "Floodlight",
"repo": "Gonzalo-D-Sales/obsidian-velocity",
"screenshot": "assets/thumbnail.png",
"modes": ["dark", "light"]
},
{
"name": "Noctilux",
"author": "RastGame",
"repo": "RastGame/obsidian-Noctilux",
"screenshot": "Assets/preview.png",
"modes": ["dark"]
},
{
"name": "Retroma",
"author": "emarpiee",
"repo": "emarpiee/Retroma",
"screenshot": "assets/screenshots/retroma-banner.png",
"modes": ["dark", "light"]
},
{
"name": "Vesnea Vibe",
"author": "Seavalanche",
"repo": "seavalanche/vesnea-obsidian-theme",
"screenshot": "store-display.png",
"modes": ["dark", "light"]
},
{
"name": "Blood Rush",
"author": "incantatem2",
"repo": "incantatem2/Obsidian-blood-rush",
"screenshot": "images/bloodrush-thumbnail.jpg",
"modes": ["dark"]
},
{
"name": "Arzaba",
"author": "Dario Arzaba",
"repo": "DarioArzaba/Obsidian-Theme-Arzaba",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Tyrone Neon",
"author": "tyronejosee",
"repo": "tyronejosee/tyrone-neon",
"screenshot": "screenshots/main.png",
"modes": ["dark", "light"]
},
{
"name": "Poimandres Extended",
"author": "bastiangx",
"repo": "bastiangx/poimandres.obsidian",
"screenshot": "sc.png",
"modes": ["dark", "light"]
},
{
"name": "Future",
"author": "Ha'ani Whitlock",
"repo": "Bluemoondragon07/obsidian-future",
"screenshot": "cover.jpg",
"modes": ["dark", "light"]
},
{
"name": "Spy Terminal",
"author": "IchiroFukuda",
"repo": "IchiroFukuda/spy-terminal-theme",
"screenshot": "screenshots/spy-terminal-atmosphere.png",
"modes": ["dark"]
},
{
"name": "Xscriptor",
"author": "Xscriptor",
"repo": "xscriptordev/obsidian",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Museifu Basic",
"author": "NorelDev",
"repo": "account-not-relevant/museifu-basic-theme",
"screenshot": "cover.png",
"modes": ["dark", "light"]
},
{
"name": "Nightly Wolf",
"author": "jotacode",
"repo": "codejota/NightlyWolf_ObsidianTheme",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Antique Flowers",
"author": "incantatem2",
"repo": "incantatem2/Obsidian-antique-flowers",
"screenshot": "images/antique-flowers-dark-thumbnail.jpg",
"modes": ["dark", "light"]
},
{
"name": "Desserts",
"author": "incantatem2",
"repo": "incantatem2/Obsidian-desserts",
"screenshot": "images/desserts-light-thumbnail.jpg",
"modes": ["dark", "light"]
},
{
"name": "Hidden Grotto",
"author": "HotAndCold",
"screenshot": "grotto-screenshot.png",
"repo": "HotAndCold245/Hidden-Grotto",
"modes": ["dark", "light"]
},
{
"name": "Oscura",
"author": "Vinit Kumar",
"repo": "vinitkumar/oscura-obsidian",
"screenshot": "screenshot.png",
"modes": ["dark"]
},
{
"name": "Minimalist Studio",
"author": "David Troyer",
"repo": "david-troyer/obsidian-theme-minimalist-studio",
"screenshot": "thumbnail.jpg",
"modes": ["dark", "light"]
},
{
"name": "Universitario",
"author": "wulflo",
"repo": "wulflo/obsidian-3Sumaq",
"screenshot": "cover.png",
"modes": ["dark", "light"]
},
{
"name": "Dedication",
"author": "Phemelo Modiga",
"repo": "modigaphemelo/Dedication-obsidian-theme",
"screenshot": "Dark.png",
"modes": ["dark", "light"]
},
{
"name": "Monokai Ristretto",
"author": "Vinit Kumar",
"repo": "vinitkumar/monokai-ristretto-obsidian",
"screenshot": "screenshot.png",
"modes": ["dark"]
},
{
"name": "Blur",
"author": "Jawuj",
"repo": "Jawuj/Blur-Theme",
"screenshot": "Screenshot.png",
"modes": ["dark"]
},
{
"name": "True Black",
"author": "Alex Kraasch",
"repo": "kraasch/true-black",
"screenshot": "data/shot_512x288px.png",
"modes": ["dark"]
},
{
"name": "Noctis Viola",
"author": "konnta0",
"repo": "konnta0/obsidian-noctis-viola-theme",
"screenshot": "screenshot_512x288.png",
"modes": ["dark"]
},
{
"name": "Auger",
"author": "David Golding",
"repo": "davidgolding/obsidian-auger",
"screenshot": "img/hero.png",
"modes": ["dark", "light"]
},
{
"name": "HoverPopup",
"author": "COGQOD",
"repo": "COGQOD/hoverpopup-obsidian-theme",
"screenshot": "screenshots/screenshot.png",
"modes": ["dark"]
},
{
"name": "Cosmical",
"author": "M-Torrus",
"repo": "M-Torrus/obsidian-cosmical-theme",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Dedication 2",
"author": "Phemelo Modiga",
"repo": "modigaphemelo/Dedication-2-Obsidian-Theme",
"screenshot": "Dark.png",
"modes": ["dark", "light"]
},
{
"name": "Hydra Pressure",
"author": "monoooki",
"repo": "monoooki/obsidian-hydra-pressure-theme",
"screenshot": "assets/screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Neo Sploosh",
"author": "monoooki",
"repo": "monoooki/obsidian-neo-sploosh-theme",
"screenshot": "assets/screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Planetz Roller",
"author": "monoooki",
"repo": "monoooki/obsidian-planetz-roller-theme",
"screenshot": "assets/screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Night Owl",
"author": "Max Qian",
"repo": "AstroAir/obsidian-night-owl",
"screenshot": "owl-icon.png",
"modes": ["dark"]
},
{
"name": "Base16 Default Dark",
"author": "flowing-abyss",
"repo": "flowing-abyss/obsidian-base16-default-dark",
"screenshot": "assets/theme.png",
"modes": ["dark"]
},
{
"name": "Tech001",
"author": "Roman Volodin",
"repo": "volodinroman/obsidian-tech001-theme",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "NichNeumor",
"author": "Nichtigott",
"repo": "Nichtigott/NichNeumor",
"screenshot": "Picture/preview.jpg",
"modes": ["dark", "light"]
},
{
"name": "Quietus",
"author": "Max Arden",
"repo": "yuanzhixiang/obsidian-theme-quietus",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
},
{
"name": "Oxygen",
"author": "David V. Kimball",
"repo": "davidvkimball/obsidian-oxygen",
"screenshot": "theme-cover-512.png",
"modes": ["dark", "light"]
},
{
"name": "Brutalist",
"author": "DuckTapeKiller",
"repo": "DuckTapeKiller/Brutalist",
"screenshot": "screenshot.png",
"modes": ["dark", "light"]
}
]
================================================
FILE: community-plugin-deprecation.json
================================================
{
"obsidian-reading-time": ["1.0.0", "1.0.1", "1.0.2", "1.0.3"],
"templater-obsidian": ["0.5.2", "0.5.3"],
"obsidian-checklist-plugin": [
"1.0.1",
"1.0.2",
"1.0.3",
"1.0.4",
"1.0.5",
"1.0.6",
"1.0.7",
"1.0.8",
"1.0.9",
"1.0.10"
],
"obsidian-filename-heading-sync": [
"1.0.0",
"1.1.0",
"1.2.0",
"1.3.0",
"1.5.0"
],
"linked-data-vocabularies": [
"0.0.1",
"0.0.2",
"0.0.3",
"0.0.4",
"0.0.5",
"0.0.6",
"0.0.7",
"0.0.8",
"0.0.9",
"0.0.10",
"0.0.11",
"0.1.0",
"0.1.1",
"0.1.2",
"0.1.3",
"0.1.4",
"0.2.0",
"0.2.1",
"0.2.2",
"0.2.3",
"0.2.4",
"0.2.5",
"0.2.6",
"0.2.7",
"0.2.8",
"0.2.9",
"0.3.0",
"0.3.1",
"0.3.2",
"0.4.0",
"0.4.1",
"0.4.2",
"0.4.3",
"0.4.4",
"0.4.5",
"0.5.0",
"0.5.1",
"0.6.0",
"0.6.1"
],
"frontmatter-links": ["1.2.5", "1.2.6"],
"obsidian-toggle-list": ["1.2.6"]
}
================================================
FILE: community-plugin-stats.json
================================================
{
"nldates-obsidian": {
"0.3.2": 786,
"0.3.1": 2501,
"0.3.0": 151,
"0.2.6": 256,
"0.2.5": 123,
"0.2.4": 144,
"0.2.3": 113,
"downloads": 475613,
"0.3.3": 2437,
"0.4.0": 3116,
"0.4.1": 1282,
"0.4.2": 1061,
"0.4.3": 3999,
"0.5.0": 4041,
"0.5.1": 818,
"0.5.2": 31327,
"0.2.2": 26,
"0.2.1": 25,
"0.6.0": 16050,
"0.6.1": 168548,
"updated": 1701462704000,
"0.6.2": 238809
},
"hotkeysplus-obsidian": {
"0.2.4": 1534,
"0.2.3": 138,
"0.2.1": 1352,
"downloads": 95206,
"0.2.5": 21468,
"0.2.7": 70381,
"0.2.6": 333,
"updated": 1639000981000
},
"obsidian-git": {
"1.5.0": 8166,
"1.4.0": 2108,
"1.3.0": 36,
"1.2.0": 38,
"v1.2.0": 17,
"1.1.0": 48,
"downloads": 2274809,
"1.6.0": 335,
"1.6.1": 1151,
"1.7.0": 1106,
"1.8.0": 1771,
"1.8.1": 2618,
"1.9.0": 1012,
"1.9.1": 977,
"1.9.2": 6106,
"1.9.3": 4538,
"1.10.1": 3528,
"1.10.0": 1761,
"1.10.2": 2493,
"1.11.0": 1041,
"1.12.0": 783,
"1.13.0": 2454,
"1.13.1": 6898,
"1.14.2": 831,
"1.14.1": 121,
"1.14.0": 52,
"1.14.3": 2439,
"1.15.0": 3518,
"1.16.2": 2893,
"1.16.1": 199,
"1.16.0": 15,
"1.15.1": 1056,
"1.18.1": 3919,
"1.18.0": 8,
"1.17.0": 658,
"1.19.0": 5501,
"1.20.0": 7225,
"1.21.0": 5867,
"1.20.1": 1660,
"1.21.1": 3838,
"1.22.0": 6129,
"1.21.2": 889,
"1.24.0": 2398,
"1.23.0": 69,
"1.24.1": 6131,
"1.25.0": 6205,
"1.25.1": 6119,
"1.25.2": 3454,
"1.25.3": 9216,
"1.26.1": 12627,
"1.26.0": 125,
"1.26.2": 371,
"1.26.3": 1876,
"1.27.1": 3016,
"1.27.0": 16,
"1.26.4": 46,
"1.28.0": 11148,
"1.29.1": 1440,
"1.29.0": 333,
"1.29.2": 1623,
"1.30.0": 2344,
"1.31.0": 5918,
"2.0.3": 1699,
"2.0.2": 64,
"2.0.1": 36,
"2.1.0": 5475,
"2.1.1": 2931,
"2.1.2": 1066,
"2.2.1": 897,
"2.2.0": 27,
"2.3.0": 970,
"2.4.1": 4256,
"2.4.0": 252,
"2.5.0": 661,
"2.5.1": 10204,
"2.6.0": 8608,
"2.8.0": 15918,
"2.7.0": 1183,
"2.9.0": 1071,
"2.9.2": 577,
"2.9.1": 423,
"2.9.3": 1789,
"2.9.4": 5169,
"2.10.0": 5316,
"2.10.1": 5333,
"updated": 1772664768000,
"2.10.2": 8707,
"2.11.0": 1348,
"2.12.1": 10510,
"2.12.0": 258,
"2.13.0": 7268,
"2.14.0": 22169,
"2.15.0": 10989,
"2.16.0": 37647,
"2.17.0": 9784,
"2.17.1": 2211,
"2.17.2": 1483,
"2.17.4": 15182,
"2.17.3": 20,
"2.18.0": 2470,
"2.19.0": 14934,
"2.19.1": 41585,
"2.20.0": 16933,
"2.20.1": 3758,
"2.20.2": 2867,
"2.20.3": 18815,
"2.20.4": 9527,
"2.20.5": 21718,
"2.20.6": 20261,
"2.20.7": 27849,
"2.21.0": 11740,
"2.22.0": 148369,
"2.22.1": 27048,
"2.22.2": 3797,
"2.23.0": 2130,
"2.23.1": 5542,
"2.23.2": 49437,
"2.24.0": 15101,
"2.24.1": 80244,
"2.24.2": 60435,
"2.24.3": 45313,
"2.25.0": 57329,
"2.26.0": 34295,
"2.27.0": 65229,
"2.28.2": 45407,
"2.28.1": 7071,
"2.28.0": 3337,
"2.29.0": 2629,
"2.30.0": 7222,
"2.30.1": 50791,
"2.31.0": 10782,
"2.31.1": 107367,
"2.32.0": 36023,
"2.32.1": 79240,
"2.33.0": 96105,
"2.34.0": 105584,
"2.35.0": 95546,
"2.35.1": 98395,
"2.35.2": 137934,
"2.36.0": 24940,
"2.36.1": 107400,
"2.37.0": 8893,
"2.37.1": 64479,
"2.38.0": 27159
},
"url-into-selection": {
"1.1.0": 8133,
"1.0.0": 707,
"downloads": 439015,
"1.2.0": 3080,
"1.4.0": 1574,
"1.3.0": 55,
"1.6.0": 32265,
"1.5.0": 457,
"1.7.0": 277995,
"updated": 1756330969000,
"1.11.2": 4462,
"1.11.1": 51,
"1.11.0": 17,
"1.10.0": 107,
"1.9.0": 40,
"1.8.1": 108,
"1.11.3": 26997,
"1.11.4": 82967
},
"table-editor-obsidian": {
"0.8.2": 3882,
"0.8.1": 648,
"0.8.0": 1761,
"0.7.0": 5299,
"0.6.2": 1058,
"0.6.1": 107,
"0.6.0": 100,
"0.5.6": 1187,
"0.5.5": 448,
"0.5.4": 306,
"0.5.3": 110,
"0.5.2": 384,
"0.5.0": 40,
"0.4.2": 299,
"0.4.1": 36,
"0.4.0": 110,
"0.3.2": 81,
"0.2.1": 50,
"0.2.0": 24,
"downloads": 2666102,
"0.9.2": 2388,
"0.9.1": 2817,
"0.10.0": 4953,
"0.11.0": 12094,
"0.12.0": 5689,
"0.12.1": 21,
"0.12.2": 4105,
"0.12.3": 3146,
"0.12.4": 10658,
"0.12.5": 18801,
"0.13.0": 70734,
"0.14.0": 3310,
"0.15.0": 23861,
"0.17.2": 60178,
"0.17.1": 177,
"0.17.0": 4067,
"0.16.0": 6775,
"0.17.3": 234243,
"updated": 1729698278000,
"0.18.0": 43849,
"0.18.1": 310342,
"0.19.0": 27154,
"0.19.1": 308118,
"0.20.0": 78785,
"0.20.1": 17551,
"0.21.0": 403055,
"0.22.0": 135502,
"0.22.1": 857799
},
"leader-hotkeys-obsidian": {
"0.1.1": 442,
"0.0.1": 79,
"downloads": 13786,
"0.1.3": 1313,
"0.2.0": 2024,
"updated": 1674526368000,
"0.2.1": 9928
},
"recent-files-obsidian": {
"0.0.5": 223,
"0.0.4": 33,
"downloads": 963116,
"0.1.0": 1911,
"0.0.6": 93,
"1.0.0": 2005,
"1.2.0": 917,
"1.1.0": 30,
"1.3.0": 2182,
"1.3.1": 21405,
"0.0.3": 11,
"0.0.2": 12,
"0.0.1": 13,
"1.3.2": 24001,
"1.3.3": 39839,
"updated": 1767989182000,
"1.3.4": 2705,
"1.3.5": 66175,
"1.3.6": 36135,
"1.3.7": 25955,
"1.3.8": 68784,
"1.3.9": 29234,
"1.3.10": 78973,
"1.4.1": 71174,
"1.4.0": 68,
"1.4.2": 13347,
"1.5.0": 23042,
"1.6.0": 39077,
"1.7.1": 25076,
"1.7.0": 26805,
"1.7.2": 18623,
"1.7.3": 37208,
"1.7.4": 193041,
"1.7.5": 45112,
"1.7.6": 69907
},
"ledger-obsidian": {
"0.0.5": 89,
"downloads": 39245,
"0.0.2": 16,
"0.0.3": 15,
"0.0.1": 14,
"0.0.6": 41,
"0.0.7": 46,
"0.0.8": 558,
"0.0.12": 71,
"0.0.11": 35,
"0.0.10": 96,
"0.0.9": 69,
"0.1.0": 90,
"0.1.1": 230,
"0.2.2": 302,
"0.2.1": 92,
"0.2.0": 78,
"0.3.0": 529,
"0.3.1": 4748,
"updated": 1716392180000,
"0.3.2": 13889,
"0.3.3": 18237
},
"note-refactor-obsidian": {
"1.6.1": 16011,
"1.6.0": 1052,
"1.5.2": 1175,
"1.5.1": 610,
"1.5.0": 121,
"1.4.7": 203,
"1.4.6": 287,
"1.4.5": 341,
"1.4.4": 95,
"1.4.2": 32,
"1.4.1": 12,
"1.3.0": 18,
"1.2.8": 27,
"1.2.6": 12,
"1.2.5": 13,
"1.2.4": 12,
"1.2.3": 12,
"1.2.2": 23,
"1.2.1": 14,
"1.2.0": 15,
"1.1.5": 74,
"1.1.4": 12,
"1.1.3": 14,
"downloads": 316543,
"1.7.1": 117793,
"1.7.0": 231,
"1.4.3": 19,
"1.4.0": 12,
"1.2.7": 11,
"updated": 1695078360000,
"1.8.1": 14767,
"1.8.2": 163525
},
"calendar": {
"1.4.12": 3573,
"1.4.11": 1855,
"1.4.10": 406,
"1.4.9": 355,
"1.4.8": 856,
"1.4.7": 887,
"1.4.6": 1652,
"1.4.5": 184,
"1.4.4": 1596,
"1.4.3": 623,
"1.4.2": 969,
"1.4.1": 64,
"1.4.0": 189,
"1.3.1": 1846,
"1.3.0": 49,
"1.2.5": 937,
"1.2.3": 450,
"1.2.2": 117,
"1.2.1": 12,
"1.2.0": 1351,
"1.1.8": 569,
"1.1.7": 255,
"1.1.6": 27,
"1.1.5": 65,
"1.1.4": 16,
"1.1.3": 68,
"1.1.2": 33,
"1.1.0": 69,
"1.0.3": 136,
"downloads": 2442950,
"1.4.16": 1330,
"1.4.15": 153,
"1.4.14": 480,
"1.4.13": 379,
"1.4.17": 1241,
"1.4.19": 4684,
"1.4.18": 39,
"1.5.0": 1183,
"1.5.2": 1764,
"1.5.1": 288,
"1.5.3": 8740,
"1.5.4": 422,
"1.5.5": 2628,
"1.5.7": 4151,
"1.5.6": 381,
"1.5.9": 868,
"1.5.8": 191,
"1.5.10": 2372041,
"2.0.0-beta.1": 739,
"2.0.0-beta.2": 21979,
"updated": 1618944601000,
"1.2.4": 10,
"1.0.2": 28,
"1.0.1": 22
},
"mrj-text-expand": {
"0.6.5": 855,
"0.6.4": 218,
"0.6.3": 86,
"0.6.2": 328,
"0.6.1": 146,
"0.6.0": 213,
"0.5.2": 196,
"0.5.1": 132,
"0.5.0": 38,
"0.4.0": 196,
"downloads": 36017,
"0.7.1": 389,
"0.7.0": 69,
"0.7.2": 549,
"0.7.3": 105,
"0.7.4": 29,
"0.7.6": 113,
"0.7.5": 52,
"0.8.2": 566,
"0.8.0": 104,
"0.9.0": 494,
"0.9.1": 1146,
"0.9.2": 4216,
"0.9.3": 45,
"0.10.5": 141,
"0.10.4": 54,
"0.10.3": 48,
"0.10.1": 95,
"0.10.0": 30,
"0.10.8": 1570,
"0.10.7": 96,
"0.10.6": 65,
"0.10.2": 57,
"0.11.2": 6978,
"v0.11.1": 196,
"v0.11.0": 195,
"updated": 1743779139000,
"0.11.4": 12084,
"0.11.5": 4123
},
"mrj-jump-to-link": {
"0.1.0": 564,
"0.0.3": 179,
"downloads": 32560,
"0.1.1": 107,
"0.1.2": 417,
"0.1.3": 726,
"0.1.6": 210,
"0.2.0": 55,
"0.2.2": 2158,
"2.0.1": 4294,
"0.3.1": 318,
"0.3.0": 52,
"0.3.2": 982,
"0.3.3": 1441,
"0.4.2": 1266,
"0.4.3": 911,
"0.4.4": 5483,
"updated": 1764577414000,
"0.4.6": 247,
"0.4.5": 58,
"0.5.0": 157,
"0.5.1": 139,
"0.5.2": 301,
"0.5.3": 335,
"0.5.4": 2051,
"0.5.7": 109,
"0.5.6": 31,
"0.5.9": 3763,
"0.5.8": 31,
"0.5.10": 1877,
"0.5.11": 774,
"0.5.13": 1814,
"0.5.12": 61,
"0.5.15": 1636,
"0.5.14": 13
},
"obsidian-reading-time": {
"1.0.4": 10704,
"1.0.3": 184,
"1.0.2": 127,
"1.0.1": 408,
"1.0.0": 114,
"downloads": 101353,
"1.1.1": 46945,
"1.1.0": 227,
"updated": 1725068071000,
"1.1.2": 42644
},
"todoist-sync-plugin": {
"1.6.2": 318,
"1.6.1": 286,
"1.6.0": 184,
"1.5.0": 1012,
"downloads": 165731,
"1.7.0": 2490,
"1.7.1": 1344,
"1.8.0": 1092,
"1.8.1": 5189,
"1.9.0": 12417,
"1.10.0": 7277,
"updated": 1769956857000,
"1.10.1": 10707,
"1.11.0": 380,
"1.11.1": 26544,
"1.12.0": 9437,
"1.13.0": 24147,
"2.0.0": 471,
"2.0.1": 23310,
"2.1.0": 10133,
"2.2.0": 516,
"2.2.1": 10049,
"2.3.0": 3675,
"2.4.0": 5790,
"2.5.0": 1970,
"2.6.0": 6993
},
"obsidian-vimrc-support": {
"0.2.3": 354,
"0.2.2": 95,
"0.2.1": 156,
"0.2.0": 322,
"0.1.1": 78,
"0.1.0": 104,
"downloads": 139800,
"0.2.4": 1780,
"0.3.0": 668,
"0.3.1": 878,
"0.4.1": 1815,
"0.4.0": 14,
"0.4.2": 366,
"0.4.5": 1997,
"0.4.4": 120,
"0.4.3": 112,
"0.5.1": 689,
"0.5.0": 269,
"0.5.2": 3661,
"0.6.0": 613,
"0.6.1": 2637,
"0.6.2": 2461,
"0.6.3": 79,
"0.7.0": 375,
"0.7.1": 999,
"0.7.2": 3699,
"0.7.3": 4902,
"0.8.0": 6587,
"updated": 1730626633000,
"0.9.0": 42209,
"0.10.0": 3160,
"0.10.1": 11866,
"0.10.2": 46735
},
"shortcuts-extender": {
"2.0.1": 1883,
"1.0.4": 117,
"1.0.3": 233,
"1.0.2": 80,
"1.0.1": 71,
"1.0.0": 62,
"downloads": 25909,
"2.0.2": 1133,
"2.1.0": 1260,
"2.2.0": 21070,
"updated": 1647208018000
},
"mrj-crosslink-between-notes": {
"0.0.2": 1074,
"0.0.1": 378,
"downloads": 11828,
"0.0.6": 92,
"0.0.5": 54,
"0.0.7": 174,
"0.0.8": 384,
"0.0.9": 9672,
"updated": 1619862951000
},
"darlal-switcher-plus": {
"0.0.10": 2297,
"0.0.9": 253,
"0.0.8": 539,
"0.0.7": 275,
"0.0.6": 263,
"downloads": 361717,
"0.0.11": 715,
"0.0.12": 640,
"0.0.13": 1096,
"1.0.0": 224,
"1.0.1": 1295,
"1.0.3": 2552,
"1.0.2": 190,
"1.0.4": 1328,
"1.0.5": 6080,
"1.0.7": 1688,
"1.0.8": 1756,
"1.0.9": 1588,
"1.0.10": 2381,
"1.0.11": 1187,
"1.0.12": 1728,
"2.0.0": 221,
"2.0.1": 250,
"2.0.2": 1167,
"2.0.3": 2160,
"2.0.4": 1392,
"2.0.5": 2253,
"2.0.6": 1976,
"2.0.7": 5187,
"2.1.0": 2819,
"2.1.1": 2817,
"2.2.0": 1969,
"2.2.1": 2722,
"2.3.0": 1344,
"2.3.1": 2018,
"updated": 1773491923000,
"2.3.2": 2095,
"2.3.3": 1667,
"2.3.4": 2283,
"2.3.5": 5268,
"2.3.6": 2859,
"2.3.7": 5348,
"2.3.8": 3500,
"3.0.0": 4723,
"3.0.1": 3445,
"3.1.0": 2760,
"3.2.1": 2938,
"3.2.0": 89,
"3.3.0": 3957,
"3.3.1": 3391,
"3.3.2": 4450,
"3.3.3": 3242,
"3.3.4": 3973,
"3.3.5": 5833,
"3.3.6": 6385,
"3.3.7": 9341,
"3.3.8": 7057,
"3.3.9": 12891,
"4.0.0": 14513,
"4.1.0": 7651,
"4.2.0": 5112,
"4.2.1": 6432,
"4.2.2": 7086,
"4.3.0": 5737,
"4.4.0": 13026,
"4.5.0": 6058,
"4.6.0": 906,
"4.5.1": 6857,
"4.6.1": 6762,
"4.6.2": 12876,
"4.6.3": 12434,
"5.0.0": 17038,
"5.1.0": 20920,
"5.2.0": 9485,
"5.3.0": 4694,
"5.3.1": 24185,
"5.4.0": 12467,
"6.0.0": 12333,
"6.1.0": 1280
},
"obsidian-day-planner": {
"0.5.8": 210672,
"0.5.7": 1637,
"0.5.6": 355,
"0.5.5": 19,
"0.5.4": 624,
"0.5.3": 1225,
"0.5.2": 363,
"0.5.0": 29,
"0.4.0": 87,
"0.3.3": 134,
"0.3.2": 83,
"0.2.4": 69,
"0.2.3": 119,
"0.2.2": 49,
"0.2.1": 16,
"0.2.0": 15,
"0.1.8": 22,
"0.1.7": 14,
"0.1.6": 14,
"0.1.5": 27,
"0.1.0": 132,
"downloads": 760894,
"updated": 1747411128000,
"0.7.2": 2031,
"0.7.0": 445,
"0.8.1": 3771,
"0.8.0": 194,
"0.9.0": 1289,
"0.9.1": 9122,
"0.10.1": 17756,
"0.10.0": 145,
"0.11.0": 4353,
"0.12.0": 717,
"0.11.2": 314,
"0.12.1": 2439,
"0.12.2": 4151,
"0.13.1": 3719,
"0.13.0": 64,
"0.15.1": 1916,
"0.15.0": 55,
"0.15.2": 4498,
"0.15.3": 18379,
"0.16.0": 42354,
"0.17.1": 930,
"0.18.0": 15306,
"0.17.2": 827,
"0.19.2": 666,
"0.19.1": 70,
"0.19.5": 2004,
"0.19.4": 108,
"0.19.3": 327,
"0.19.6": 4901,
"0.20.0": 2246,
"0.20.2": 1679,
"0.20.1": 128,
"0.20.3": 30059,
"0.20.4": 46418,
"0.21.1": 29176,
"0.22.1": 21045,
"0.23.2": 1893,
"0.24.0": 27936,
"0.25.0": 14835,
"0.26.1": 1410,
"0.26.0": 20,
"0.26.2": 3492,
"0.27.0": 93280,
"0.26.3": 611,
"0.28.0": 128110
},
"review-obsidian": {
"1.6.0": 2603,
"1.5.1": 213,
"1.5.0": 127,
"1.4.0": 88,
"1.3.0": 257,
"1.2.1": 186,
"1.2.0": 321,
"1.1.0": 33,
"1.0.1": 14,
"downloads": 62317,
"1.6.1": 2506,
"1.6.2": 2408,
"1.6.3": 8644,
"1.6.4": 23632,
"updated": 1733855965000,
"1.6.5": 11970,
"1.6.6": 9315
},
"obsidian-hider": {
"1.0.5": 5142,
"1.0.4": 292,
"1.0.3": 225,
"1.0.2": 18,
"1.0.1": 235,
"1.0.0": 15,
"downloads": 374660,
"1.0.7": 7228,
"1.0.6": 99,
"1.1.0": 11464,
"1.0.8": 566,
"1.1.1": 25858,
"1.2.0": 349,
"1.2.1": 1340,
"1.2.2": 1485,
"1.2.3": 16169,
"updated": 1765724662000,
"1.2.4": 32270,
"1.2.5": 19066,
"1.3.0": 687,
"1.3.1": 65953,
"1.4.0": 26284,
"1.4.1": 3519,
"1.5.1": 126729,
"1.5.0": 926,
"1.6.0": 138,
"1.6.1": 28603
},
"obsidian-minimal-settings": {
"2.5.0": 11118,
"2.4.1": 1148,
"2.4.0": 35,
"2.3.0": 123,
"2.2.1": 103,
"2.2.0": 138,
"2.1.0": 79,
"1.1.0": 13,
"1.0.3": 29,
"1.0.2": 80,
"1.0.1": 16,
"1.0.0": 14,
"downloads": 1444782,
"3.0.0": 1465,
"3.2.0": 273,
"3.2.2": 8127,
"3.2.1": 24,
"4.0.0": 2673,
"4.0.1": 12672,
"4.2.0": 3206,
"4.3.0": 8550,
"4.4.0": 2949,
"5.0.4": 4635,
"5.0.3": 72,
"5.0.2": 124,
"5.0.1": 361,
"5.0.0": 721,
"5.1.5": 30123,
"5.1.4": 861,
"5.1.2": 2410,
"5.1.1": 387,
"5.1.0": 2007,
"5.2.1": 4440,
"5.2.0": 56,
"5.2.6": 1020,
"5.2.7": 4693,
"5.2.8": 17887,
"5.3.0": 4789,
"5.3.2": 52212,
"5.3.1": 18,
"6.0.0": 1285,
"6.0.2": 1324,
"6.0.5": 18188,
"6.0.4": 308,
"6.0.3": 522,
"6.1.0": 40401,
"updated": 1765724624000,
"6.1.1": 28254,
"6.2.0": 36926,
"6.3.0": 674,
"6.3.1": 88085,
"6.3.2": 39112,
"7.2.1": 11649,
"7.2.4": 8594,
"7.2.3": 67,
"7.3.0": 57782,
"7.2.2": 46114,
"7.3.1": 115284,
"7.5.0": 94391,
"8.0.2": 86545,
"8.0.0": 258,
"8.1.1": 480798,
"8.1.0": 135,
"8.2.0": 435,
"8.2.1": 108000
},
"obsidian-discordrpc": {
"1.3.2": 341,
"1.2.0": 77,
"1.1.0": 30,
"1.0.2": 40,
"1.0.1": 42,
"1.0.0": 24,
"downloads": 31277,
"1.3.4": 33,
"1.3.3": 29,
"1.3.6": 800,
"1.3.5": 39,
"1.5.0": 7759,
"1.4.0": 42,
"updated": 1692003751000,
"1.5.1": 22021
},
"templater-obsidian": {
"0.5.7": 7719,
"0.5.6": 746,
"0.5.5": 221,
"0.5.4": 1398,
"0.5.3": 148,
"0.5.2": 14,
"0.5.1": 469,
"0.5.0": 441,
"0.4.4": 497,
"0.4.3": 106,
"0.4.2": 316,
"0.4.1": 30,
"0.4.0": 30,
"0.3.4": 371,
"0.3.3": 27,
"0.3.2": 68,
"0.3.1": 16,
"0.3.0": 22,
"0.2.1": 36,
"0.2.0": 30,
"0.1.1": 16,
"0.1.0": 23,
"downloads": 3871355,
"1.1.0": 865,
"1.0.0": 262,
"1.5.0": 607,
"1.4.0": 619,
"1.3.0": 591,
"1.2.2": 114,
"1.2.1": 550,
"1.2.0": 49,
"1.5.4": 1662,
"1.5.3": 153,
"1.5.2": 307,
"1.5.1": 724,
"1.5.5": 2927,
"1.6.0": 4542,
"1.7.0": 498,
"1.7.1": 5471,
"1.8.1": 23782,
"1.8.0": 119,
"1.9.2": 1696,
"1.9.1": 31,
"1.9.0": 40,
"1.9.4": 970,
"1.9.3": 16,
"1.9.9": 36128,
"1.9.8": 1752,
"1.9.7": 21,
"1.9.6": 153,
"1.9.5": 690,
"1.9.10": 1403,
"1.10.0": 23359,
"1.9.11": 8048,
"1.11.1": 772,
"1.11.0": 35,
"1.11.3": 11823,
"1.12.0": 90984,
"1.13.0": 7913,
"1.14.0": 2021,
"1.14.1": 12717,
"1.14.2": 3500,
"1.14.3": 49900,
"1.15.1": 569,
"1.15.0": 394,
"1.14.4": 437,
"1.15.2": 7161,
"1.15.3": 14736,
"1.16.0": 287871,
"updated": 1769699522000,
"1.16.1": 9085,
"1.16.2": 4241,
"1.16.3": 22268,
"1.16.4": 53984,
"1.16.5": 4884,
"1.17.0": 15239,
"1.18.0": 13949,
"1.18.1": 34546,
"1.18.2": 4127,
"1.18.3": 57572,
"2.0.0": 28677,
"2.1.0": 28648,
"2.1.1": 14017,
"1.18.4": 18569,
"2.1.2": 25535,
"1.8.4": 272,
"2.1.3": 26155,
"2.1.4": 8870,
"2.2.1": 51341,
"2.2.0": 90,
"2.2.2": 14343,
"2.2.3": 139377,
"2.2.4": 13228,
"2.3.0": 5914,
"2.3.1": 42157,
"2.3.2": 23802,
"2.3.3": 136354,
"2.4.1": 79449,
"2.4.0": 135,
"2.4.2": 47138,
"2.6.0": 7949,
"2.7.1": 73265,
"2.7.0": 405,
"2.7.2": 27165,
"2.7.3": 29740,
"2.8.0": 12398,
"2.8.1": 9100,
"2.8.2": 31666,
"2.9.1": 224844,
"2.9.0": 38478,
"2.8.3": 23338,
"2.9.2": 55754,
"2.9.3": 87402,
"2.10.0": 92542,
"2.11.0": 7517,
"2.11.1": 238889,
"2.11.3": 47568,
"2.11.2": 328,
"2.12.0": 20677,
"2.12.1": 101405,
"2.13.0": 39205,
"2.13.1": 87118,
"2.14.0": 34010,
"2.14.1": 182550,
"2.15.0": 142,
"2.15.1": 896,
"2.15.2": 52992,
"2.16.0": 75295,
"2.16.1": 28477,
"2.16.2": 231508,
"2.16.4": 162890,
"2.16.3": 70,
"2.17.0": 52815,
"2.17.1": 9685,
"2.18.0": 14490,
"2.18.1": 223090
},
"convert-url-to-iframe": {
"0.1.0": 5370,
"downloads": 99606,
"0.2.0": 5352,
"0.4.0": 7509,
"0.3.0": 366,
"0.5.0": 81009,
"updated": 1651923369000
},
"searchpp": {
"0.0.1": 6900,
"downloads": 6900,
"updated": 1604909212000
},
"better-word-count": {
"0.3.3": 1268,
"0.3.2": 13,
"0.3.1": 14,
"0.3.0": 40,
"0.2.1": 32,
"downloads": 559358,
"0.5.0": 1478,
"0.4.1": 24,
"0.4.0": 13,
"0.6.0": 3324,
"0.6.1": 6182,
"0.6.2": 2396,
"0.7.0": 577,
"0.7.6": 1421,
"0.7.4": 78,
"0.7.3": 248,
"0.7.2": 150,
"0.7.7": 30750,
"0.7.1": 14,
"0.2.0": 9,
"0.8.1": 52060,
"0.8.0": 202,
"0.7.8": 188,
"updated": 1706020459000,
"0.9.0": 254,
"0.9.1": 20918,
"0.9.2": 910,
"0.9.3": 2088,
"0.9.4": 25836,
"0.9.6": 44006,
"0.9.5": 60,
"0.10.0": 74262,
"0.10.1": 290543
},
"workbench-obsidian": {
"1.6.1": 20407,
"1.6.0": 167,
"1.5.0": 425,
"1.4.0": 256,
"1.3.1": 118,
"1.3.0": 149,
"1.2.0": 70,
"1.0.1": 36,
"1.0.0": 63,
"downloads": 28069,
"updated": 1711465621000,
"1.6.4": 6287,
"1.6.3": 42,
"1.6.2": 49
},
"obsidian-latex-environments": {
"0.2.1": 5553,
"0.2.0": 57,
"0.1.3": 52,
"0.1.2": 206,
"0.1.1": 100,
"0.1.0": 88,
"downloads": 27903,
"0.0.5": 38,
"v0.0.4": 43,
"0.3.0": 7024,
"updated": 1690825574000,
"0.4.0": 140,
"0.4.1": 919,
"0.4.2": 13683
},
"obsidian-rtl": {
"0.0.4": 147,
"0.0.3": 57,
"0.0.2": 84,
"0.0.1": 43,
"downloads": 48744,
"0.0.5": 494,
"0.0.6": 362,
"0.0.8": 270,
"0.0.7": 101,
"0.0.9": 741,
"0.1.0": 397,
"0.2.0": 490,
"0.2.2": 1503,
"0.2.1": 77,
"0.3.0": 3530,
"updated": 1743337921000,
"1.0.0": 714,
"1.1.0": 1324,
"1.1.1": 9465,
"1.1.2": 4538,
"1.2.0": 1541,
"1.2.1": 3946,
"1.2.2": 3078,
"2.0.0": 6999,
"2.0.1": 8843
},
"markdown-prettifier": {
"0.0.8": 15859,
"0.0.7": 61,
"0.0.6": 542,
"0.0.5": 56,
"0.0.4": 835,
"0.0.3": 605,
"0.0.2": 306,
"0.0.1": 170,
"downloads": 75876,
"0.1.0": 2213,
"0.0.9": 229,
"0.1.1": 3461,
"0.1.3": 51040,
"0.1.2": 499,
"updated": 1637271937000
},
"css-snippets": {
"0.1.2": 21877,
"0.1.0": 191,
"downloads": 22068,
"updated": 1605230914000
},
"obsidian-link-indexer": {
"1.0.0": 6730,
"0.1.1": 76,
"0.1.0": 80,
"0.0.7": 109,
"0.0.6": 29,
"0.0.5": 119,
"0.0.3": 34,
"0.0.2": 92,
"downloads": 7298,
"0.0.4": 29,
"updated": 1607203333000
},
"macOS-keyboard-nav-obsidian": {
"1.1.2": 7368,
"1.1.1": 40,
"1.1.0": 80,
"1.0.0": 10,
"downloads": 7498,
"updated": 1605840001000
},
"extract-highlights-plugin": {
"0.0.16": 838,
"0.0.15": 526,
"0.0.14": 288,
"0.0.13": 323,
"0.0.12": 80,
"0.0.11": 66,
"0.0.10": 69,
"0.0.9": 213,
"0.0.8": 245,
"0.0.7": 40,
"0.0.6": 15,
"0.0.5": 57,
"0.0.4": 20,
"0.0.3": 36,
"0.0.2": 11,
"0.0.1": 12,
"downloads": 22314,
"0.0.17": 715,
"0.0.18": 18760,
"updated": 1614247342000
},
"find-unlinked-files": {
"0.2.6": 616,
"0.2.5": 551,
"0.2.4": 487,
"0.2.3": 405,
"0.2.2": 10,
"0.2.1": 145,
"0.2.0": 323,
"0.1.0": 70,
"downloads": 202679,
"0.3.0": 1605,
"1.0.1": 2590,
"1.0.0": 98,
"1.1.0": 510,
"1.2.0": 2680,
"1.2.1": 7402,
"1.3.0": 1467,
"1.3.1": 11866,
"1.4.0": 813,
"1.5.0": 5970,
"1.5.1": 2849,
"1.5.2": 8097,
"1.6.0": 2778,
"1.6.1": 7869,
"1.7.0": 653,
"1.8.0": 21685,
"updated": 1723496256000,
"1.8.1": 3409,
"1.9.0": 19289,
"1.9.1": 26119,
"1.10.0": 21284,
"1.10.1": 51039
},
"wikilinks-to-mdlinks-obsidian": {
"0.0.12": 19406,
"0.0.9": 102,
"0.0.8": 136,
"0.0.7": 90,
"0.0.6": 77,
"0.0.5": 92,
"0.0.4": 79,
"0.0.3": 89,
"0.0.1": 68,
"downloads": 20209,
"0.0.2": 70,
"updated": 1605733486000
},
"smart-random-note": {
"0.1.3": 3133,
"0.1.2": 157,
"0.1.1": 165,
"0.0.5": 74,
"downloads": 76407,
"0.2.1": 69217,
"0.2.2": 3497,
"0.2.0": 86,
"0.1.0": 40,
"0.0.4": 38,
"updated": 1625751354000
},
"cycle-through-panes": {
"0.0.5": 1499,
"0.0.4": 515,
"0.0.3": 105,
"0.0.2": 605,
"0.0.1": 64,
"downloads": 79127,
"0.0.6": 6987,
"0.0.8": 2672,
"0.0.7": 22,
"0.0.9": 2504,
"0.0.12": 11392,
"0.0.11": 256,
"0.0.10": 882,
"0.1.0": 11154,
"updated": 1692641864000,
"0.1.1": 3131,
"1.0.0": 172,
"1.0.1": 461,
"1.1.0": 681,
"1.1.1": 2000,
"1.2.0": 869,
"1.2.1": 5799,
"1.3.0": 1667,
"1.4.0": 25690
},
"music-code-blocks": {
"1.0.3": 1289,
"1.0.2": 168,
"1.0.1": 83,
"1.0.0": 24,
"downloads": 26693,
"1.0.5": 1356,
"1.0.4": 157,
"1.0.6": 86,
"1.0.7": 1413,
"1.2.0": 2153,
"1.1.0": 60,
"updated": 1770426500000,
"1.3.0": 816,
"1.4.0": 9370,
"1.5.0": 4901,
"1.5.1": 173,
"1.6.0": 3393,
"1.6.1": 1251
},
"cm-typewriter-scroll-obsidian": {
"0.1.0": 2487,
"0.0.2": 794,
"0.0.1": 101,
"downloads": 101930,
"0.1.1": 6388,
"0.2.1": 5697,
"0.2.0": 199,
"0.2.2": 86264,
"updated": 1649908247000
},
"obsidian-youglish-plugin": {
"0.0.2": 880,
"0.0.1": 67,
"downloads": 12623,
"0.0.3": 11676,
"updated": 1643018003000
},
"obsidian-dangling-links": {
"0.0.2": 1609,
"downloads": 17660,
"0.3.0": 15820,
"0.0.1": 231,
"updated": 1621364776000
},
"dangerzone-writing-plugin": {
"0.0.10": 2670,
"0.0.9": 204,
"0.0.8": 32,
"0.0.7": 46,
"0.0.6": 31,
"0.0.5": 32,
"0.0.4": 62,
"0.0.3": 28,
"0.0.2": 29,
"0.0.1": 89,
"downloads": 12531,
"0.0.11": 9308,
"updated": 1664468241000
},
"maximise-active-pane-obsidian": {
"0.0.2": 631,
"0.0.1": 498,
"downloads": 15470,
"0.0.3": 14341,
"updated": 1611874137000
},
"obsidian-juliandate": {
"1.0.3": 266,
"downloads": 4301,
"1.0.5": 3978,
"1.0.4": 18,
"1.0.2": 12,
"1.0.1": 13,
"v1.0.0": 14,
"updated": 1626876571000
},
"obsidian-emoji-toolbar": {
"0.1.1": 2209,
"0.1.0": 251,
"downloads": 447853,
"0.2.0": 5211,
"0.2.1": 6665,
"0.2.2": 25300,
"0.3.0": 2369,
"0.3.1": 44443,
"0.3.2": 42662,
"updated": 1763415182000,
"0.4.0": 35234,
"0.4.1": 235914,
"1.0.0": 47595
},
"obsidian-fullscreen-plugin": {
"0.1.0": 3317,
"downloads": 41876,
"0.1.1": 5363,
"0.1.2": 33196,
"updated": 1641645712000
},
"footlinks": {
"0.1.7": 11710,
"0.1.5": 117,
"0.0.1": 52,
"downloads": 11879,
"updated": 1607234058000
},
"obsidian-mind-map": {
"1.1.0": 784492,
"1.0.3": 469,
"1.0.2": 214,
"1.0.1": 221,
"1.0.0": 86,
"0.1.2": 512,
"downloads": 786033,
"0.1.1": 19,
"0.1.0": 20,
"updated": 1607877184000
},
"flashcards-obsidian": {
"1.0.7": 490,
"1.0.5": 195,
"1.0.4": 21,
"1.0.3": 8,
"1.0.2": 139,
"1.0.1": 7,
"0.4.3": 44,
"0.4.2": 7,
"0.4.1": 12,
"0.3.1": 63,
"0.2.3": 107,
"downloads": 64529,
"1.1.2": 204,
"1.1.0": 8,
"1.1.4": 268,
"1.1.6": 170,
"1.1.5": 8,
"1.1.7": 177,
"1.1.8": 217,
"1.1.9": 1105,
"1.2.1": 1194,
"1.2.0": 15,
"1.5.0": 127,
"1.4.0": 12,
"1.3.0": 9,
"1.5.2": 3080,
"1.1.1": 7,
"1.0.0": 6,
"1.5.3": 1549,
"1.5.5": 123,
"1.5.4": 53,
"1.6.2": 1005,
"1.6.1": 78,
"1.6.0": 317,
"1.5.6": 80,
"1.6.3": 7684,
"1.6.4": 1087,
"1.6.5": 44853,
"updated": 1666356036000
},
"completed-area": {
"0.2.0": 8159,
"0.1.4": 162,
"0.1.2": 172,
"downloads": 8493,
"updated": 1607576990000
},
"obsidian-citation-plugin": {
"0.4.1": 3269,
"0.4.0": 166,
"0.3.4": 441,
"0.3.3": 407,
"0.3.2": 107,
"0.3.1": 519,
"0.3.0": 319,
"0.2.1": 272,
"0.2.0": 35,
"0.1.3": 75,
"0.1.2": 14,
"downloads": 215096,
"0.4.2": 3047,
"0.4.3": 8496,
"0.4.4": 49186,
"0.4.5": 148743,
"updated": 1664033158000
},
"obsidian-to-anki-plugin": {
"3.4.1": 36443,
"3.4.0": 194,
"3.3.5": 53,
"3.3.4": 40,
"3.3.3": 97,
"3.3.2": 42,
"3.3.1": 54,
"3.3.0": 60,
"3.2.0": 38,
"3.1.0": 109,
"3.0.2": 70,
"3.0.1": 17,
"3.0.0": 25,
"downloads": 124108,
"updated": 1706065816000,
"3.4.2": 24112,
"3.5.0": 3197,
"3.6.0": 59557
},
"obsidian-rollover-daily-todos": {
"1.0.0": 2657,
"downloads": 136484,
"1.0.1": 2828,
"1.0.2": 3764,
"1.0.3": 1067,
"1.0.5": 18233,
"1.0.4": 40,
"1.1.5": 6098,
"1.1.4": 5095,
"1.1.3": 6887,
"1.1.2": 453,
"1.1.1": 1868,
"1.1.0": 1292,
"updated": 1748365005000,
"1.1.6": 10168,
"1.1.7": 14470,
"1.1.8": 37377,
"1.2.0": 24187
},
"obsidian-reveal-active-file": {
"1.0.0": 2004,
"downloads": 26028,
"1.0.1": 2107,
"1.0.2": 12770,
"updated": 1726610464000,
"1.0.3": 9147
},
"obsidian-export-to-tex": {
"0.0.2": 199,
"downloads": 9257,
"0.0.3": 89,
"0.1.0": 38,
"0.2.1": 217,
"0.2.0": 26,
"0.1.1": 38,
"0.2.2": 1023,
"0.3.0": 328,
"0.4.0": 386,
"0.4.2": 6913,
"updated": 1656518989000
},
"obsidian-latex": {
"0.1.0": 959,
"downloads": 52723,
"0.2.0": 2910,
"0.3.0": 6073,
"updated": 1673589222000,
"0.4.0": 776,
"0.4.1": 42005
},
"obsidian-apple-reminders-plugin": {
"0.2.1": 1625,
"0.2.0": 28,
"downloads": 13619,
"2.0.0": 11966,
"updated": 1663059570000
},
"obsidian-contextual-typography": {
"1.0.0": 511,
"downloads": 106688,
"2.0.0": 1191,
"2.1.1": 1355,
"2.1.0": 140,
"2.2.0": 819,
"2.2.1": 1066,
"2.2.4": 37235,
"2.2.3": 417,
"2.2.2": 283,
"updated": 1683425664000,
"2.2.5": 63671
},
"neo4j-graph-view": {
"0.2.5": 114,
"0.2.4": 32,
"0.2.3": 7,
"0.2.2": 80,
"0.2.1": 148,
"0.2.0": 41,
"0.1.3": 90,
"0.1.2": 79,
"0.1.1": 5,
"0.1.0": 41,
"0.0.1": 464,
"downloads": 11262,
"0.2.6": 10161,
"updated": 1618842101000
},
"snippets": {
"0.0.2": 457,
"downloads": 6236,
"0.0.1": 31,
"0.0.4": 5748,
"updated": 1624353830000
},
"obsidian-temple": {
"0.4.0": 5528,
"0.3.1": 43,
"0.3.0": 31,
"0.1.1": 40,
"0.1.0": 22,
"downloads": 5664,
"updated": 1609684050000
},
"obsidian-relative-line-numbers": {
"1.0.3": 2553,
"1.0.2": 17,
"downloads": 100846,
"1.0.1": 45655,
"2.0.1": 13335,
"updated": 1703651276000,
"3.0.0": 37375,
"3.1.0": 1911
},
"obsidian-charts": {
"0.0.2": 895,
"0.0.1": 12,
"downloads": 280085,
"1.1.0": 826,
"1.0.0": 48,
"1.2.1": 601,
"1.2.0": 11,
"1.2.2": 91,
"2.0.0": 191,
"2.0.1": 488,
"2.1.0": 42,
"2.1.1": 346,
"2.2.2": 539,
"2.2.1": 22,
"2.2.0": 13,
"2.3.0": 1187,
"2.4.0": 706,
"2.5.1": 1267,
"2.5.0": 11,
"2.5.2": 3066,
"3.0.1": 1602,
"3.0.0": 10,
"3.0.2": 1194,
"3.0.4": 964,
"3.1.1": 6457,
"3.1.0": 225,
"3.0.3": 7,
"3.2.0": 223,
"3.2.2": 779,
"3.2.3": 2765,
"3.3.2": 725,
"3.3.1": 28,
"3.3.0": 20,
"3.4.3": 293,
"3.4.2": 12,
"3.4.1": 13,
"3.4.0": 161,
"3.4.5": 875,
"3.4.4": 26,
"3.2.1": 8,
"3.4.6": 714,
"3.5.0": 406,
"3.4.7": 32,
"3.5.1": 1196,
"3.6.0": 269,
"3.6.1": 10890,
"3.6.2": 5907,
"3.6.3": 12651,
"3.7.0": 1365,
"3.7.1": 35745,
"updated": 1706264023000,
"3.7.2": 19273,
"3.8.0": 4616,
"3.8.2": 22945,
"3.9.0": 137327
},
"discordian-plugin": {
"0.5.0": 206,
"0.4.1": 112,
"0.4.0": 113,
"downloads": 16921,
"0.6.0": 410,
"0.7.0": 445,
"0.7.1": 15586,
"0.3.0": 25,
"0.1.0": 24,
"updated": 1615375320000
},
"obsidian-autocomplete-plugin": {
"0.5.8": 809,
"0.5.7": 44,
"downloads": 36367,
"0.5.10": 42,
"0.6.0": 235,
"0.6.2": 464,
"0.6.1": 102,
"0.7.2": 83,
"0.7.1": 42,
"0.7.0": 29,
"0.7.3": 335,
"0.7.4": 1724,
"0.8.0.rc3": 44,
"0.8.0.rc2": 98,
"0.8.0.rc1": 51,
"0.8.0": 32223,
"0.5.9": 8,
"0.5.6": 8,
"0.5.5": 8,
"0.5.4": 8,
"0.5.1": 10,
"updated": 1623513095000
},
"completed-task-display": {
"1.0.2": 1673,
"1.0.0": 31,
"downloads": 54702,
"1.0.1": 156,
"1.0.3": 2782,
"updated": 1765909968000,
"1.0.4": 44018,
"1.0.5": 2034,
"1.0.7": 372,
"1.0.6": 29,
"1.0.8": 385,
"v1.0.9": 6,
"1.0.9": 433,
"1.0.10": 722,
"1.0.11": 2061
},
"obsidian-extract-pdf-highlights": {
"0.0.3": 1200,
"0.0.2": 267,
"downloads": 106608,
"0.0.1": 38,
"0.0.4": 105103,
"updated": 1613559524000
},
"youhavebeenstaring-plugin": {
"1.2.1": 316,
"1.2.0": 32,
"1.1.0": 36,
"1.0.3": 33,
"1.0.2": 23,
"downloads": 5734,
"1.2.2": 5250,
"1.0.1": 24,
"1.0.0": 20,
"updated": 1621760660000
},
"obsidian-imgur-plugin": {
"1.0.0": 409,
"downloads": 59220,
"1.1.0": 396,
"1.2.0": 398,
"2.0.0": 778,
"2.1.0": 1931,
"2.1.1": 2384,
"2.2.0": 1483,
"2.2.1": 11598,
"updated": 1730591262000,
"2.3.0": 1288,
"2.4.0": 4908,
"2.5.0": 3683,
"2.5.1": 1513,
"2.5.2": 7640,
"2.6.0": 4332,
"2.6.1": 899,
"2.6.2": 2230,
"2.6.3": 13350
},
"obsidian-checklist-plugin": {
"1.0.12": 310,
"1.0.11": 18,
"1.0.10": 397,
"1.0.9": 1075,
"1.0.8": 77,
"1.0.7": 11,
"1.0.6": 378,
"1.0.5": 224,
"1.0.4": 94,
"1.0.3": 51,
"1.0.2": 266,
"downloads": 435709,
"1.0.13": 2473,
"1.1.0": 1968,
"1.2.1": 5453,
"1.2.2": 10129,
"1.2.3": 22236,
"1.0.1": 8,
"1.0.0": 8,
"2.0.2": 37165,
"2.0.1": 4060,
"2.0.0": 34,
"2.0.3": 3368,
"2.0.4": 964,
"2.0.5": 286,
"2.1.0": 2059,
"2.2.2": 695,
"2.2.1": 29,
"2.2.0": 27,
"2.2.3": 2214,
"2.2.4": 595,
"2.2.5": 5266,
"2.2.7": 6531,
"2.2.6": 74,
"2.2.8": 16914,
"2.2.10": 26452,
"2.2.9": 147,
"updated": 1736622478000,
"2.2.11": 993,
"2.2.12": 80930,
"2.2.13": 113372,
"2.2.14": 88358
},
"search-on-internet": {
"0.2.0": 238,
"0.1.0": 104,
"downloads": 29491,
"0.3.0": 315,
"0.3.1": 320,
"0.4.1": 2659,
"0.4.0": 91,
"0.5.0": 25764,
"updated": 1624466128000
},
"obsidian-file-path-to-uri": {
"1.0.0": 293,
"downloads": 22656,
"1.1.0": 590,
"1.2.0": 820,
"1.3.0": 3753,
"1.4.0": 1787,
"1.4.1": 15413,
"updated": 1662293177000
},
"page-heading-from-links": {
"0.1.0": 1634,
"downloads": 6858,
"0.2.0": 5224,
"updated": 1651467040000
},
"obsidian-icons-plugin": {
"0.2.2": 540,
"0.2.1": 53,
"0.2.0": 43,
"downloads": 104095,
"0.3.0": 103459,
"updated": 1613557429000
},
"folder-note-plugin": {
"0.2.2": 36,
"0.1.0": 10,
"downloads": 134178,
"0.2.5": 45,
"0.2.4": 34,
"0.2.3": 25,
"0.3.1": 126,
"0.3.0": 39,
"0.3.2": 92,
"0.3.3": 56,
"0.4.1": 43,
"0.4.0": 28,
"0.5.1": 47,
"0.5.0": 23,
"0.5.2": 232,
"0.6.0": 276,
"0.6.2": 68,
"0.6.1": 46,
"0.6.4": 252,
"0.6.3": 65,
"0.7.1": 102,
"0.7.0": 69,
"0.6.6": 122,
"0.6.5": 62,
"0.7.3": 132189,
"0.7.2": 82,
"0.2.0": 9,
"updated": 1613803750000
},
"vantage-obsidian": {
"1.0.2": 325,
"downloads": 29371,
"1.1.0": 743,
"1.2.1": 1350,
"1.2.0": 83,
"1.3.0": 986,
"1.4.0": 4603,
"v1.0.1": 99,
"1.0.0": 76,
"1.4.1": 6057,
"1.4.2": 15049,
"updated": 1665590102000
},
"obsidian-sort-and-permute-lines": {
"0.0.1": 385,
"downloads": 52855,
"0.1.0": 211,
"0.1.1": 563,
"0.1.2": 272,
"0.2.0": 576,
"0.2.1": 1268,
"0.2.2": 552,
"0.3.0": 1088,
"0.3.1": 1133,
"0.4.0": 1491,
"0.4.1": 1029,
"0.5.0": 232,
"0.5.1": 4631,
"updated": 1675799958000,
"0.6.0": 1005,
"0.6.1": 3177,
"0.7.0": 35242
},
"obsidian-min3ditorhotkeys-plugin": {
"1.0.1": 4716,
"downloads": 4738,
"1.0.0": 22,
"updated": 1611421761000
},
"obsidian-jsonifier": {
"1.0.1": 6288,
"downloads": 6288,
"updated": 1611598125000
},
"things-logbook": {
"0.1.5": 54,
"downloads": 10505,
"0.1.6": 235,
"0.1.7": 41,
"0.1.8": 31,
"0.1.9": 198,
"0.1.12": 160,
"0.1.11": 47,
"0.1.10": 42,
"0.1.13": 188,
"0.1.14": 980,
"0.1.4": 6,
"0.1.3": 6,
"0.1.2": 6,
"0.1.1": 6,
"0.1.0": 6,
"0.1.15": 36,
"0.1.16": 3399,
"updated": 1698243621000,
"0.2.0": 5064
},
"obsidian-shortcuts-for-starred-files": {
"0.0.2": 135,
"0.0.1": 66,
"downloads": 10091,
"0.0.3": 131,
"0.0.4": 2071,
"0.1.0": 108,
"updated": 1712156301000,
"1.0.0": 1522,
"1.1.0": 3455,
"1.1.1": 2603
},
"obsidian-filename-heading-sync": {
"1.4.0": 151,
"1.3.0": 1028,
"1.1.0": 1007,
"1.0.0": 203,
"downloads": 64568,
"1.4.2": 1127,
"1.4.1": 159,
"1.4.3": 1233,
"1.5.0": 173,
"1.5.1": 1698,
"1.5.2": 1626,
"1.5.3": 2520,
"1.6.0": 2629,
"1.6.1": 2225,
"1.7.0": 6759,
"updated": 1772496167000,
"1.8.0": 4741,
"1.9.0": 10068,
"1.9.1": 8033,
"1.9.2": 2074,
"1.9.3": 5381,
"1.10.0": 1133,
"1.10.1": 4121,
"1.10.2": 173,
"1.10.3": 5440,
"1.11.0": 866
},
"obsidian-orthography": {
"1.0.2": 287,
"v1.0.0": 16,
"downloads": 12308,
"1.0.3": 1548,
"v1.0.1": 12,
"2.0.1": 249,
"2.0.2": 179,
"2.0.3": 245,
"2.0.0": 22,
"2.0.4": 6697,
"updated": 1729699776000,
"3.0.1": 833,
"3.0.0": 13,
"3.1.0": 2207
},
"obsidian-query-language": {
"1.3.0": 89,
"1.2.0": 59,
"1.1.0": 63,
"downloads": 15324,
"1.4.0": 251,
"1.5.0": 315,
"2.0.0": 4148,
"1.0.1": 48,
"1.0.0": 43,
"0.0.1": 119,
"2.1.0": 257,
"2.1.1": 9932,
"updated": 1663585780000
},
"obsidian-markdown-formatting-assistant-plugin": {
"0.1.2": 246,
"downloads": 115848,
"0.2.0": 561,
"0.2.2": 857,
"0.2.1": 38,
"0.1.0": 65,
"0.3.0": 2165,
"0.3.2": 15826,
"0.3.1": 56,
"0.1.1": 36,
"0.4.0": 8769,
"0.4.1": 87229,
"updated": 1668510962000
},
"obsidian-journey-plugin": {
"0.0.4": 334,
"0.0.3": 187,
"downloads": 21571,
"0.0.5": 450,
"0.0.6": 229,
"0.0.7": 20371,
"updated": 1613567881000
},
"tag-wrangler": {
"0.2.2": 248,
"downloads": 907934,
"0.2.3": 204,
"0.2.4": 304,
"0.2.5": 315,
"0.2.6": 572,
"0.3.1": 1070,
"0.3.2": 441,
"0.4.0": 486,
"0.4.1": 2753,
"0.4.3": 273,
"0.4.2": 14,
"0.4.4": 6266,
"0.4.5": 326,
"0.4.6": 21928,
"0.2.1": 5,
"0.2.0": 5,
"0.1.2": 5,
"0.1.0": 5,
"0.4.7": 5049,
"0.5.0": 7286,
"0.5.1": 9748,
"0.5.2": 27172,
"0.5.3": 33492,
"0.5.4": 15285,
"0.5.5": 30124,
"updated": 1741734643000,
"0.5.6": 45072,
"0.5.7": 10937,
"0.5.8": 42374,
"0.5.9": 4319,
"0.5.10": 2072,
"0.5.11": 56290,
"0.5.12": 21756,
"0.5.13": 20251,
"0.6.1": 258923,
"0.6.0": 82,
"0.6.4": 278842,
"0.6.3": 438,
"0.6.2": 3202
},
"better-pdf-plugin": {
"1.1.2": 220,
"1.1.0": 40,
"downloads": 65637,
"1.2.0": 7540,
"1.1.1": 38,
"1.3.0": 7900,
"1.4.0": 49899,
"updated": 1655674173000
},
"dataview": {
"0.1.1": 56,
"0.1.0": 14,
"downloads": 3826054,
"0.1.2": 86,
"0.1.4": 151,
"0.1.5": 354,
"0.1.7": 486,
"0.1.6": 13,
"0.1.8": 163,
"0.1.10": 786,
"0.1.9": 41,
"0.2.0": 121,
"0.2.2": 1211,
"0.2.1": 8,
"0.2.4": 300,
"0.2.3": 36,
"0.2.7": 43,
"0.2.6": 493,
"0.2.5": 96,
"0.2.8": 280,
"0.2.9": 1895,
"0.2.10": 702,
"0.2.12": 376,
"0.2.11": 123,
"0.2.14": 1163,
"0.2.13": 95,
"0.2.17": 2403,
"0.2.16": 26,
"0.2.15": 268,
"0.3.3": 522,
"0.3.2": 429,
"0.3.1": 13,
"0.3.0": 133,
"0.3.5": 2240,
"0.3.4": 65,
"0.3.6": 509,
"0.3.8": 916,
"0.3.7": 75,
"0.3.9": 2014,
"0.3.11": 599,
"0.3.10": 12,
"0.3.12": 2607,
"0.3.13": 6373,
"0.4.1": 4463,
"0.4.0": 419,
"0.4.2": 3216,
"0.4.3": 5065,
"0.4.4": 5831,
"0.4.5": 7018,
"0.4.8": 1652,
"0.4.7": 635,
"0.4.6": 81,
"0.4.10": 7233,
"0.4.11": 3229,
"0.4.12-hotfix1": 5998,
"build/main.js": 17,
"0.4.17": 1108,
"0.4.16": 2100,
"0.4.15": 149,
"0.4.14": 1221,
"0.4.13": 560,
"0.4.19": 7872,
"0.4.18": 1039,
"0.4.20": 9064,
"0.4.21": 27280,
"0.4.22": 21371,
"0.4.26": 68093,
"0.4.25": 299,
"0.4.24": 156,
"0.4.23": 58,
"0.5.0": 83,
"0.5.1": 29,
"0.5.2": 110,
"0.5.4": 101,
"0.5.3": 17,
"0.5.6": 48,
"0.5.9": 227,
"0.5.8": 17,
"0.5.7": 10,
"0.5.13": 59,
"0.5.12": 17,
"0.5.11": 10,
"0.5.10": 16,
"0.5.14": 55,
"0.5.15": 110,
"0.5.16": 114,
"0.5.17": 159,
"0.5.18": 211,
"0.5.19": 114,
"0.5.20": 592,
"0.5.23": 1813,
"0.5.22": 1421,
"0.5.26": 3372,
"0.5.25": 83,
"0.5.24": 96,
"0.5.29": 1627,
"0.5.28": 268,
"0.5.27": 35,
"0.5.31": 3840,
"0.5.30": 118,
"0.5.33": 1596,
"0.5.32": 36,
"0.5.34": 8431,
"0.5.36": 13234,
"0.5.35": 25,
"0.5.38": 8922,
"0.5.37": 96,
"0.5.40": 2471,
"0.5.39": 48,
"0.5.41": 51122,
"0.5.42": 5639,
"0.5.43": 21727,
"0.5.45": 4241,
"0.5.44": 126,
"0.5.46": 42986,
"0.5.47": 132476,
"0.5.48": 129,
"0.5.51": 1365,
"0.5.50": 36,
"0.5.49": 44,
"updated": 1744053450000,
"0.5.52": 13174,
"0.5.53": 28521,
"0.5.54": 9672,
"0.5.55": 182690,
"0.5.56": 237966,
"0.5.58": 33394,
"0.5.57": 3477,
"0.5.59": 43310,
"0.5.60": 4902,
"0.5.61": 70220,
"0.5.62": 2049,
"0.5.63": 28074,
"0.5.64": 330391,
"0.1.3": 7,
"0.5.65": 21857,
"0.5.66": 280915,
"0.5.67": 765011,
"0.5.68": 1230719,
"0.5.70": 16660
},
"periodic-notes": {
"0.0.3": 63,
"downloads": 610266,
"0.0.7": 218,
"0.0.6": 37,
"0.0.5": 6,
"0.0.4": 52,
"0.0.8": 95,
"0.0.9": 1131,
"0.0.10": 953,
"0.0.12": 171,
"0.0.11": 223,
"0.0.13": 239,
"0.0.14": 341,
"0.0.15": 3342,
"0.0.16": 9928,
"0.0.17": 574676,
"0.0.2": 5,
"0.0.1": 6,
"1.0.0": 13296,
"1.0.0-beta.2": 226,
"1.0.0-beta.3": 5258,
"updated": 1649948603000
},
"obsidian-show-file-path": {
"0.0.1": 166,
"downloads": 35810,
"0.1.0": 186,
"0.2.0": 635,
"0.2.1": 1085,
"0.3.0": 954,
"0.4.0": 1314,
"0.5.0": 1133,
"0.5.1": 484,
"0.5.2": 29853,
"updated": 1634113720000
},
"various-complements": {
"0.1.9": 32,
"v0.1.7": 7,
"downloads": 462067,
"0.2.0": 45,
"0.3.0": 100,
"0.4.0": 319,
"v0.1.6": 4,
"v0.1.5": 5,
"v0.1.4": 4,
"v0.1.3": 5,
"1.2.0": 40,
"1.1.0": 36,
"1.0.0": 15,
"2.0.0": 104,
"1.4.1": 13,
"1.4.0": 16,
"1.3.0": 34,
"1.2.1": 10,
"3.1.0": 428,
"3.0.1": 81,
"3.0.0": 30,
"3.3.1": 250,
"3.3.0": 153,
"3.2.0": 240,
"3.5.1": 408,
"3.5.0": 254,
"3.4.2": 19,
"3.4.1": 257,
"3.4.0": 36,
"4.2.0": 560,
"4.1.0": 371,
"4.0.1": 190,
"4.0.0": 307,
"5.0.0": 498,
"5.0.1": 688,
"5.5.0": 633,
"5.4.0": 21,
"5.3.0": 58,
"5.2.0": 69,
"5.1.0": 163,
"5.6.1": 558,
"5.6.0": 267,
"5.8.0": 1050,
"5.7.1": 32,
"5.9.0": 668,
"5.9.1": 698,
"5.10.0": 1442,
"5.11.0": 2109,
"6.0.0-beta3": 7,
"6.0.0-beta2": 11,
"6.0.0-beta1": 7,
"6.0.0-beta4": 11,
"6.0.0-beta6": 15,
"6.0.0-beta7": 10,
"6.1.0-beta1": 11,
"6.0.0": 989,
"6.1.0-beta3": 17,
"6.1.0-beta2": 10,
"6.1.0-beta6": 15,
"6.1.0-beta5": 8,
"6.1.0-beta4": 7,
"6.1.0": 2094,
"7.0.0-beta1": 11,
"7.0.0-beta5": 11,
"7.0.0-beta4": 10,
"7.0.0-beta2": 11,
"7.0.0-beta6": 16,
"7.0.0-beta7": 15,
"7.0.0-beta8": 14,
"7.0.0": 3121,
"7.0.0-beta9": 9,
"7.0.0-beta3": 7,
"7.0.1": 206,
"7.0.2": 69,
"7.0.3": 103,
"7.0.5": 994,
"7.0.4": 46,
"7.0.6": 2089,
"7.1.1": 6265,
"7.1.0": 20,
"7.2.0-beta1": 94,
"7.2.0-beta2": 94,
"7.2.1": 219,
"7.2.0": 49,
"7.2.2": 522,
"7.2.4": 3548,
"7.2.3": 31,
"7.2.5": 892,
"7.3.0": 15696,
"7.4.0-beta1": 66,
"updated": 1769339521000,
"8.0.0-beta2": 191,
"8.0.0-beta1": 16,
"8.0.0-beta3": 700,
"8.0.0-beta5": 100,
"8.0.0-beta4": 27,
"8.0.0-beta6": 229,
"8.0.0-beta8": 298,
"8.0.0-beta7": 45,
"8.0.0-beta9": 51,
"8.0.0-beta10": 118,
"8.0.0-beta11": 258,
"8.0.0-beta12": 542,
"8.0.0": 4521,
"8.1.0-beta1": 409,
"8.1.0-beta2": 71,
"8.1.0-beta3": 547,
"8.1.0": 9696,
"8.2.0-beta1": 702,
"8.2.0-beta3": 321,
"8.2.0-beta2": 29,
"8.2.0-beta4": 46,
"8.2.1": 5084,
"8.2.0": 67,
"8.2.2": 922,
"8.2.3": 3572,
"8.3.0": 705,
"8.3.1": 13562,
"8.3.2": 7648,
"8.3.3": 5444,
"8.4.1": 9275,
"8.4.0": 173,
"9.0.0-beta3": 771,
"9.0.0-beta2": 16,
"9.0.0-beta1": 52,
"9.0.0-beta4": 285,
"9.0.0-beta5": 504,
"9.0.0": 8065,
"9.0.0-beta6": 30,
"9.1.0-beta1": 3183,
"9.0.1": 8981,
"9.1.0-beta3": 515,
"9.1.0": 23485,
"9.2.0": 4179,
"9.2.1": 1343,
"9.3.0": 5005,
"9.4.0": 20971,
"10.0.0-beta1": 1670,
"10.0.0-beta2": 310,
"10.0.0-beta3": 938,
"10.0.0": 23625,
"10.0.2": 11596,
"10.0.3": 43032,
"10.1.0": 12539,
"10.2.0": 16491,
"10.3.0": 16268,
"10.4.0": 6000,
"10.5.0": 3230,
"10.5.1": 12888,
"10.6.0": 5259,
"10.7.0": 3431,
"10.7.1": 21462,
"10.7.2": 7068,
"10.8.0": 42771,
"10.8.1": 16748,
"11.0.0": 23220
},
"note-folder-autorename": {
"0.0.1": 131,
"downloads": 13334,
"0.1.0": 1668,
"0.0.2": 56,
"0.1.1": 1100,
"0.1.2": 10379,
"updated": 1642752258000
},
"daily-activity": {
"0.0.2": 71,
"downloads": 16522,
"0.0.3": 196,
"0.1.1": 83,
"0.2.3": 33,
"0.2.2": 117,
"0.3.0": 65,
"0.3.1": 932,
"0.3.2": 2289,
"0.2.0": 42,
"0.1.0": 23,
"0.4.0": 7022,
"updated": 1744419754000,
"0.5.0": 3663,
"1.0.0": 1986
},
"obsidian-daily-stats": {
"1.0.1": 159,
"1.0.0": 49,
"downloads": 23668,
"1.0.4": 23341,
"1.0.3": 57,
"1.0.2": 62,
"updated": 1614264770000
},
"open-note-to-window-title": {
"0.1.1": 323,
"0.0.5": 157,
"downloads": 15351,
"0.1.2": 560,
"0.2.1": 510,
"0.2.0": 45,
"0.3.1": 288,
"0.3.2": 1249,
"0.1.0": 32,
"0.3.3": 2164,
"0.3.5": 9979,
"0.3.4": 44,
"updated": 1653328474000
},
"meld-encrypt": {
"1.0.0": 34,
"downloads": 160654,
"1.1.0": 57,
"1.2.0": 142,
"1.3.0": 110,
"1.3.1": 229,
"1.3.2": 545,
"1.3.3": 829,
"1.3.4": 623,
"1.4.1": 763,
"1.4.0": 12,
"1.4.2": 530,
"1.5.1": 1254,
"1.5.0": 29,
"1.4.3": 91,
"1.6.0": 2387,
"1.5.2": 30,
"1.6.2": 6512,
"1.6.1": 39,
"2.0.0": 319,
"2.0.1": 825,
"2.0.2": 124,
"2.0.3": 3247,
"updated": 1752324692000,
"2.0.4": 6154,
"2.0.5": 1889,
"2.1.0": 259,
"2.1.2": 300,
"2.1.1": 291,
"2.1.3": 2523,
"2.2.0": 9943,
"2.3.0": 2738,
"2.3.1": 3779,
"2.3.2": 4549,
"2.3.3": 1844,
"2.3.4": 1399,
"2.3.6": 9276,
"2.3.5": 7362,
"2.3.7": 30663,
"2.4.0-beta": 809,
"2.4.0-beta.2": 36,
"2.4.0-beta.3": 44,
"2.4.0-beta.4": 188,
"2.4.0": 16919,
"2.4.1": 987,
"2.4.2": 2616,
"2.4.3": 1452,
"2.4.4": 3098,
"2.4.5": 32805
},
"obsidian-vault-statistics-plugin": {
"0.0.3": 187,
"downloads": 45242,
"0.0.4": 2769,
"v0.0.2": 81,
"v0.0.1": 365,
"0.0.6": 403,
"0.0.5": 310,
"0.0.8": 716,
"0.1.0": 4391,
"0.1.2": 3257,
"0.1.1": 133,
"0.1.3": 32630,
"updated": 1666760473000
},
"obsidian-plugin-todo": {
"0.1.0": 7911,
"downloads": 77247,
"0.2.1": 2510,
"0.2.5": 808,
"0.2.4": 216,
"0.2.3": 262,
"0.2.2": 763,
"0.2.7": 56072,
"0.2.6": 844,
"updated": 1758659012000,
"0.2.8": 7861
},
"obsidian-hotkeys-for-specific-files": {
"0.0.1": 187,
"downloads": 30738,
"0.1.0": 311,
"1.0.0": 198,
"1.1.0": 205,
"1.2.0": 3246,
"updated": 1706561161000,
"1.2.1": 1638,
"1.3.0": 2910,
"1.3.1": 3471,
"1.4.0": 5875,
"1.4.1": 12697
},
"csv-obsidian": {
"0.0.1": 24480,
"downloads": 24480,
"updated": 1613794294000
},
"obsidian-plugin-toc": {
"0.0.14": 89,
"0.0.13": 23,
"0.0.3": 7,
"downloads": 201988,
"0.0.15": 102,
"0.1.1": 209,
"0.1.2": 13035,
"0.1.0": 20,
"0.0.16": 28,
"0.0.12": 26,
"0.0.11": 22,
"0.0.10": 17,
"0.0.9": 17,
"0.0.8": 6,
"0.0.7": 6,
"0.0.6": 6,
"0.0.5": 5,
"0.1.3": 18213,
"updated": 1683770915000,
"0.1.4": 13251,
"0.2.0": 156906
},
"mochi-cards-exporter": {
"0.2.2": 177,
"downloads": 5230,
"0.2.3": 5010,
"0.2.1": 23,
"0.2.0": 20,
"updated": 1622017130000
},
"obsidian-plugin-prettier": {
"0.0.16": 77,
"0.0.15": 65,
"downloads": 19763,
"0.0.17": 578,
"0.0.18": 143,
"0.1.0": 4946,
"0.0.14": 40,
"0.0.13": 41,
"0.0.12": 36,
"0.0.11": 36,
"0.0.10": 72,
"0.0.9": 33,
"0.0.8": 14,
"0.0.7": 7,
"0.0.6": 5,
"0.0.5": 5,
"0.0.3": 5,
"updated": 1683770204000,
"0.1.1": 13660
},
"obsidian-furigana": {
"downloads": 6459,
"0.0.1": 4897,
"updated": 1739251378000,
"0.0.2": 82,
"0.0.3": 1480
},
"obsidian-vault-changelog": {
"0.1.0": 12420,
"downloads": 18256,
"updated": 1760120228000,
"1.0.0": 625,
"1.1.0": 3036,
"1.2.0": 2175
},
"chesser-obsidian": {
"0.1.5": 1000,
"0.1.3": 33,
"0.1.2": 33,
"downloads": 12246,
"0.1.4": 32,
"0.1.1": 32,
"0.1.0": 28,
"0.2.0": 350,
"0.2.1": 10738,
"updated": 1646554568000
},
"obsidian-chessboard": {
"0.1.3": 19,
"downloads": 9585,
"0.2.0": 32,
"0.3.0": 84,
"0.4.0": 230,
"0.1.2": 11,
"0.1.1": 11,
"0.1.0": 9,
"0.5.0": 1048,
"updated": 1770828725000,
"0.5.1": 1891,
"0.6.0": 2599,
"0.6.1": 383,
"0.7.0": 188,
"0.7.1": 672,
"0.8.0": 278,
"0.9.0": 294,
"0.10.0": 779,
"0.11.0": 42,
"0.11.1": 326,
"0.12.0": 57,
"0.13.0": 128,
"0.14.0": 220,
"0.15.0": 284
},
"obsidian-footnotes": {
"0.0.7": 7752,
"0.0.6": 45,
"0.0.5": 9,
"0.0.4": 7,
"0.0.3": 6,
"0.0.2": 9,
"0.0.1": 7,
"downloads": 140314,
"0.0.8": 7179,
"0.0.9": 22267,
"updated": 1692937209000,
"0.1.0": 5285,
"0.1.1": 1575,
"0.1.2": 13778,
"0.1.3": 82395
},
"notetweet": {
"0.0.3": 29,
"downloads": 6860,
"0.2.1": 118,
"0.2.0": 14,
"0.3.2": 65,
"0.3.1": 21,
"0.3.0": 28,
"0.3.3": 177,
"0.3.5": 62,
"0.4.0": 96,
"0.3.4": 23,
"0.4.1": 107,
"0.4.3": 2560,
"0.4.2": 29,
"0.1.1": 8,
"0.1.0": 5,
"0.0.2": 5,
"0.0.1": 5,
"updated": 1748358548000,
"0.5.1": 2997,
"0.5.2": 511
},
"code-block-from-selection": {
"1.0.2": 242,
"downloads": 11780,
"1.0.5": 209,
"1.0.4": 49,
"1.0.3": 73,
"1.0.6": 881,
"1.0.7": 10277,
"1.0.1": 49,
"updated": 1630338106000
},
"format-hotkeys-obsidian": {
"0.1.0": 34,
"downloads": 7614,
"0.1.3": 250,
"0.1.4": 69,
"0.1.7": 7196,
"0.1.2": 30,
"0.1.1": 35,
"updated": 1621008871000
},
"obsidian-leaflet-plugin": {
"0.2.0": 9,
"0.1.9": 5,
"downloads": 271822,
"0.2.8": 29,
"0.2.7": 8,
"0.2.4": 9,
"0.2.3": 5,
"0.2.2": 5,
"0.2.1": 9,
"0.2.13": 11,
"0.2.12": 5,
"0.2.11": 8,
"0.2.10": 8,
"0.2.14": 20,
"0.3.1": 28,
"0.3.0": 5,
"1.0.1": 19,
"1.0.0": 5,
"1.0.2": 28,
"1.1.1": 20,
"1.2.0": 50,
"1.3.0": 111,
"1.2.1": 10,
"2.0.4": 58,
"2.0.2": 14,
"2.0.1": 29,
"2.0.0": 9,
"2.1.1": 66,
"2.1.0": 38,
"3.0.0": 127,
"3.4.0": 56,
"3.3.0": 49,
"3.2.1": 14,
"3.1.1": 11,
"3.1.0": 13,
"2.0.3": 8,
"3.6.0": 92,
"3.5.0": 17,
"3.4.1": 7,
"3.8.0": 66,
"3.7.2": 17,
"3.7.1": 8,
"3.7.0": 12,
"3.8.1": 78,
"3.8.3": 68,
"3.9.0": 107,
"3.9.4": 59,
"3.9.3": 46,
"3.9.2": 8,
"3.9.1": 12,
"3.9.5": 66,
"3.10.0": 25,
"3.10.1": 111,
"3.11.2": 22,
"3.11.1": 9,
"3.11.0": 11,
"3.11.3": 52,
"3.13.3": 55,
"3.13.2": 13,
"3.13.1": 11,
"3.13.0": 15,
"3.12.1": 58,
"3.12.0": 16,
"3.13.5": 124,
"3.13.4": 19,
"3.13.6": 59,
"3.14.0": 69,
"3.14.1": 117,
"3.16.0": 22,
"3.15.0": 65,
"3.16.2": 110,
"3.8.2": 7,
"3.16.4": 103,
"3.16.3": 10,
"3.18.2": 70,
"3.18.1": 16,
"3.18.0": 5,
"3.17.0": 60,
"3.18.4": 10,
"3.18.3": 22,
"3.18.14": 260,
"3.18.13": 15,
"3.18.12": 9,
"3.18.11": 25,
"3.18.10": 12,
"3.18.9": 14,
"3.18.8": 47,
"3.18.6": 11,
"3.18.5": 9,
"3.18.7": 7,
"3.16.1": 7,
"3.19.0": 45,
"3.19.1": 142,
"3.19.7": 204,
"3.19.6": 16,
"3.19.5": 43,
"3.19.4": 8,
"3.19.3": 8,
"3.20.0": 63,
"3.19.10": 45,
"3.19.9": 48,
"3.19.8": 12,
"3.20.2": 162,
"3.20.1": 10,
"3.21.1": 124,
"3.21.0": 17,
"3.21.2": 160,
"3.23.0": 109,
"3.22.2": 9,
"3.22.1": 5,
"3.22.0": 13,
"3.21.3": 25,
"next": 4,
"3.24.14": 745,
"3.24.13": 76,
"3.24.12": 12,
"3.24.11": 19,
"3.24.10": 234,
"3.24.9": 8,
"3.24.8": 81,
"3.24.7": 82,
"3.24.6": 8,
"3.24.5": 120,
"3.24.4": 59,
"3.24.3": 28,
"3.24.2": 18,
"3.24.1": 11,
"3.24.0": 58,
"3.23.3": 13,
"3.23.2": 11,
"3.23.1": 17,
"4.0.0": 338,
"4.1.3": 296,
"4.1.2": 17,
"4.1.1": 101,
"4.1.0": 10,
"4.2.2": 349,
"4.1.4": 92,
"4.3.0": 218,
"4.3.1": 385,
"4.3.3": 328,
"4.3.2": 5,
"4.2.0": 7,
"4.2.1": 7,
"4.3.4": 84,
"4.3.5": 1377,
"4.3.6": 102,
"4.8.0": 1400,
"4.7.4": 547,
"4.7.3": 44,
"4.7.2": 28,
"4.7.1": 13,
"4.7.0": 11,
"4.6.2": 12,
"4.6.1": 9,
"4.5.0": 108,
"4.4.0": 342,
"4.9.0": 933,
"4.12.1": 123,
"4.12.0": 9,
"4.11.0": 228,
"4.10.0": 196,
"4.6.0": 7,
"4.13.0": 1835,
"4.14.0": 1063,
"5.0.1": 1197,
"5.0.0": 206,
"5.0.2": 359,
"5.0.3": 7469,
"5.0.4": 5477,
"5.1.0": 775,
"5.1.1": 7751,
"5.0.5": 8,
"updated": 1711928586000,
"5.1.2": 3021,
"5.2.2": 2693,
"5.2.1": 18,
"5.2.0": 206,
"5.2.6": 5537,
"5.2.5": 52,
"5.2.4": 65,
"5.2.3": 148,
"5.3.0": 186,
"5.4.0": 339,
"5.5.0": 1140,
"5.5.1": 39,
"5.5.2": 2156,
"5.5.4": 1592,
"5.5.3": 304,
"3.5.5": 9,
"5.5.5": 593,
"5.5.7": 484,
"5.5.6": 17,
"5.5.8": 1351,
"5.6.0": 860,
"5.6.1": 8050,
"5.7.0": 1228,
"5.7.1": 4576,
"5.7.2": 6943,
"5.7.3": 8221,
"5.8.0": 5308,
"6.0.0": 6792,
"6.0.1": 10410,
"3.19.2": 7,
"3.2.0": 8,
"1.1.0": 4,
"0.2.9": 4,
"0.2.6": 4,
"0.1.8": 4,
"0.1.7": 4,
"0.1.5": 4,
"0.1.2": 4,
"0.0.3": 4,
"6.0.2": 16738,
"6.0.4": 2586,
"6.0.3": 182,
"6.0.5": 139929
},
"remember-cursor-position": {
"1.0.2": 294,
"downloads": 137555,
"1.0.3": 364,
"1.0.6": 11789,
"1.0.5": 36,
"1.0.4": 36,
"1.0.1": 34,
"1.0.7": 26551,
"updated": 1717111604000,
"1.0.8": 28661,
"1.0.9": 69790
},
"pane-relief": {
"0.0.1": 195,
"downloads": 153987,
"0.0.3": 231,
"0.0.2": 16,
"0.0.4": 688,
"0.0.6": 141,
"0.0.5": 38,
"0.0.8": 521,
"0.0.7": 30,
"0.0.9": 391,
"0.0.10": 520,
"0.0.11": 822,
"0.0.12": 1359,
"0.0.14": 217,
"0.0.13": 8,
"0.0.15": 1598,
"0.0.17": 4230,
"0.0.16": 16,
"0.0.18": 299,
"0.0.20": 495,
"0.0.19": 238,
"0.0.23": 1253,
"0.0.22": 79,
"0.0.24": 4454,
"0.0.21": 5,
"0.0.25": 1175,
"0.0.26": 191,
"0.1.0": 262,
"0.1.5": 52,
"0.1.4": 170,
"0.1.3": 40,
"0.1.2": 34,
"0.1.1": 38,
"0.1.8": 483,
"0.1.7": 18,
"0.1.6": 21,
"0.1.9": 819,
"0.1.10": 541,
"0.1.11": 353,
"0.1.15": 789,
"0.1.14": 44,
"0.1.13": 17,
"0.2.0": 608,
"0.2.1": 1537,
"0.2.3": 89,
"0.2.2": 9,
"0.2.4": 833,
"0.2.5": 536,
"0.2.6": 1806,
"0.2.7": 2128,
"0.2.9": 2281,
"0.2.8": 51,
"0.3.0": 1776,
"0.3.1": 511,
"0.3.3": 90,
"0.3.2": 73,
"0.3.4": 1501,
"0.3.5": 2621,
"0.4.0": 4438,
"0.4.1": 13805,
"updated": 1740214144000,
"0.4.2": 3748,
"0.5.0": 6632,
"0.5.1": 8106,
"0.5.2": 13896,
"0.5.3": 12739,
"0.5.4": 4027,
"0.5.5": 7547,
"0.5.6": 7557,
"0.5.7": 4010,
"0.5.8": 2916,
"0.5.9": 25225
},
"DEVONlink-obsidian": {
"1.1.0": 60,
"downloads": 9181,
"1.1.1": 28,
"1.1.3": 83,
"1.1.2": 12,
"2.0.1": 636,
"2.1.1": 203,
"2.1.0": 13,
"2.2.0": 1,
"2.2.1": 8137,
"1.0.0": 8,
"updated": 1624043241000
},
"hotkey-helper": {
"0.1.2": 295,
"downloads": 70354,
"0.2.1": 454,
"0.2.0": 15,
"0.1.1": 9,
"0.3.1": 219,
"0.3.0": 101,
"0.3.5": 383,
"0.3.4": 100,
"0.3.3": 12,
"0.3.2": 34,
"0.3.6": 1149,
"0.2.2": 8,
"0.3.7": 1605,
"0.3.8": 3623,
"0.1.0": 5,
"0.0.1": 5,
"0.3.9": 1148,
"0.3.11": 5880,
"0.3.10": 630,
"0.3.13": 2038,
"0.3.12": 107,
"0.3.15": 7891,
"0.3.14": 445,
"updated": 1772572414000,
"0.3.16": 3212,
"0.3.17": 3773,
"0.3.18": 16092,
"0.3.20": 17926,
"0.3.19": 1624,
"0.3.21": 1571
},
"text-snippets-obsidian": {
"0.0.1": 67,
"downloads": 44914,
"0.0.2": 572,
"0.0.3": 174,
"0.0.4": 1466,
"0.0.6": 2007,
"0.0.5": 172,
"0.0.8": 1903,
"0.0.7": 49,
"0.1.2": 38302,
"0.1.1": 80,
"0.1.0": 68,
"0.0.9": 54,
"updated": 1652364040000
},
"consistent-attachments-and-links": {
"1.0.5": 173,
"1.0.2": 62,
"1.0.1": 56,
"downloads": 111868,
"1.0.7": 3536,
"1.0.6": 177,
"1.0.4": 32,
"1.0.3": 27,
"1.0.8": 7300,
"updated": 1772838137000,
"1.0.9": 2836,
"1.0.10": 263,
"1.0.11": 264,
"1.1.0": 4617,
"1.3.0": 6368,
"1.2.0": 176,
"2.0.0": 749,
"2.1.0": 702,
"3.0.0": 19,
"3.4.2": 154,
"3.4.1": 48,
"3.4.0": 12,
"3.3.2": 9,
"3.3.1": 21,
"3.3.0": 3,
"3.2.0": 5,
"3.1.0": 8,
"3.6.0": 225,
"3.5.1": 162,
"3.5.0": 11,
"3.7.0": 404,
"3.10.0": 166,
"3.9.0": 31,
"3.8.0": 32,
"3.12.0": 1271,
"3.11.0": 71,
"3.13.0": 217,
"3.13.3": 890,
"3.13.2": 160,
"3.13.1": 38,
"3.14.0": 451,
"3.15.0": 263,
"3.17.0": 251,
"3.16.0": 14,
"3.18.0": 195,
"3.19.0": 545,
"3.20.0": 384,
"3.20.1": 1365,
"3.21.0": 187,
"3.21.1": 246,
"3.21.2": 2432,
"3.21.7": 1389,
"3.21.6": 53,
"3.21.5": 8,
"3.21.4": 291,
"3.21.3": 18,
"3.21.8": 1001,
"3.21.10": 574,
"3.21.9": 155,
"3.21.11": 1221,
"3.21.12": 337,
"3.21.14": 255,
"3.21.13": 50,
"3.21.15": 1300,
"3.21.16": 251,
"3.21.18": 56,
"3.21.17": 150,
"3.22.1": 1320,
"3.22.0": 12,
"3.23.0": 424,
"3.24.1": 1140,
"3.24.0": 129,
"3.24.7": 522,
"3.24.6": 101,
"3.24.5": 4,
"3.24.4": 42,
"3.24.3": 32,
"3.24.2": 23,
"3.24.8": 1145,
"3.24.9": 1310,
"3.24.10": 1022,
"3.24.11": 1050,
"3.24.12": 685,
"3.24.13": 1565,
"3.24.14": 1184,
"3.24.15": 280,
"3.24.16": 1576,
"3.25.0": 855,
"3.25.2": 102,
"3.25.1": 140,
"3.25.4": 1469,
"3.25.3": 46,
"3.26.0": 469,
"3.26.1": 916,
"3.26.2": 372,
"3.26.3": 388,
"3.27.0": 62,
"3.28.0": 1432,
"3.28.1": 812,
"3.29.0": 424,
"3.29.1": 1158,
"3.29.2": 1037,
"3.29.3": 1296,
"3.30.0": 2350,
"3.30.1": 1204,
"3.30.2": 1340,
"3.30.4": 1824,
"3.30.3": 11,
"3.30.5": 350,
"3.30.7": 497,
"3.30.6": 170,
"3.30.8": 1180,
"3.30.9": 1527,
"3.30.11": 467,
"3.30.10": 71,
"3.30.12": 672,
"3.30.13": 277,
"3.30.16": 400,
"3.30.15": 284,
"3.30.14": 4,
"3.30.18": 1017,
"3.30.17": 279,
"3.31.1": 55,
"3.31.0": 284,
"3.31.2": 790,
"3.31.3": 588,
"3.31.5": 107,
"3.31.4": 35,
"3.31.7": 314,
"3.31.6": 73,
"3.31.8": 1729,
"3.31.9": 979,
"3.31.10": 806,
"3.31.11": 1597,
"3.31.12": 3358,
"3.31.13": 876,
"3.31.15": 1443,
"3.31.14": 77,
"3.31.16": 3028,
"3.32.0": 276,
"3.32.1": 791,
"3.32.3": 2934,
"3.32.2": 69,
"3.32.4": 169,
"3.32.5": 931,
"3.33.1": 5429,
"3.33.0": 14,
"3.33.2": 303,
"3.33.3": 487,
"3.33.4": 1121
},
"obsidian-plantuml": {
"1.1.1": 39,
"1.1.0": 39,
"downloads": 128581,
"1.1.2": 1692,
"1.2.3": 142,
"1.2.1": 156,
"1.2.0": 168,
"1.2.4": 722,
"1.2.5": 1175,
"1.2.2": 8,
"1.0.0": 6,
"1.2.6": 883,
"1.3.1": 498,
"1.3.0": 178,
"1.2.7": 82,
"1.4.0": 2626,
"1.5.0": 165,
"1.5.1": 886,
"1.5.2": 1491,
"1.5.3": 1604,
"1.6.2": 615,
"1.6.1": 24,
"1.6.0": 31,
"1.6.3": 2273,
"1.6.4": 426,
"1.6.6": 24789,
"1.6.5": 2026,
"updated": 1714128322000,
"1.7.0": 23236,
"1.8.0": 62601
},
"imdone-obsidian-plugin": {
"1.0.0": 4573,
"downloads": 5928,
"updated": 1737433060000,
"1.0.2": 47,
"1.0.3": 10,
"1.0.5": 54,
"1.0.4": 13,
"1.1.0": 1231
},
"unique-attachments": {
"1.0.2": 494,
"1.0.1": 40,
"downloads": 12634,
"1.0.3": 12100,
"updated": 1630336989000
},
"obsidian-dice-roller": {
"1.0.0": 56,
"0.1.4": 6,
"downloads": 259883,
"2.0.0": 68,
"3.0.1": 151,
"3.0.0": 13,
"3.0.2": 155,
"4.0.3": 56,
"4.0.1": 9,
"4.0.0": 7,
"4.0.5": 82,
"4.0.4": 9,
"4.0.6": 79,
"4.0.7": 74,
"4.1.0": 82,
"5.0.0": 37,
"5.1.1": 76,
"5.1.2": 143,
"5.2.1": 130,
"5.3.1": 336,
"5.3.0": 30,
"5.2.0": 5,
"5.1.0": 5,
"5.3.2": 154,
"6.3.1": 113,
"6.3.0": 6,
"6.2.1": 55,
"6.2.0": 6,
"6.1.1": 7,
"6.1.0": 10,
"6.0.3": 23,
"6.0.2": 32,
"6.0.1": 16,
"6.0.0": 10,
"6.4.0": 127,
"6.5.0": 145,
"6.5.2": 111,
"6.5.1": 36,
"7.1.3": 299,
"7.1.2": 74,
"7.1.1": 10,
"7.1.0": 10,
"7.0.1": 96,
"7.0.0": 66,
"7.1.4": 399,
"7.1.5": 322,
"7.4.2": 202,
"7.4.1": 14,
"7.4.0": 13,
"7.3.0": 61,
"7.2.2": 75,
"7.2.1": 21,
"7.8.3": 83,
"7.8.2": 6,
"7.8.1": 7,
"7.8.0": 11,
"7.7.0": 16,
"7.6.0": 27,
"7.5.1": 79,
"7.5.0": 16,
"7.8.5": 469,
"7.8.4": 80,
"7.8.6": 444,
"7.10.1": 582,
"7.10.0": 29,
"7.9.0": 94,
"7.2.0": 5,
"7.11.0": 606,
"7.10.2": 350,
"7.13.1": 295,
"7.13.0": 291,
"7.12.0": 16,
"7.11.1": 134,
"8.2.1": 1689,
"8.2.0": 390,
"8.1.0": 263,
"8.0.0": 14,
"7.13.2": 302,
"8.3.0": 107,
"8.3.1": 2084,
"8.3.2": 175,
"8.3.3": 341,
"8.3.4": 525,
"8.3.5": 388,
"8.4.0": 104,
"8.4.1": 187,
"8.4.2": 326,
"8.4.3": 698,
"8.5.0": 128,
"8.5.1": 139,
"8.5.2": 356,
"8.6.0": 2445,
"8.6.1": 984,
"8.6.2": 1331,
"8.6.3": 591,
"8.6.4": 1292,
"8.6.6": 795,
"8.6.7": 971,
"8.6.9": 2511,
"8.6.8": 20,
"8.7.0": 661,
"8.7.1": 238,
"8.7.2": 97,
"8.8.0": 6130,
"updated": 1742821103000,
"8.8.1": 185,
"8.8.2": 2271,
"8.8.3": 2971,
"8.9.0": 2893,
"8.10.0": 311,
"8.9.1": 149,
"8.10.1": 495,
"8.11.1": 1257,
"8.11.0": 7,
"8.12.0": 249,
"8.12.3": 629,
"8.12.2": 108,
"8.13.1": 3747,
"8.13.0": 61,
"8.12.5": 36,
"8.12.4": 10,
"8.13.2": 298,
"8.13.8": 182,
"8.13.7": 61,
"8.13.10": 290,
"8.13.9": 12,
"8.14.4": 469,
"8.14.3": 10,
"8.14.2": 1122,
"8.14.1": 21,
"8.14.0": 12,
"8.13.14": 10,
"8.13.13": 9,
"8.13.12": 106,
"8.13.11": 8,
"8.14.5": 6348,
"8.15.0": 418,
"8.15.1": 1519,
"8.16.0": 992,
"8.16.1": 1066,
"8.17.0": 351,
"9.0.0": 2957,
"9.1.0": 404,
"9.2.0": 2070,
"9.3.0": 4925,
"9.3.1": 3369,
"9.4.0": 1426,
"9.4.1": 5645,
"10.0.1": 761,
"10.0.0": 25,
"10.0.2": 1012,
"10.0.3": 1038,
"10.1.2": 2160,
"10.1.1": 182,
"10.2.0": 1052,
"10.3.0": 2393,
"10.4.0": 8951,
"1.1.0": 4,
"0.1.3": 4,
"0.1.2": 4,
"0.1.1": 4,
"10.4.1": 1916,
"10.4.3": 5210,
"10.4.4": 4758,
"10.4.5": 6808,
"10.4.6": 7755,
"10.5.0": 2870,
"11.0.1": 2645,
"11.0.2": 396,
"11.0.3": 5893,
"11.0.4": 18503,
"11.0.5": 5149,
"11.2.0": 98,
"11.1.0": 65,
"11.2.1": 2211,
"11.3.1": 914,
"11.3.2": 5348,
"11.4.0": 4478,
"11.3.4": 4042,
"11.3.3": 137,
"11.4.1": 22896,
"11.4.2": 56678
},
"obsidian-languagetool-plugin": {
"0.0.5": 452,
"0.0.4": 39,
"0.0.3": 8,
"0.0.2": 10,
"downloads": 273910,
"0.0.6": 195,
"0.0.7": 67,
"0.0.8": 267,
"0.0.9": 475,
"0.1.2": 674,
"0.1.1": 12,
"0.1.0": 77,
"0.1.3": 1130,
"0.1.4": 964,
"0.1.5": 5212,
"0.2.1": 3761,
"0.2.0": 311,
"0.1.6": 1124,
"0.2.2": 2058,
"0.2.5": 708,
"0.2.4": 17,
"0.2.3": 36,
"0.2.6": 1550,
"0.2.7": 12632,
"0.3.0": 18414,
"0.3.1": 5997,
"updated": 1771200467000,
"0.3.2": 4032,
"0.3.3": 40752,
"0.3.4": 34274,
"0.3.5": 998,
"0.3.6": 17578,
"0.3.7": 111962,
"0.3.8": 8124
},
"obsidian-outliner": {
"1.0.4": 211,
"1.0.3": 16,
"1.0.3-pre1": 10,
"1.0.2": 18,
"1.0.1": 19,
"downloads": 1136854,
"1.0.6": 80,
"1.0.5": 11,
"1.0.14": 190,
"1.0.13": 12,
"1.0.12": 12,
"1.0.11": 13,
"1.0.10": 29,
"1.0.9": 38,
"1.0.8": 99,
"1.0.7": 11,
"1.0.18": 309,
"1.0.17": 10,
"1.0.16": 55,
"1.0.15": 8,
"1.0.20": 190,
"1.0.19": 11,
"1.0.23": 247,
"1.0.22": 13,
"1.0.21": 16,
"1.0.27": 1225,
"1.0.25": 124,
"1.0.24": 13,
"obsidian-commands-1": 14,
"1.1.4": 1367,
"1.1.3": 34,
"1.1.2": 205,
"1.1.1": 514,
"1.1.0": 145,
"1.1.0-beta5": 11,
"obsidian-commands-4": 12,
"obsidian-commands-3": 13,
"obsidian-commands-2": 6,
"1.1.5": 1321,
"1.1.6": 2554,
"1.1.8": 2209,
"1.1.7": 298,
"1.0.26": 9,
"1.1.10": 797,
"1.1.9": 130,
"1.1.11": 1246,
"1.1.12": 1460,
"1.2.0-beta1": 16,
"1.2.0": 369,
"1.2.1": 3013,
"1.2.5": 5552,
"1.2.4": 45,
"1.2.3": 19,
"1.2.2": 16,
"1.2.6": 198,
"1.3.0": 4818,
"1.2.9": 45,
"1.2.8": 12,
"1.2.7": 268,
"1.3.1": 20725,
"1.4.0": 20449,
"1.4.1": 9187,
"2.0.0": 1349,
"1.4.2": 1738,
"2.0.5": 11029,
"2.0.4": 20,
"2.0.3": 33,
"2.0.2": 24,
"2.0.1": 40,
"2.0.10": 7486,
"2.0.9": 41,
gitextract_c9_29s2c/ ├── .github/ │ ├── PULL_REQUEST_TEMPLATE/ │ │ ├── plugin.md │ │ └── theme.md │ ├── pull_request_template.md │ └── workflows/ │ ├── format.yml │ ├── plugin-stat.yml │ ├── skip.yml │ ├── stale-validation-failed.yml │ ├── stale.yml │ ├── validate-plugin-entry.yml │ └── validate-theme-entry.yml ├── .gitignore ├── README.md ├── cla.md ├── community-css-themes-removed.json ├── community-css-themes.json ├── community-plugin-deprecation.json ├── community-plugin-stats.json ├── community-plugins-removed.json ├── community-plugins.json ├── community-snippets.json ├── desktop-releases.json ├── package.json └── plugin-review.md
Condensed preview — 23 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (2,138K chars).
[
{
"path": ".github/PULL_REQUEST_TEMPLATE/plugin.md",
"chars": 1749,
"preview": "# I am submitting a new Community Plugin\n\n- [ ] I attest that I have done my best to deliver a high-quality plugin, am p"
},
{
"path": ".github/PULL_REQUEST_TEMPLATE/theme.md",
"chars": 1109,
"preview": "# I am submitting a new Community Theme\n\n## Repo URL\n\n<!--- Paste a link to your repo here for easy access -->\nLink to m"
},
{
"path": ".github/pull_request_template.md",
"chars": 151,
"preview": "Please switch to **Preview** and select one of the following links:\n\n* [Community Plugin](?template=plugin.md)\n* [Commun"
},
{
"path": ".github/workflows/format.yml",
"chars": 585,
"preview": "name: Format\non:\n push:\n branches:\n - master\njobs:\n format:\n runs-on: ubuntu-latest\n steps:\n - uses"
},
{
"path": ".github/workflows/plugin-stat.yml",
"chars": 3757,
"preview": "name: Pull plugin stats\n\non:\n schedule:\n - cron: \"0 0 * * *\"\n workflow_dispatch: # Put here!!\n\njobs:\n pull-stats:\n"
},
{
"path": ".github/workflows/skip.yml",
"chars": 788,
"preview": "name: \"Skip on comment\"\n\non:\n issue_comment:\n types: [created]\n\njobs:\n deploy:\n runs-on: ubuntu-latest\n if: g"
},
{
"path": ".github/workflows/stale-validation-failed.yml",
"chars": 723,
"preview": "name: 'Close stale PRs with failed validation'\non:\n schedule:\n - cron: \"27 3 * * *\"\n\njobs:\n stale:\n runs-on: ubu"
},
{
"path": ".github/workflows/stale.yml",
"chars": 911,
"preview": "name: 'Close stale PRs'\non:\n schedule:\n - cron: \"27 7 * * *\"\n\njobs:\n stale:\n runs-on: ubuntu-latest\n permissi"
},
{
"path": ".github/workflows/validate-plugin-entry.yml",
"chars": 18942,
"preview": "name: Validate Plugin Entry\n\non:\n pull_request_target:\n branches:\n - master\n paths:\n - community-plugin"
},
{
"path": ".github/workflows/validate-theme-entry.yml",
"chars": 14656,
"preview": "name: Validate Theme Entry\n\non:\n pull_request_target:\n branches:\n - master\n paths:\n - community-css-the"
},
{
"path": ".gitignore",
"chars": 35,
"preview": "node_modules/\n.DS_Store\n.idea\n*.iml"
},
{
"path": "README.md",
"chars": 5031,
"preview": "## About this repo\r\n\r\nThis repo is used for hosting public releases of Obsidian, as well as our community plugins & them"
},
{
"path": "cla.md",
"chars": 4230,
"preview": "# Contributor License Agreement (\"Agreement\")\n\nThank you for your interest in the open source project(s) managed by Dyna"
},
{
"path": "community-css-themes-removed.json",
"chars": 3377,
"preview": "[\n {\n \"name\": \"Molecule\",\n \"reason\": \"Developer policies violation: Remote resources\",\n \"issue\": \"https://gith"
},
{
"path": "community-css-themes.json",
"chars": 72502,
"preview": "[\n {\n \"name\": \"Atom\",\n \"author\": \"kognise\",\n \"repo\": \"kognise/obsidian-atom\",\n \"screenshot\": \"screenshot-hy"
},
{
"path": "community-plugin-deprecation.json",
"chars": 1012,
"preview": "{\n \"obsidian-reading-time\": [\"1.0.0\", \"1.0.1\", \"1.0.2\", \"1.0.3\"],\n \"templater-obsidian\": [\"0.5.2\", \"0.5.3\"],\n \"obsidi"
},
{
"path": "community-plugin-stats.json",
"chars": 1074567,
"preview": "{\n \"nldates-obsidian\": {\n \"0.3.2\": 786,\n \"0.3.1\": 2501,\n \"0.3.0\": 151,\n \"0.2.6\": 256,\n \"0.2.5\": 123,\n "
},
{
"path": "community-plugins-removed.json",
"chars": 19448,
"preview": "[\n {\n \"id\": \"advanced-toolbar\",\n \"name\": \"Advanced Mobile Toolbar\",\n \"reason\": \"Features merged into Commander"
},
{
"path": "community-plugins.json",
"chars": 651724,
"preview": "[\n {\n \"id\": \"nldates-obsidian\",\n \"name\": \"Natural Language Dates\",\n \"author\": \"Argentina Ortega Sainz\",\n \"d"
},
{
"path": "community-snippets.json",
"chars": 217,
"preview": "[\n {\n \"name\": \"Plugin name on the right\",\n \"author\": \"Silver\",\n \"description\": \"Move the plugin name to the ri"
},
{
"path": "desktop-releases.json",
"chars": 1221,
"preview": "{\n \"minimumVersion\": \"0.14.5\",\n \"latestVersion\": \"1.12.4\",\n \"downloadUrl\": \"https://github.com/obsidianmd/obsid"
},
{
"path": "package.json",
"chars": 172,
"preview": "{\n \"name\": \"obsidian-community-releases\",\n \"scripts\": {\n \"format\": \"prettier --write \\\"**/community*.json\\\"\"\n },\n "
},
{
"path": "plugin-review.md",
"chars": 329,
"preview": "# Plugin review guidelines\n\nThis document listed the most common suggestions and feedback that plugin authors receive wh"
}
]
About this extraction
This page contains the full source code of the obsidianmd/obsidian-releases GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 23 files (1.8 MB), approximately 839.9k tokens. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.