Thank you for your interest in contributing to SideScribe! We welcome contributions from everyone.
- Fork the repository on GitHub.
- Clone your fork locally.
- Install dependencies:
Note: We use
pnpm install
pnpmfor package management.
-
Start the development server:
pnpm dev
This will start the Plasmo development server.
-
Load the extension:
- Open Chrome and go to
chrome://extensions/. - Enable "Developer mode".
- Click "Load unpacked" and select the
build/chrome-mv3-devdirectory created by the dev server.
- Open Chrome and go to
-
Make changes:
- The extension supports hot-reloading for most UI changes (Svelte components).
- Changes to content scripts or adapters usually trigger a reload of the extension.
src/sidepanel.svelte: The main UI of the extension.src/contents/: Content scripts that run on the web pages.src/adapters/: Site-specific logic (parsers, scroll handlers).- See docs/ADAPTER_GUIDE.md for how to write adapters.
src/lib/: Shared utilities and types.
- We use Prettier for code formatting.
- Please ensure your code passes the linting checks before submitting.
pnpm test
pnpm typecheck- Create a new branch for your feature or bugfix.
- Commit your changes with clear messages.
- Push to your fork and open a Pull Request.
- Describe your changes and link to any relevant issues.
If you want to add support for a new website (e.g., Claude, Perplexity), please refer to the Adapter Development Guide.
Please note that this project is released with a Code of Conduct. By participating in this project you agree to abide by its terms.