Skip to content

Latest commit

Β 

History

29 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“– OBS Bible Stream Verses

License: MIT Version OBS Studio

Display Bible verses beautifully in your OBS streams with an easy-to-use control panel and customizable overlay.

🎯 What is it?

OBS Bible Stream Verses is a modern tool for streamers who want to display Bible passages during their broadcasts. It provides:

  • Control Panel: Custom Browser Dock for searching and selecting verses
  • Overlay: Browser Source that displays verses on your stream
  • Offline: No internet connection required
  • Optimized: Lazy loading architecture (only 2.6 MB initial load)

Perfect for church services, Bible studies, Christian content creators, and worship streams.

✨ Features

  • πŸ” Dual Search: Find verses by reference (John 3:16) or by text content
  • πŸ“š 6 Bible Versions: Kadosh, Americas, NVI, NTV, BTX, RVR60
  • ⚑ Performance: Optimized with lazy loading (95% size reduction)
  • 🎨 Customizable: Easy to modify styling and add new translations
  • 🌐 100% Offline: All databases are local
  • πŸ†“ Free & Open Source: MIT License

πŸ“¦ Quick Start

For Users (Pre-built Release)

  1. Download the latest release from Releases page
  2. Extract the ZIP file to a folder
  3. Follow the step-by-step guide in INSTALLATION.md (included in download)

Detailed installation instructions: INSTALLATION.md

πŸ“– Note: The plugin includes RVR60 (Reina-Valera 1960) as the reference Bible version. This is a public domain Spanish translation included for testing and immediate use. You can add more Bible versions following the instructions below.

For Developers

# Clone the repository
git clone https://github.com/boraita/obs-bible-plugin.git
cd obs-bible-plugin

# Install dependencies
pnpm install

# Development with hot reload
pnpm start

# Production build
pnpm build

# Create release package
pnpm release

πŸ”§ Adding New Bibles

  1. Obtain a SQLite database file (.sqlite) with the Bible translation

    • Source: https://www.ph4.org or any trusted provider
    • Required tables: book, verse (standard Bible database schema)
  2. Copy the file to src/db/ folder:

    cp /path/to/BIBLE.sqlite src/db/
  3. Configure in src/config/bibleConfig.js:

    export const BIBLE_CONFIG = {
      // ... existing Bibles
      newBible: {
        name: 'newBible',
        displayName: 'NB', // Short name for UI
        fullName: 'New Bible Version', // Full name
        requiresTagCleaning: false, // Set true if contains HTML tags
        loader: () => import('../db/BIBLE.sqlite'),
      },
    };
  4. Rebuild:

    pnpm build

The new Bible will automatically appear in the version selector!

🎬 Using in Your Stream

  1. Open the Control Panel dock in OBS
  2. Select your preferred Bible version from the dropdown
  3. Search for verses:
    • By reference: Genesis 1:1, Psalm 23, Matthew 5:1-10
    • By text: Type any words from the verse
  4. Click on a verse result to display it on your overlay
  5. The verse appears instantly on your Browser Source!

πŸ“‹ Resume Feature

The Resume tab allows you to track timestamps of displayed verses during your recording or stream. This is useful for creating video chapters or providing viewers with a summary of all verses shown.

How to Use

  1. Navigate to the Resume tab in the Control Panel
  2. Click ▢️ Start to begin tracking timestamps
  3. Show verses as normal - each time you display a verse, it will be logged with:
    • Timestamp (MM:SS format from when you started)
    • Verse reference (e.g., "GENESIS 1:1")
    • Bible version (e.g., "RVR60")
  4. Click ⏹️ Stop when finished

Additional Controls

  • πŸ“‹ Copy: Copy the entire list to clipboard (ready to paste in video description)
  • πŸ—‘οΈ Clear: Clear all entries and reset the timer

Multiple Recording Sessions

If you stop and start again, a separator --- New recording --- will be added to distinguish between sessions.

Example Output

00:00 GENESIS 1:1 - RVR60
01:30 PSALM 23:1 - NVI
03:45 JOHN 3:16 - RVR60

--- New recording ---

00:00 MATTHEW 5:3 - RVR60
02:15 ROMANS 8:28 - NVI

This format is perfect for YouTube video chapters or stream summaries!

πŸ“š Documentation

πŸš€ Release Process

For maintainers creating a new release:

  1. Review RELEASE_CHECKLIST.md for complete steps
  2. Build and test: pnpm build
  3. Create package: pnpm release
  4. Create GitHub Release with the generated ZIP
  5. Optionally submit to OBS Forum using OBS_FORUM_SUBMISSION.md

🌟 Key Technical Highlights

  • Modern JavaScript: ES6+ with modules and async/await
  • Webpack 5: Code splitting and lazy loading
  • SQL.js: Fast local SQLite queries
  • BroadcastChannel: Real-time communication between panel and overlay
  • Clean Code: DRY principles, Single Responsibility, maintainable architecture

🀝 Contributing

Contributions are welcome! Whether it's:

  • πŸ› Bug reports
  • πŸ’‘ Feature suggestions
  • πŸ“– Documentation improvements
  • 🌍 New Bible translations
  • πŸ’» Code contributions

See CONTRIBUTING.md for guidelines.

πŸ” Security & Privacy

  • βœ… No data collection or tracking
  • βœ… No external API calls
  • βœ… All data stored locally
  • βœ… Open source for transparency

Read more: SECURITY.md

πŸ“„ License

This project is licensed under the MIT License - free for personal and commercial use.

See LICENSE for details.

πŸ‘¨β€πŸ’» Credits

πŸ“œ Project History

This project was originally forked from Tosin-JD/obs-bible-plugin but has been completely rewritten for version 2.0.0 with:

  • New Clean Code architecture
  • Performance optimization (lazy loading)
  • Centralized configuration system
  • Comprehensive documentation
  • Independent development direction

The current codebase shares no functionality with the original fork and represents a fresh start.

πŸ”— Links

πŸ’¬ Support

  • πŸ“ Check existing Issues
  • πŸ†• Create a new issue for bugs or feature requests
  • πŸ’¬ Start a Discussion for questions

Made with ❀️ for the streaming community | Enjoy displaying God's Word! πŸ™βœ¨

About

Dynamic, WebSocket-powered overlay for OBS Studio. Displays real-time Bible verses (OSB data) through a browser source. Uses WebSockets for low-latency control, allowing remote triggering of verse selection, custom formatting, and future streaming commands.

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages