Skip to main content

Contributing to Obsidian Portable

Thank you for your interest in contributing to Obsidian Portable! This project is maintained by @Papela and the community.

Ways to Contribute

There are several ways you can help improve Obsidian Portable:

Report Issues

Found a bug? Let us know by opening an issue on GitHub

Submit Code

Contribute code improvements via pull requests

Improve Docs

Help improve documentation and help files

Support Development

Support the project financially through Ko-fi

Code Contributions

If you want to contribute code to this project, follow these steps:
1

Fork the Repository

Fork the Obsidian Portable repository to your GitHub account
# Clone your fork
git clone https://github.com/YOUR-USERNAME/Obsidian-Portable.git
cd Obsidian-Portable
2

Create a Feature Branch

Create a branch for your new feature or bug fix
git checkout -b new-feature
Use a descriptive branch name that explains what you’re working on, such as:
  • fix-launcher-crash
  • add-auto-update
  • improve-settings-dialog
3

Make Your Changes

Make your changes and commit them with clear, descriptive commit messages
# Make your changes
git add .
git commit -m "Added new functionality"
Write clear commit messages that explain why the change was made, not just what was changed.
4

Push to Your Fork

Push your changes to your forked repository
git push origin new-feature
5

Open a Pull Request

Go to the original repository on GitHub and open a pull requestIn your pull request:
  • Clearly describe what your changes do
  • Reference any related issues
  • Explain why the changes are needed
  • Include screenshots if relevant

Reporting Issues

When reporting issues, please provide:
  • Clear Description: Explain what’s wrong and what you expected to happen
  • Steps to Reproduce: List the exact steps to reproduce the issue
  • Environment Details:
    • Windows version
    • Obsidian Portable version
    • Location (USB drive, cloud folder, local drive)
  • Error Messages: Include any error messages or logs
  • Screenshots: If applicable, add screenshots to help explain the problem

Good Issue Example

**Problem**: Obsidian Portable crashes when opening from network drive

**Steps to Reproduce**:
1. Copy Obsidian Portable to network drive Z:
2. Run ObsidianPortable.exe
3. Application crashes before window appears

**Environment**:
- Windows 11 Pro
- Obsidian Portable 1.11.5.0
- Network drive (SMB share)

**Error**: [Attach error log or screenshot]

Documentation Contributions

Help improve the documentation by:
  • Fixing typos or unclear explanations
  • Adding missing information
  • Creating tutorials or guides
  • Improving help.html content
  • Translating documentation
Documentation pull requests follow the same workflow as code contributions.

Code Guidelines

When contributing code, please follow these guidelines:
  • Follow the existing code style in the project
  • Use consistent indentation (spaces or tabs as per existing files)
  • Comment complex logic
  • Keep functions focused and modular
  • Test your changes thoroughly before submitting
  • Test on different Windows versions if possible
  • Test from different locations (USB, local, network)
  • Verify upgrade scenarios work correctly
  • Ensure changes work with PortableApps.com launcher
  • Maintain compatibility with existing installations
  • Don’t break existing user data or settings
  • Consider backward compatibility
  • Update help.html if user-facing features change
  • Update README.md if necessary
  • Add comments explaining why code works a certain way
  • Document any new configuration options

Financial Support

If you’d like to support the project financially:

Support Papela

Support the portable packaging maintainer

Support Obsidian

Support Obsidian development

Support PortableApps

Support PortableApps.com hosting
ko-fi

Community Guidelines

When participating in the Obsidian Portable community:
  • Be Respectful: Treat everyone with respect and professionalism
  • Be Constructive: Provide constructive feedback and suggestions
  • Be Patient: Maintainers are often volunteers with limited time
  • Be Helpful: Help other users when you can
  • Follow Guidelines: Follow GitHub’s community guidelines and code of conduct

License

By contributing to Obsidian Portable, you agree that your contributions will be licensed under the GPL-3.0 License.
All contributions are subject to review and may be modified or rejected at the maintainer’s discretion.

Questions?

If you have questions about contributing: Thank you for helping make Obsidian Portable better!