asyouplz_SpeechNote/docs
asyouplz d16c04883e lint: Fix Obsidian plugin review bot errors (#43)
* lint: Fix console.info usage for Obsidian compliance

- Replace console.info with console.debug in Logger.ts
- Replace console.info with console.debug in DeepgramLogger.ts

Required for ObsidianReviewBot compliance - only console.warn, console.error, console.debug are allowed.

* lint: Add ESLint configuration and auto-fix

- Add .eslintrc.json with Obsidian-compliant rules
- Run eslint --fix on all TypeScript files
- Configure console usage rules (warn, error, debug only)
- Enable prefer-const and no-var rules
- Add typescript-eslint recommended rules

Remaining: 162 warnings (0 errors)
All warnings are non-blocking (mostly @typescript-eslint/no-explicit-any)

Part of PR #8004 lint fixes for Obsidian Review Bot compliance.

* lint: Replace deprecated substr() with slice()

- NotificationSystem.ts: substr(2,9) → slice(2,11)
- NotificationManager.ts: substr(2,9) → slice(2,11)

Obsidian plugin review guideline compliance - substr is deprecated.

Part of PR #8004 lint fixes.

* lint: Replace confirm() with ConfirmationModal (1/5)

- SettingsTabOptimized.ts: Replace window.confirm with ConfirmationModal
- Add ConfirmationModal import

Obsidian plugin review guideline compliance - no window.confirm allowed.
Using Obsidian Modal API instead.

Remaining: 4 more confirm() calls to replace

Part of PR #8004 lint fixes.

* lint: Replace all confirm() calls with ConfirmationModal (5/5)

- AdvancedSettings.ts: 2 confirm() → ConfirmationModal
- SettingsTab.ts: 1 confirm() → ConfirmationModal
- StatisticsDashboard.ts: 1 confirm() → ConfirmationModal
- SettingsTabOptimized.ts: 1 confirm() → ConfirmationModal (previous commit)

All window.confirm() calls now use Obsidian Modal API.
Build successful.

Part of PR #43 - Obsidian lint fixes.

* lint: Fix UI text sentence case (49 instances)

Automated conversion to sentence case for UI text:
- .setName(), .setDesc(), .setButtonText(), .setPlaceholder()
- First letter capitalized, rest lowercase (except acronyms)
- Acronyms preserved: API, URL, HTTP, JSON, XML, ID, UI, CSS, HTML, TTL, SDK, CSV

Files modified (10):
- FormatOptions.ts: 4 changes
- EnhancedSettingsTab.ts: 6 changes
- SettingsTab.ts: 7 changes
- SettingsTabOptimized.ts: 1 change
- SettingsTabRefactored.ts: 1 change
- SimpleSettingsTab.ts: 4 changes
- DeepgramSettings.ts: 6 changes
- ProviderSettings.ts: 8 changes
- ProviderSettingsContainer.ts: 6 changes
- AdvancedSettingsPanel.ts: 6 changes

Build successful.

Part of PR #43 - Obsidian lint fixes.

* fix: Apply Prettier formatting to resolve CI errors

* chore: enhance CI/CD with Obsidian-level linting and release automation

- Consolidated ESLint config with TypeScript strict rules
- Added Obsidian plugin review bot compatible linting checks
- Fixed 45 TypeScript strict mode errors for type safety
- Implemented automatic version bump workflow via PR labels
- Created manual release script for local version management
- Added pre-commit hooks with Husky and lint-staged
- Updated release pipeline with tag-based trigger
- Enhanced documentation (LINT_RULES.md, RELEASE.md, BRANCH_PROTECTION.md)
- Updated README with comprehensive contributing and release guidelines

* fix(ci): Improve ESLint error detection in CI workflow

- Change grep pattern from 'error' to '[1-9][0-9]* error'
- Prevents false positive from '0 errors' string in lint output
- Fixes CI failure for PR #43
2026-01-19 02:08:56 +09:00
..
BRANCH_PROTECTION.md lint: Fix Obsidian plugin review bot errors (#43) 2026-01-19 02:08:56 +09:00
LINT_RULES.md lint: Fix Obsidian plugin review bot errors (#43) 2026-01-19 02:08:56 +09:00
PRIVACY.md docs: add user documentation 2026-01-15 00:47:22 +09:00
README.md docs: add user documentation 2026-01-15 00:47:22 +09:00
RELEASE.md lint: Fix Obsidian plugin review bot errors (#43) 2026-01-19 02:08:56 +09:00
SETTINGS.md docs: add user documentation 2026-01-15 00:47:22 +09:00
TROUBLESHOOTING.md docs: add user documentation 2026-01-15 00:47:22 +09:00

SpeechNote Documentation

English | 한국어

English

Overview

SpeechNote is an Obsidian plugin that transcribes audio files into notes. You can use OpenAI Whisper or Deepgram as the transcription provider. Some features (such as speaker diarization) depend on the selected provider and settings.

Quick start

  1. Install the plugin from Obsidian Community Plugins (recommended), or install manually from the GitHub release files.
  2. Open Obsidian Settings and select Speech to Text.
  3. Add your API key(s) for the provider you want to use.
  4. Run the command "Transcribe audio file" from the command palette or file context menu.

Documentation map

  • Settings: see SETTINGS.md for configuration options and recommendations.
  • Troubleshooting: see TROUBLESHOOTING.md for common issues and fixes.
  • Privacy: see PRIVACY.md for data flow and privacy considerations.

Support

If you need help, use GitHub Issues for bugs and GitHub Discussions for questions.

한국어

개요

SpeechNote는 Obsidian에서 오디오 파일을 텍스트로 변환하는 플러그인입니다. OpenAI Whisper 또는 Deepgram을 변환 공급자로 사용할 수 있습니다. 화자 분리처럼 일부 기능은 공급자와 설정에 따라 달라질 수 있습니다.

빠른 시작

  1. Obsidian 커뮤니티 플러그인에서 설치하는 것을 권장합니다.
  2. Obsidian 설정에서 Speech to Text를 선택합니다.
  3. 사용할 공급자의 API 키를 입력합니다.
  4. 명령 팔레트 또는 파일 컨텍스트 메뉴에서 "Transcribe audio file"을 실행합니다.

문서 안내

  • 설정: SETTINGS.md에서 옵션과 권장 설정을 확인하세요.
  • 문제 해결: TROUBLESHOOTING.md에서 흔한 문제와 해결 방법을 확인하세요.
  • 개인정보: PRIVACY.md에서 데이터 흐름과 개인정보 관련 안내를 확인하세요.

지원

버그는 GitHub Issues, 질문은 GitHub Discussions를 이용해 주세요.