Thank you for your interest in contributing to ORCLPM (Odin Raylib Clipboard Manager)! While this project is no longer actively maintained by the original author, community contributions are welcome and appreciated.
- Fork the repository on GitHub
- Clone your fork locally
- Build the project using the instructions in the README
- Make your changes on a feature branch
- Test thoroughly (both CLI and GUI modes if applicable)
- Submit a pull request with a clear description
- Language: Odin (latest version recommended)
- GUI Library: Raylib
- Platform: Currently Windows-only (clipboard API is Windows-specific)
- IDE: Any text editor (VS Code works well with Odin extensions)
The codebase is organized into logical modules:
src/clipboard/- Windows clipboard API integrationsrc/storage/- Data persistence (JSON)src/cli/- Command-line interfacesrc/commands/- Command processor and feedback systemsrc/gui/- Raylib GUI implementationcomponents/- Reusable UI componentscore/- Window and app lifecycleentries/- Clipboard entry renderingoverlays/- Modal overlays and popupsstate/- UI state management
src/performance/- Performance monitoringsrc/utils/- Shared utilities
See the README and TECHNICAL_SPECIFICATION for detailed documentation.
Here are some ideas if you're looking for where to start:
- Fix any GUI interaction edge cases
- Resolve crashes or memory issues
- Improve error handling
- Linux/macOS clipboard support
- Enhanced search and filtering
- Keyboard shortcuts
- Export/import functionality
- Clipboard format support (images, files, etc.)
- Performance optimizations
- Code documentation
- Unit tests
- Refactoring
- Improve inline code comments
- Create tutorials
- Add more screenshots/GIFs
- Platform-specific setup guides
- API documentation
- Follow Odin conventions: Use the Odin style guide
- Keep it simple: Prefer clarity over cleverness
- Comment complex logic: Help others understand your code
- Test your changes: Verify both CLI and GUI modes work
- Be mindful of dependencies: Keep external dependencies minimal
- Describe your changes clearly in the PR description
- Link any related issues if applicable
- Test thoroughly - include testing steps in your PR
- Keep commits focused - one logical change per commit
- Be patient - since this is community-maintained, reviews may take time
Check these resources before working on something:
- TECHNICAL_SPECIFICATION.md - Detailed system documentation
- clipboard_manager_spec.md - Original specification
.kiro/specs/or.qoder/quests/- Enhancement specifications- GitHub Issues - Community-reported problems
- Test both GUI and CLI modes
- Verify clipboard capture and retrieval
- Check command system functionality
- Test on different Windows versions if possible
- Verify persistence across restarts
- General questions: Open a GitHub Discussion
- Bug reports: Open a GitHub Issue with reproduction steps
- Feature requests: Open a GitHub Issue describing your idea
Be respectful, constructive, and welcoming. We're all here to learn and build cool things with Odin!
By contributing, you agree that your contributions will be licensed under the MIT License.
Happy coding! 🚀