Join our WhatsApp Community π
View Demo β’ Report Bug β’ Request Feature
Scan the QR to support the project π
Sponsors Become a sponsor and get your logo on our README on GitHub with a link to your site.
π Overview Welcome to the official repository for Bude Global Tech Presentations β a cutting-edge platform designed to democratize technical knowledge through engaging, interactive presentations. Built by developers, for developers, this platform serves as a centralized hub where the Bude Global community can discover, share, and learn from expertly crafted technical content.
Important : By using this service, you agree to our Terms and Conditions and Privacy Policy .
π― Mission Our mission is to foster a culture of continuous learning and knowledge sharing by providing an accessible, modern platform for technical presentations that covers everything from programming languages and frameworks to DevOps tools and best practices.
π Table of Contents β¨ Features π¨ Core Functionality π Smart Discovery System : Automatically scans and validates presentation JSON files with built-in format checking
β‘ Real-Time Search : Instantly filter presentations by title, description, or keywords with autocomplete suggestions
π± Fully Responsive : Seamless experience across desktops, tablets, and mobile devices with adaptive layouts
π Beautiful UI/UX : Modern gradient designs, smooth animations, and intuitive navigation
β¨οΈ Keyboard Navigation : Full keyboard support for power users (arrow keys, shortcuts, and more)
π Format Validation : Only displays presentations that pass strict JSON schema validation
π― Modular Architecture : Clean separation of concerns with easy-to-maintain codebase
π Presentation Features π Multi-Topic Support : Organize content into logical sections and topics
π» Code Syntax Highlighting : Beautiful code blocks with proper formatting
π¨ Rich Content Types : Support for text, code, lists, images, emojis, and custom styling
π Speaker Notes : Built-in support for presenter notes (Reveal.js feature)
π Smooth Transitions : Professional slide transitions and animations
π Scrollable Content : Handles long slides with smooth scrolling
π§ Developer Experience π¦ JSON-Based : Simple JSON format for easy content creation
π¨ Customizable Themes : Easy to customize colors, fonts, and styles
π Extensible : Built on Reveal.js with support for plugins
π Template System : Pre-built templates for quick presentation creation
π No Build Process : Pure HTML/CSS/JS β no compilation required
π¬ Demo & Screenshots π Home Page - Presentation Selector Smart search and autocomplete for quick presentation discovery
π€ Author/Presenter Page Professional presenter introduction with social links
π React Presentation Example Clean, modern slide design with code examples
π οΈ Technologies Used This project leverages modern web technologies for optimal performance and developer experience:
TechnologyPurposeVersionHTML5 Structure and semantic markupLatestCSS3 Styling, animations, and responsive designLatestJavaScript (ES6+) Dynamic behavior and presentation logicES2020+Reveal.js Presentation framework4.6.0Remixicon Icon system4.3.0Google Fonts Custom typography (Molot)-
Why These Technologies? β
No dependencies : Zero npm packages, runs directly in browser
β
Fast loading : Minimal external resources with CDN optimization
β
Easy deployment : Static files β host anywhere
β
Cross-browser : Compatible with all modern browsers
β‘ Performance Optimizations This project includes several performance optimizations:
OptimizationBenefitPreconnect hints Faster CDN resource loadingDNS prefetch Early DNS resolutionDeferred scripts Non-blocking page renderSRI hashes Secure CDN resourcesLazy animations Animations start after page loadAdaptive quality Auto-adjusts for mobile devices
π§© Modular Architecture The codebase is organized into modular files in src/ for easier maintenance:
src/
βββ js/
β βββ config.js # Global configuration
β βββ main.js # Entry point
β βββ animations/ # 8 animation modes
β βββ ui/ # UI components
β βββ utils/ # Utility functions
βββ css/
βββ base/ # Variables, reset
βββ components/ # Header, cards, footer, etc.
βββ utilities/ # Responsive styles
ποΈ Project Structure bude-global-tech-presentations/
β
βββ π assets/ # Static assets
β βββ π fonts/ # Custom fonts (Molot)
β β βββ Molot.otf
β βββ π icons/ # Custom icons
β βββ π images/ # Images and logos
β βββ budeglobal_logo.png
β βββ π Readme/ # README screenshots
β βββ home.png
β βββ author.png
β βββ intro-react.png
β
βββ π presentations/ # Presentation JSON files
β βββ intro-oss.json # Open Source Software
β βββ intro-python.json # Python Programming
β βββ intro-csharp.json # C# Programming
β βββ ... (40+ presentations)
β
βββ π src/ # Modular source code (for bundlers)
β βββ π js/ # JavaScript modules
β β βββ config.js # Animation configuration
β β βββ main.js # Entry point
β β βββ π animations/ # 8 animation modes
β β βββ π ui/ # UI components
β β βββ π utils/ # Utility functions
β βββ π css/ # CSS modules
β βββ π base/ # Variables, reset
β βββ π components/ # Header, cards, footer
β βββ π utilities/ # Responsive styles
β
βββ π templates/ # Template files
β βββ sample-presentation.json # Template for new presentations
β
βββ π index.html # Main entry point
βββ π presentations.js # Presentation configuration
βββ π presenter.js # Animation & slide rendering
βββ π loader.js # Dynamic loading logic
βββ π style.css # Custom styles
βββ π github-live.js # GitHub API integration
βββ π theme-switcher.js # Dark/Light theme toggle
βββ π orientation-handler.js # Mobile orientation handler
βββ π README.md # This file
βββ π CONTRIBUTING.md # Contribution guidelines
βββ π LICENSE # GNU GENERAL PUBLIC LICENSE
π Quick Start Get up and running in under 2 minutes!
Prerequisites A modern web browser (Chrome, Firefox, Edge, Safari)
Basic knowledge of JSON (for creating presentations)
Git installed (optional, for cloning)
Installation Option 1: Clone the Repository # Clone the repository
git clone https://github.com/BUDEGlobalEnterprise/bude-global-tech-presentations.git
# Navigate to the project directory
cd bude-global-tech-presentations
# Open in browser
open index.html
# Or on Windows: start index.html
# Or on Linux: xdg-open index.htmlOption 2: Download ZIP Download the latest release
Extract the ZIP file
Open index.html in your browser
Option 3: GitHub Pages (Live Demo) Simply visit: https://budeglobalenterprise.github.io/bude-global-tech-presentations
π How to View Presentations Browser Experience Open the Platform : Launch index.html in your browser
Browse Presentations : View all available presentations in the selector modal
Search : Type keywords to filter presentations instantly
Select : Click on any presentation to begin viewing
Navigate : Use arrow keys or on-screen controls to move between slides
Return Home : Press H to return to the presentation selector
Navigation Controls ActionKeyboardMouse/Touch Next Slideβ or β or SpaceClick right arrowPrevious Slideβ or βClick left arrowScroll Slideβ / β (if content overflows)Mouse wheelFirst SlideHome-Last SlideEnd-Slide OverviewEsc or O-FullscreenF-Return to SelectorH-
β How to Add a New Presentation Adding a new presentation is straightforward and takes just 3 steps!
Step 1: Create Your JSON File Create a new .json file in the presentations/ directory:
touch presentations/my-awesome-tech-talk.jsonUse the template structure (see Presentation JSON Schema ) or copy from templates/sample-presentation.json.
Step 2: Update Configuration Open index.html and locate the PRESENTATIONS_CONFIG array. Add your presentation:
const PRESENTATIONS_CONFIG = [
// ... existing presentations ...
{
file: 'presentations/my-awesome-tech-talk.json',
title: 'My Awesome Tech Talk',
description: 'A comprehensive guide to an amazing technology',
keywords: ['awesome', 'tech', 'innovation', 'tutorial']
}
];Step 3: Test & Commit # Test locally
open index.html
# Commit your changes
git add presentations/my-awesome-tech-talk.json index.html
git commit -m "Add: My Awesome Tech Talk presentation"
git push origin mainThat's it! Your presentation is now live and searchable! π
π Presentation JSON Schema Basic Structure {
"presentation": {
"topics": [
{
"id": "unique-topic-id",
"title": "Topic Title",
"slides": [
{
"type": "title|presenter|topic-title|content|qa|thank-you",
"title": "Slide Title",
"emoji": "π",
"box": {
"title": "Box Title",
"content": "Box content with <strong>HTML</strong>",
"code": "const example = 'code block';",
"list": [
{ "emoji": "β
", "text": "List item with emoji" },
{ "emoji": "β", "text": "Another item" }
]
},
"list": [
{ "emoji": "π", "text": "Top-level list item" }
],
"note": {
"text": "Additional note or tip"
}
}
]
}
]
}
}Slide Types 1. Title Slide {
"type": "title",
"title": "Presentation Title",
"subtitle": "Subtitle or tagline"
}2. Presenter Slide {
"type": "presenter",
"name": "Your Name",
"title": "Your Title",
"experience": "Years of experience",
"oss_experience": "OSS contribution details",
"github": "https://github.com/username",
"website": "https://yoursite.com"
}3. Topic Title Slide {
"type": "topic-title",
"title": "Section Title",
"box": {
"content": "Section introduction"
}
}4. Content Slide {
"type": "content",
"emoji": "π‘",
"title": "Slide Title",
"box": {
"title": "Optional box title",
"content": "Main content",
"code": "// Code example\nfunction hello() {\n console.log('Hello');\n}",
"list": [
{ "emoji": "β
", "text": "Feature one" },
{ "emoji": "β
", "text": "Feature two" }
]
},
"list": [
{ "emoji": "π", "text": "Additional point" }
],
"note": {
"text": "Pro tip or note"
}
}5. Q&A Slide {
"type": "qa",
"title": "Questions? π¬",
"content": "Your questions are welcome!"
}6. Thank You Slide {
"type": "thank-you",
"title": "Thank You! π",
"box": {
"content": "Closing message",
"note": "Final thoughts"
},
"footer": {
"org": "Organization Name",
"tagline": "Your tagline"
}
}HTML Support You can use HTML tags in content:
β¨οΈ Keyboard Shortcuts Presentation Navigation KeyAction β β Space PgDnNext slideβ β PgUpPrevious slideHomeFirst slideEndLast slideEsc OSlide overview modeFFullscreen modeSSpeaker notes (if available)B .Blackout/pauseHReturn to presentation selector
Slide Scrolling (Long Content) KeyAction βScroll down (if slide has overflow)βScroll up (if slide has overflow)
Animation Controls KeyAnimation Mode 1Floating Shapes2Gradient Blobs3Neon Waves4Animated Grid5Particle Field6Pulse Rings7Parallax Layers8Cosmic Dust
π€ Contributing We warmly welcome contributions from developers of all skill levels! Whether you're fixing typos, adding presentations, or building new features, your contribution matters.
Ways to Contribute π Add Presentations : Share your knowledge on any tech topic
π Report Bugs : Found an issue? Open an issue
π‘ Suggest Features : Have ideas? We'd love to hear them
π Improve Documentation : Help make our docs clearer
π¨ Design Enhancements : Improve UI/UX
π§ Code Improvements : Refactor, optimize, or add features
Contribution Workflow Fork the repository
Create a feature branch (git checkout -b feature/amazing-feature)
Make your changes
Test thoroughly
Commit with clear messages (git commit -m 'Add: Amazing feature')
Push to your fork (git push origin feature/amazing-feature)
Open a Pull Request
Commit Message Convention Type: Brief description
Types:
- Add: New feature or presentation
- Fix: Bug fix
- Update: Update existing content
- Docs: Documentation changes
- Style: Code style changes (formatting)
- Refactor: Code refactoring
- Test: Adding tests
- Chore: Maintenance tasks
Example : Add: Introduction to Kubernetes presentation
For detailed guidelines, see CONTRIBUTING.md .
π Available Presentations Programming Languages π Introduction to Python - From basics to advanced topics
π― C# Programming - Modern C# with .NET
βοΈ React.js - Building modern web apps
Frameworks & Libraries π± .NET MAUI - Cross-platform app development
π¨ Tailwind CSS - Utility-first CSS framework
π
±οΈ Bootstrap - Responsive web design
π§ Frappe Framework - Full-stack Python framework
π ERPNext - Open-source ERP system
DevOps & Tools π§ Linux Fundamentals - Command line mastery
π Git & GitHub - Version control essentials
π Gitea - Self-hosted Git service
π³ Docker - Containerization basics
Security & Identity Analytics & BI Open Source More presentations are added regularly by our community!
π§ Customization Branding Update colors in index.html CSS variables:
:root {
--bude-primary: #0060a0; /* Primary brand color */
--bude-purple: #6f42c1; /* Secondary color */
--bude-pink: #cb6ce6; /* Accent color */
--bude-dark: #2c3e50; /* Dark text */
}Fonts Replace the Molot font in assets/fonts/ and update the @font-face rule:
@font-face {
font-family: 'YourFont';
src: url('assets/fonts/YourFont.otf') format('opentype');
}Logo Replace assets/images/budeglobal_logo.png with your logo (recommended size: 400x400px).
Footer Links Update social links in the <footer> section of index.html.
β FAQ Q: Can I use this for my own presentations? A: Absolutely! This project is open-source under GNU GENERAL PUBLIC LICENSE. Feel free to fork and customize.
Q: Do I need a server to host this? A: No! It's a static site. You can host on GitHub Pages, Netlify, Vercel, or any static hosting service.
Q: Can I export presentations to PDF? A: Yes! Use your browser's print function (Ctrl+P) and select "Save as PDF". Reveal.js handles print styling automatically.
Q: How do I add speaker notes? A: Reveal.js supports speaker notes. Press S during presentation to open speaker view.
Q: Can I embed videos or interactive elements? A: Yes! You can use HTML in your JSON content, including <iframe>, <video>, and interactive elements.
Q: Is there a limit to slide count? A: No technical limit, but we recommend keeping presentations under 100 slides for optimal performance.
Q: Can I use this offline? A: Mostly yes, but external resources (CDN fonts, icons) require internet. You can download and self-host these for full offline support.
Β©οΈ License This project is licensed under the GNU GENERAL PUBLIC LICENSE - see the LICENSE file for details.
What This Means β
You can :
Use commercially
Modify and distribute
Use privately
Sublicense
β You cannot :
π You must :
π Terms and Conditions By accessing and using this service, you agree to be bound by our Terms and Conditions .
π Acknowledgments Special thanks to:
OSSPhilippines/oss-101 - For inspiration and attribution
Reveal.js - Hakim El Hattab for the amazing presentation framework
Remixicon - For the beautiful icon system
Bude Global Community - For contributing presentations and feedback
All Contributors - Thank you for making this project better!
π§ Contact Bude Global Enterprise Support β Star this repository if you find it helpful!
Made with β€οΈ by Bude Global Enterprise
" />
Join our WhatsApp Community π
View Demo β’ Report Bug β’ Request Feature
Scan the QR to support the project π
Sponsors Become a sponsor and get your logo on our README on GitHub with a link to your site.
π Overview Welcome to the official repository for Bude Global Tech Presentations β a cutting-edge platform designed to democratize technical knowledge through engaging, interactive presentations. Built by developers, for developers, this platform serves as a centralized hub where the Bude Global community can discover, share, and learn from expertly crafted technical content.
Important : By using this service, you agree to our Terms and Conditions and Privacy Policy .
π― Mission Our mission is to foster a culture of continuous learning and knowledge sharing by providing an accessible, modern platform for technical presentations that covers everything from programming languages and frameworks to DevOps tools and best practices.
π Table of Contents β¨ Features π¨ Core Functionality π Smart Discovery System : Automatically scans and validates presentation JSON files with built-in format checking
β‘ Real-Time Search : Instantly filter presentations by title, description, or keywords with autocomplete suggestions
π± Fully Responsive : Seamless experience across desktops, tablets, and mobile devices with adaptive layouts
π Beautiful UI/UX : Modern gradient designs, smooth animations, and intuitive navigation
β¨οΈ Keyboard Navigation : Full keyboard support for power users (arrow keys, shortcuts, and more)
π Format Validation : Only displays presentations that pass strict JSON schema validation
π― Modular Architecture : Clean separation of concerns with easy-to-maintain codebase
π Presentation Features π Multi-Topic Support : Organize content into logical sections and topics
π» Code Syntax Highlighting : Beautiful code blocks with proper formatting
π¨ Rich Content Types : Support for text, code, lists, images, emojis, and custom styling
π Speaker Notes : Built-in support for presenter notes (Reveal.js feature)
π Smooth Transitions : Professional slide transitions and animations
π Scrollable Content : Handles long slides with smooth scrolling
π§ Developer Experience π¦ JSON-Based : Simple JSON format for easy content creation
π¨ Customizable Themes : Easy to customize colors, fonts, and styles
π Extensible : Built on Reveal.js with support for plugins
π Template System : Pre-built templates for quick presentation creation
π No Build Process : Pure HTML/CSS/JS β no compilation required
π¬ Demo & Screenshots π Home Page - Presentation Selector Smart search and autocomplete for quick presentation discovery
π€ Author/Presenter Page Professional presenter introduction with social links
π React Presentation Example Clean, modern slide design with code examples
π οΈ Technologies Used This project leverages modern web technologies for optimal performance and developer experience:
TechnologyPurposeVersionHTML5 Structure and semantic markupLatestCSS3 Styling, animations, and responsive designLatestJavaScript (ES6+) Dynamic behavior and presentation logicES2020+Reveal.js Presentation framework4.6.0Remixicon Icon system4.3.0Google Fonts Custom typography (Molot)-
Why These Technologies? β
No dependencies : Zero npm packages, runs directly in browser
β
Fast loading : Minimal external resources with CDN optimization
β
Easy deployment : Static files β host anywhere
β
Cross-browser : Compatible with all modern browsers
β‘ Performance Optimizations This project includes several performance optimizations:
OptimizationBenefitPreconnect hints Faster CDN resource loadingDNS prefetch Early DNS resolutionDeferred scripts Non-blocking page renderSRI hashes Secure CDN resourcesLazy animations Animations start after page loadAdaptive quality Auto-adjusts for mobile devices
π§© Modular Architecture The codebase is organized into modular files in src/ for easier maintenance:
src/
βββ js/
β βββ config.js # Global configuration
β βββ main.js # Entry point
β βββ animations/ # 8 animation modes
β βββ ui/ # UI components
β βββ utils/ # Utility functions
βββ css/
βββ base/ # Variables, reset
βββ components/ # Header, cards, footer, etc.
βββ utilities/ # Responsive styles
ποΈ Project Structure bude-global-tech-presentations/
β
βββ π assets/ # Static assets
β βββ π fonts/ # Custom fonts (Molot)
β β βββ Molot.otf
β βββ π icons/ # Custom icons
β βββ π images/ # Images and logos
β βββ budeglobal_logo.png
β βββ π Readme/ # README screenshots
β βββ home.png
β βββ author.png
β βββ intro-react.png
β
βββ π presentations/ # Presentation JSON files
β βββ intro-oss.json # Open Source Software
β βββ intro-python.json # Python Programming
β βββ intro-csharp.json # C# Programming
β βββ ... (40+ presentations)
β
βββ π src/ # Modular source code (for bundlers)
β βββ π js/ # JavaScript modules
β β βββ config.js # Animation configuration
β β βββ main.js # Entry point
β β βββ π animations/ # 8 animation modes
β β βββ π ui/ # UI components
β β βββ π utils/ # Utility functions
β βββ π css/ # CSS modules
β βββ π base/ # Variables, reset
β βββ π components/ # Header, cards, footer
β βββ π utilities/ # Responsive styles
β
βββ π templates/ # Template files
β βββ sample-presentation.json # Template for new presentations
β
βββ π index.html # Main entry point
βββ π presentations.js # Presentation configuration
βββ π presenter.js # Animation & slide rendering
βββ π loader.js # Dynamic loading logic
βββ π style.css # Custom styles
βββ π github-live.js # GitHub API integration
βββ π theme-switcher.js # Dark/Light theme toggle
βββ π orientation-handler.js # Mobile orientation handler
βββ π README.md # This file
βββ π CONTRIBUTING.md # Contribution guidelines
βββ π LICENSE # GNU GENERAL PUBLIC LICENSE
π Quick Start Get up and running in under 2 minutes!
Prerequisites A modern web browser (Chrome, Firefox, Edge, Safari)
Basic knowledge of JSON (for creating presentations)
Git installed (optional, for cloning)
Installation Option 1: Clone the Repository # Clone the repository
git clone https://github.com/BUDEGlobalEnterprise/bude-global-tech-presentations.git
# Navigate to the project directory
cd bude-global-tech-presentations
# Open in browser
open index.html
# Or on Windows: start index.html
# Or on Linux: xdg-open index.htmlOption 2: Download ZIP Download the latest release
Extract the ZIP file
Open index.html in your browser
Option 3: GitHub Pages (Live Demo) Simply visit: https://budeglobalenterprise.github.io/bude-global-tech-presentations
π How to View Presentations Browser Experience Open the Platform : Launch index.html in your browser
Browse Presentations : View all available presentations in the selector modal
Search : Type keywords to filter presentations instantly
Select : Click on any presentation to begin viewing
Navigate : Use arrow keys or on-screen controls to move between slides
Return Home : Press H to return to the presentation selector
Navigation Controls ActionKeyboardMouse/Touch Next Slideβ or β or SpaceClick right arrowPrevious Slideβ or βClick left arrowScroll Slideβ / β (if content overflows)Mouse wheelFirst SlideHome-Last SlideEnd-Slide OverviewEsc or O-FullscreenF-Return to SelectorH-
β How to Add a New Presentation Adding a new presentation is straightforward and takes just 3 steps!
Step 1: Create Your JSON File Create a new .json file in the presentations/ directory:
touch presentations/my-awesome-tech-talk.jsonUse the template structure (see Presentation JSON Schema ) or copy from templates/sample-presentation.json.
Step 2: Update Configuration Open index.html and locate the PRESENTATIONS_CONFIG array. Add your presentation:
const PRESENTATIONS_CONFIG = [
// ... existing presentations ...
{
file: 'presentations/my-awesome-tech-talk.json',
title: 'My Awesome Tech Talk',
description: 'A comprehensive guide to an amazing technology',
keywords: ['awesome', 'tech', 'innovation', 'tutorial']
}
];Step 3: Test & Commit # Test locally
open index.html
# Commit your changes
git add presentations/my-awesome-tech-talk.json index.html
git commit -m "Add: My Awesome Tech Talk presentation"
git push origin mainThat's it! Your presentation is now live and searchable! π
π Presentation JSON Schema Basic Structure {
"presentation": {
"topics": [
{
"id": "unique-topic-id",
"title": "Topic Title",
"slides": [
{
"type": "title|presenter|topic-title|content|qa|thank-you",
"title": "Slide Title",
"emoji": "π",
"box": {
"title": "Box Title",
"content": "Box content with <strong>HTML</strong>",
"code": "const example = 'code block';",
"list": [
{ "emoji": "β
", "text": "List item with emoji" },
{ "emoji": "β", "text": "Another item" }
]
},
"list": [
{ "emoji": "π", "text": "Top-level list item" }
],
"note": {
"text": "Additional note or tip"
}
}
]
}
]
}
}Slide Types 1. Title Slide {
"type": "title",
"title": "Presentation Title",
"subtitle": "Subtitle or tagline"
}2. Presenter Slide {
"type": "presenter",
"name": "Your Name",
"title": "Your Title",
"experience": "Years of experience",
"oss_experience": "OSS contribution details",
"github": "https://github.com/username",
"website": "https://yoursite.com"
}3. Topic Title Slide {
"type": "topic-title",
"title": "Section Title",
"box": {
"content": "Section introduction"
}
}4. Content Slide {
"type": "content",
"emoji": "π‘",
"title": "Slide Title",
"box": {
"title": "Optional box title",
"content": "Main content",
"code": "// Code example\nfunction hello() {\n console.log('Hello');\n}",
"list": [
{ "emoji": "β
", "text": "Feature one" },
{ "emoji": "β
", "text": "Feature two" }
]
},
"list": [
{ "emoji": "π", "text": "Additional point" }
],
"note": {
"text": "Pro tip or note"
}
}5. Q&A Slide {
"type": "qa",
"title": "Questions? π¬",
"content": "Your questions are welcome!"
}6. Thank You Slide {
"type": "thank-you",
"title": "Thank You! π",
"box": {
"content": "Closing message",
"note": "Final thoughts"
},
"footer": {
"org": "Organization Name",
"tagline": "Your tagline"
}
}HTML Support You can use HTML tags in content:
β¨οΈ Keyboard Shortcuts Presentation Navigation KeyAction β β Space PgDnNext slideβ β PgUpPrevious slideHomeFirst slideEndLast slideEsc OSlide overview modeFFullscreen modeSSpeaker notes (if available)B .Blackout/pauseHReturn to presentation selector
Slide Scrolling (Long Content) KeyAction βScroll down (if slide has overflow)βScroll up (if slide has overflow)
Animation Controls KeyAnimation Mode 1Floating Shapes2Gradient Blobs3Neon Waves4Animated Grid5Particle Field6Pulse Rings7Parallax Layers8Cosmic Dust
π€ Contributing We warmly welcome contributions from developers of all skill levels! Whether you're fixing typos, adding presentations, or building new features, your contribution matters.
Ways to Contribute π Add Presentations : Share your knowledge on any tech topic
π Report Bugs : Found an issue? Open an issue
π‘ Suggest Features : Have ideas? We'd love to hear them
π Improve Documentation : Help make our docs clearer
π¨ Design Enhancements : Improve UI/UX
π§ Code Improvements : Refactor, optimize, or add features
Contribution Workflow Fork the repository
Create a feature branch (git checkout -b feature/amazing-feature)
Make your changes
Test thoroughly
Commit with clear messages (git commit -m 'Add: Amazing feature')
Push to your fork (git push origin feature/amazing-feature)
Open a Pull Request
Commit Message Convention Type: Brief description
Types:
- Add: New feature or presentation
- Fix: Bug fix
- Update: Update existing content
- Docs: Documentation changes
- Style: Code style changes (formatting)
- Refactor: Code refactoring
- Test: Adding tests
- Chore: Maintenance tasks
Example : Add: Introduction to Kubernetes presentation
For detailed guidelines, see CONTRIBUTING.md .
π Available Presentations Programming Languages π Introduction to Python - From basics to advanced topics
π― C# Programming - Modern C# with .NET
βοΈ React.js - Building modern web apps
Frameworks & Libraries π± .NET MAUI - Cross-platform app development
π¨ Tailwind CSS - Utility-first CSS framework
π
±οΈ Bootstrap - Responsive web design
π§ Frappe Framework - Full-stack Python framework
π ERPNext - Open-source ERP system
DevOps & Tools π§ Linux Fundamentals - Command line mastery
π Git & GitHub - Version control essentials
π Gitea - Self-hosted Git service
π³ Docker - Containerization basics
Security & Identity Analytics & BI Open Source More presentations are added regularly by our community!
π§ Customization Branding Update colors in index.html CSS variables:
:root {
--bude-primary: #0060a0; /* Primary brand color */
--bude-purple: #6f42c1; /* Secondary color */
--bude-pink: #cb6ce6; /* Accent color */
--bude-dark: #2c3e50; /* Dark text */
}Fonts Replace the Molot font in assets/fonts/ and update the @font-face rule:
@font-face {
font-family: 'YourFont';
src: url('assets/fonts/YourFont.otf') format('opentype');
}Logo Replace assets/images/budeglobal_logo.png with your logo (recommended size: 400x400px).
Footer Links Update social links in the <footer> section of index.html.
β FAQ Q: Can I use this for my own presentations? A: Absolutely! This project is open-source under GNU GENERAL PUBLIC LICENSE. Feel free to fork and customize.
Q: Do I need a server to host this? A: No! It's a static site. You can host on GitHub Pages, Netlify, Vercel, or any static hosting service.
Q: Can I export presentations to PDF? A: Yes! Use your browser's print function (Ctrl+P) and select "Save as PDF". Reveal.js handles print styling automatically.
Q: How do I add speaker notes? A: Reveal.js supports speaker notes. Press S during presentation to open speaker view.
Q: Can I embed videos or interactive elements? A: Yes! You can use HTML in your JSON content, including <iframe>, <video>, and interactive elements.
Q: Is there a limit to slide count? A: No technical limit, but we recommend keeping presentations under 100 slides for optimal performance.
Q: Can I use this offline? A: Mostly yes, but external resources (CDN fonts, icons) require internet. You can download and self-host these for full offline support.
Β©οΈ License This project is licensed under the GNU GENERAL PUBLIC LICENSE - see the LICENSE file for details.
What This Means β
You can :
Use commercially
Modify and distribute
Use privately
Sublicense
β You cannot :
π You must :
π Terms and Conditions By accessing and using this service, you agree to be bound by our Terms and Conditions .
π Acknowledgments Special thanks to:
OSSPhilippines/oss-101 - For inspiration and attribution
Reveal.js - Hakim El Hattab for the amazing presentation framework
Remixicon - For the beautiful icon system
Bude Global Community - For contributing presentations and feedback
All Contributors - Thank you for making this project better!
π§ Contact Bude Global Enterprise Support β Star this repository if you find it helpful!
Made with β€οΈ by Bude Global Enterprise
" />
Join our WhatsApp Community π
View Demo β’ Report Bug β’ Request Feature
Scan the QR to support the project π
Sponsors Become a sponsor and get your logo on our README on GitHub with a link to your site.
π Overview Welcome to the official repository for Bude Global Tech Presentations β a cutting-edge platform designed to democratize technical knowledge through engaging, interactive presentations. Built by developers, for developers, this platform serves as a centralized hub where the Bude Global community can discover, share, and learn from expertly crafted technical content.
Important : By using this service, you agree to our Terms and Conditions and Privacy Policy .
π― Mission Our mission is to foster a culture of continuous learning and knowledge sharing by providing an accessible, modern platform for technical presentations that covers everything from programming languages and frameworks to DevOps tools and best practices.
π Table of Contents β¨ Features π¨ Core Functionality π Smart Discovery System : Automatically scans and validates presentation JSON files with built-in format checking
β‘ Real-Time Search : Instantly filter presentations by title, description, or keywords with autocomplete suggestions
π± Fully Responsive : Seamless experience across desktops, tablets, and mobile devices with adaptive layouts
π Beautiful UI/UX : Modern gradient designs, smooth animations, and intuitive navigation
β¨οΈ Keyboard Navigation : Full keyboard support for power users (arrow keys, shortcuts, and more)
π Format Validation : Only displays presentations that pass strict JSON schema validation
π― Modular Architecture : Clean separation of concerns with easy-to-maintain codebase
π Presentation Features π Multi-Topic Support : Organize content into logical sections and topics
π» Code Syntax Highlighting : Beautiful code blocks with proper formatting
π¨ Rich Content Types : Support for text, code, lists, images, emojis, and custom styling
π Speaker Notes : Built-in support for presenter notes (Reveal.js feature)
π Smooth Transitions : Professional slide transitions and animations
π Scrollable Content : Handles long slides with smooth scrolling
π§ Developer Experience π¦ JSON-Based : Simple JSON format for easy content creation
π¨ Customizable Themes : Easy to customize colors, fonts, and styles
π Extensible : Built on Reveal.js with support for plugins
π Template System : Pre-built templates for quick presentation creation
π No Build Process : Pure HTML/CSS/JS β no compilation required
π¬ Demo & Screenshots π Home Page - Presentation Selector Smart search and autocomplete for quick presentation discovery
π€ Author/Presenter Page Professional presenter introduction with social links
π React Presentation Example Clean, modern slide design with code examples
π οΈ Technologies Used This project leverages modern web technologies for optimal performance and developer experience:
TechnologyPurposeVersionHTML5 Structure and semantic markupLatestCSS3 Styling, animations, and responsive designLatestJavaScript (ES6+) Dynamic behavior and presentation logicES2020+Reveal.js Presentation framework4.6.0Remixicon Icon system4.3.0Google Fonts Custom typography (Molot)-
Why These Technologies? β
No dependencies : Zero npm packages, runs directly in browser
β
Fast loading : Minimal external resources with CDN optimization
β
Easy deployment : Static files β host anywhere
β
Cross-browser : Compatible with all modern browsers
β‘ Performance Optimizations This project includes several performance optimizations:
OptimizationBenefitPreconnect hints Faster CDN resource loadingDNS prefetch Early DNS resolutionDeferred scripts Non-blocking page renderSRI hashes Secure CDN resourcesLazy animations Animations start after page loadAdaptive quality Auto-adjusts for mobile devices
π§© Modular Architecture The codebase is organized into modular files in src/ for easier maintenance:
src/
βββ js/
β βββ config.js # Global configuration
β βββ main.js # Entry point
β βββ animations/ # 8 animation modes
β βββ ui/ # UI components
β βββ utils/ # Utility functions
βββ css/
βββ base/ # Variables, reset
βββ components/ # Header, cards, footer, etc.
βββ utilities/ # Responsive styles
ποΈ Project Structure bude-global-tech-presentations/
β
βββ π assets/ # Static assets
β βββ π fonts/ # Custom fonts (Molot)
β β βββ Molot.otf
β βββ π icons/ # Custom icons
β βββ π images/ # Images and logos
β βββ budeglobal_logo.png
β βββ π Readme/ # README screenshots
β βββ home.png
β βββ author.png
β βββ intro-react.png
β
βββ π presentations/ # Presentation JSON files
β βββ intro-oss.json # Open Source Software
β βββ intro-python.json # Python Programming
β βββ intro-csharp.json # C# Programming
β βββ ... (40+ presentations)
β
βββ π src/ # Modular source code (for bundlers)
β βββ π js/ # JavaScript modules
β β βββ config.js # Animation configuration
β β βββ main.js # Entry point
β β βββ π animations/ # 8 animation modes
β β βββ π ui/ # UI components
β β βββ π utils/ # Utility functions
β βββ π css/ # CSS modules
β βββ π base/ # Variables, reset
β βββ π components/ # Header, cards, footer
β βββ π utilities/ # Responsive styles
β
βββ π templates/ # Template files
β βββ sample-presentation.json # Template for new presentations
β
βββ π index.html # Main entry point
βββ π presentations.js # Presentation configuration
βββ π presenter.js # Animation & slide rendering
βββ π loader.js # Dynamic loading logic
βββ π style.css # Custom styles
βββ π github-live.js # GitHub API integration
βββ π theme-switcher.js # Dark/Light theme toggle
βββ π orientation-handler.js # Mobile orientation handler
βββ π README.md # This file
βββ π CONTRIBUTING.md # Contribution guidelines
βββ π LICENSE # GNU GENERAL PUBLIC LICENSE
π Quick Start Get up and running in under 2 minutes!
Prerequisites A modern web browser (Chrome, Firefox, Edge, Safari)
Basic knowledge of JSON (for creating presentations)
Git installed (optional, for cloning)
Installation Option 1: Clone the Repository # Clone the repository
git clone https://github.com/BUDEGlobalEnterprise/bude-global-tech-presentations.git
# Navigate to the project directory
cd bude-global-tech-presentations
# Open in browser
open index.html
# Or on Windows: start index.html
# Or on Linux: xdg-open index.htmlOption 2: Download ZIP Download the latest release
Extract the ZIP file
Open index.html in your browser
Option 3: GitHub Pages (Live Demo) Simply visit: https://budeglobalenterprise.github.io/bude-global-tech-presentations
π How to View Presentations Browser Experience Open the Platform : Launch index.html in your browser
Browse Presentations : View all available presentations in the selector modal
Search : Type keywords to filter presentations instantly
Select : Click on any presentation to begin viewing
Navigate : Use arrow keys or on-screen controls to move between slides
Return Home : Press H to return to the presentation selector
Navigation Controls ActionKeyboardMouse/Touch Next Slideβ or β or SpaceClick right arrowPrevious Slideβ or βClick left arrowScroll Slideβ / β (if content overflows)Mouse wheelFirst SlideHome-Last SlideEnd-Slide OverviewEsc or O-FullscreenF-Return to SelectorH-
β How to Add a New Presentation Adding a new presentation is straightforward and takes just 3 steps!
Step 1: Create Your JSON File Create a new .json file in the presentations/ directory:
touch presentations/my-awesome-tech-talk.jsonUse the template structure (see Presentation JSON Schema ) or copy from templates/sample-presentation.json.
Step 2: Update Configuration Open index.html and locate the PRESENTATIONS_CONFIG array. Add your presentation:
const PRESENTATIONS_CONFIG = [
// ... existing presentations ...
{
file: 'presentations/my-awesome-tech-talk.json',
title: 'My Awesome Tech Talk',
description: 'A comprehensive guide to an amazing technology',
keywords: ['awesome', 'tech', 'innovation', 'tutorial']
}
];Step 3: Test & Commit # Test locally
open index.html
# Commit your changes
git add presentations/my-awesome-tech-talk.json index.html
git commit -m "Add: My Awesome Tech Talk presentation"
git push origin mainThat's it! Your presentation is now live and searchable! π
π Presentation JSON Schema Basic Structure {
"presentation": {
"topics": [
{
"id": "unique-topic-id",
"title": "Topic Title",
"slides": [
{
"type": "title|presenter|topic-title|content|qa|thank-you",
"title": "Slide Title",
"emoji": "π",
"box": {
"title": "Box Title",
"content": "Box content with <strong>HTML</strong>",
"code": "const example = 'code block';",
"list": [
{ "emoji": "β
", "text": "List item with emoji" },
{ "emoji": "β", "text": "Another item" }
]
},
"list": [
{ "emoji": "π", "text": "Top-level list item" }
],
"note": {
"text": "Additional note or tip"
}
}
]
}
]
}
}Slide Types 1. Title Slide {
"type": "title",
"title": "Presentation Title",
"subtitle": "Subtitle or tagline"
}2. Presenter Slide {
"type": "presenter",
"name": "Your Name",
"title": "Your Title",
"experience": "Years of experience",
"oss_experience": "OSS contribution details",
"github": "https://github.com/username",
"website": "https://yoursite.com"
}3. Topic Title Slide {
"type": "topic-title",
"title": "Section Title",
"box": {
"content": "Section introduction"
}
}4. Content Slide {
"type": "content",
"emoji": "π‘",
"title": "Slide Title",
"box": {
"title": "Optional box title",
"content": "Main content",
"code": "// Code example\nfunction hello() {\n console.log('Hello');\n}",
"list": [
{ "emoji": "β
", "text": "Feature one" },
{ "emoji": "β
", "text": "Feature two" }
]
},
"list": [
{ "emoji": "π", "text": "Additional point" }
],
"note": {
"text": "Pro tip or note"
}
}5. Q&A Slide {
"type": "qa",
"title": "Questions? π¬",
"content": "Your questions are welcome!"
}6. Thank You Slide {
"type": "thank-you",
"title": "Thank You! π",
"box": {
"content": "Closing message",
"note": "Final thoughts"
},
"footer": {
"org": "Organization Name",
"tagline": "Your tagline"
}
}HTML Support You can use HTML tags in content:
β¨οΈ Keyboard Shortcuts Presentation Navigation KeyAction β β Space PgDnNext slideβ β PgUpPrevious slideHomeFirst slideEndLast slideEsc OSlide overview modeFFullscreen modeSSpeaker notes (if available)B .Blackout/pauseHReturn to presentation selector
Slide Scrolling (Long Content) KeyAction βScroll down (if slide has overflow)βScroll up (if slide has overflow)
Animation Controls KeyAnimation Mode 1Floating Shapes2Gradient Blobs3Neon Waves4Animated Grid5Particle Field6Pulse Rings7Parallax Layers8Cosmic Dust
π€ Contributing We warmly welcome contributions from developers of all skill levels! Whether you're fixing typos, adding presentations, or building new features, your contribution matters.
Ways to Contribute π Add Presentations : Share your knowledge on any tech topic
π Report Bugs : Found an issue? Open an issue
π‘ Suggest Features : Have ideas? We'd love to hear them
π Improve Documentation : Help make our docs clearer
π¨ Design Enhancements : Improve UI/UX
π§ Code Improvements : Refactor, optimize, or add features
Contribution Workflow Fork the repository
Create a feature branch (git checkout -b feature/amazing-feature)
Make your changes
Test thoroughly
Commit with clear messages (git commit -m 'Add: Amazing feature')
Push to your fork (git push origin feature/amazing-feature)
Open a Pull Request
Commit Message Convention Type: Brief description
Types:
- Add: New feature or presentation
- Fix: Bug fix
- Update: Update existing content
- Docs: Documentation changes
- Style: Code style changes (formatting)
- Refactor: Code refactoring
- Test: Adding tests
- Chore: Maintenance tasks
Example : Add: Introduction to Kubernetes presentation
For detailed guidelines, see CONTRIBUTING.md .
π Available Presentations Programming Languages π Introduction to Python - From basics to advanced topics
π― C# Programming - Modern C# with .NET
βοΈ React.js - Building modern web apps
Frameworks & Libraries π± .NET MAUI - Cross-platform app development
π¨ Tailwind CSS - Utility-first CSS framework
π
±οΈ Bootstrap - Responsive web design
π§ Frappe Framework - Full-stack Python framework
π ERPNext - Open-source ERP system
DevOps & Tools π§ Linux Fundamentals - Command line mastery
π Git & GitHub - Version control essentials
π Gitea - Self-hosted Git service
π³ Docker - Containerization basics
Security & Identity Analytics & BI Open Source More presentations are added regularly by our community!
π§ Customization Branding Update colors in index.html CSS variables:
:root {
--bude-primary: #0060a0; /* Primary brand color */
--bude-purple: #6f42c1; /* Secondary color */
--bude-pink: #cb6ce6; /* Accent color */
--bude-dark: #2c3e50; /* Dark text */
}Fonts Replace the Molot font in assets/fonts/ and update the @font-face rule:
@font-face {
font-family: 'YourFont';
src: url('assets/fonts/YourFont.otf') format('opentype');
}Logo Replace assets/images/budeglobal_logo.png with your logo (recommended size: 400x400px).
Footer Links Update social links in the <footer> section of index.html.
β FAQ Q: Can I use this for my own presentations? A: Absolutely! This project is open-source under GNU GENERAL PUBLIC LICENSE. Feel free to fork and customize.
Q: Do I need a server to host this? A: No! It's a static site. You can host on GitHub Pages, Netlify, Vercel, or any static hosting service.
Q: Can I export presentations to PDF? A: Yes! Use your browser's print function (Ctrl+P) and select "Save as PDF". Reveal.js handles print styling automatically.
Q: How do I add speaker notes? A: Reveal.js supports speaker notes. Press S during presentation to open speaker view.
Q: Can I embed videos or interactive elements? A: Yes! You can use HTML in your JSON content, including <iframe>, <video>, and interactive elements.
Q: Is there a limit to slide count? A: No technical limit, but we recommend keeping presentations under 100 slides for optimal performance.
Q: Can I use this offline? A: Mostly yes, but external resources (CDN fonts, icons) require internet. You can download and self-host these for full offline support.
Β©οΈ License This project is licensed under the GNU GENERAL PUBLIC LICENSE - see the LICENSE file for details.
What This Means β
You can :
Use commercially
Modify and distribute
Use privately
Sublicense
β You cannot :
π You must :
π Terms and Conditions By accessing and using this service, you agree to be bound by our Terms and Conditions .
π Acknowledgments Special thanks to:
OSSPhilippines/oss-101 - For inspiration and attribution
Reveal.js - Hakim El Hattab for the amazing presentation framework
Remixicon - For the beautiful icon system
Bude Global Community - For contributing presentations and feedback
All Contributors - Thank you for making this project better!
π§ Contact Bude Global Enterprise Support β Star this repository if you find it helpful!
Made with β€οΈ by Bude Global Enterprise
" />
Bude Global Tech Presentations
Skip to Main Content
FOSS Hack 2026
>
All Projects
>
Bude Global Tech Presentations
Bude Global Tech Presentations
Bude Global Tech Presentations β a cutting-edge platform designed to democratize technical knowledge through engaging, interactive presentations. Built by developers, for developers, this platform serves as a centralized hub where the Bude Global community can discover, share, and learn from expertly crafted technical content.
Description
π Bude Global Tech Presentations π
A Dynamic, Interactive Platform for Technical Knowledge Sharing
π Join our WhatsApp Community π
View Demo β’ Report Bug β’ Request Feature
Scan the QR to support the project π
Sponsors Become a sponsor and get your logo on our README on GitHub with a link to your site.
π Overview Welcome to the official repository for Bude Global Tech Presentations β a cutting-edge platform designed to democratize technical knowledge through engaging, interactive presentations. Built by developers, for developers, this platform serves as a centralized hub where the Bude Global community can discover, share, and learn from expertly crafted technical content.
Important : By using this service, you agree to our Terms and Conditions and Privacy Policy .
π― Mission Our mission is to foster a culture of continuous learning and knowledge sharing by providing an accessible, modern platform for technical presentations that covers everything from programming languages and frameworks to DevOps tools and best practices.
π Table of Contents β¨ Features π¨ Core Functionality π Smart Discovery System : Automatically scans and validates presentation JSON files with built-in format checking
β‘ Real-Time Search : Instantly filter presentations by title, description, or keywords with autocomplete suggestions
π± Fully Responsive : Seamless experience across desktops, tablets, and mobile devices with adaptive layouts
π Beautiful UI/UX : Modern gradient designs, smooth animations, and intuitive navigation
β¨οΈ Keyboard Navigation : Full keyboard support for power users (arrow keys, shortcuts, and more)
π Format Validation : Only displays presentations that pass strict JSON schema validation
π― Modular Architecture : Clean separation of concerns with easy-to-maintain codebase
π Presentation Features π Multi-Topic Support : Organize content into logical sections and topics
π» Code Syntax Highlighting : Beautiful code blocks with proper formatting
π¨ Rich Content Types : Support for text, code, lists, images, emojis, and custom styling
π Speaker Notes : Built-in support for presenter notes (Reveal.js feature)
π Smooth Transitions : Professional slide transitions and animations
π Scrollable Content : Handles long slides with smooth scrolling
π§ Developer Experience π¦ JSON-Based : Simple JSON format for easy content creation
π¨ Customizable Themes : Easy to customize colors, fonts, and styles
π Extensible : Built on Reveal.js with support for plugins
π Template System : Pre-built templates for quick presentation creation
π No Build Process : Pure HTML/CSS/JS β no compilation required
π¬ Demo & Screenshots π Home Page - Presentation Selector Smart search and autocomplete for quick presentation discovery
π€ Author/Presenter Page Professional presenter introduction with social links
π React Presentation Example Clean, modern slide design with code examples
π οΈ Technologies Used This project leverages modern web technologies for optimal performance and developer experience:
TechnologyPurposeVersionHTML5 Structure and semantic markupLatestCSS3 Styling, animations, and responsive designLatestJavaScript (ES6+) Dynamic behavior and presentation logicES2020+Reveal.js Presentation framework4.6.0Remixicon Icon system4.3.0Google Fonts Custom typography (Molot)-
Why These Technologies? β
No dependencies : Zero npm packages, runs directly in browser
β
Fast loading : Minimal external resources with CDN optimization
β
Easy deployment : Static files β host anywhere
β
Cross-browser : Compatible with all modern browsers
β‘ Performance Optimizations This project includes several performance optimizations:
OptimizationBenefitPreconnect hints Faster CDN resource loadingDNS prefetch Early DNS resolutionDeferred scripts Non-blocking page renderSRI hashes Secure CDN resourcesLazy animations Animations start after page loadAdaptive quality Auto-adjusts for mobile devices
π§© Modular Architecture The codebase is organized into modular files in src/ for easier maintenance:
src/
βββ js/
β βββ config.js # Global configuration
β βββ main.js # Entry point
β βββ animations/ # 8 animation modes
β βββ ui/ # UI components
β βββ utils/ # Utility functions
βββ css/
βββ base/ # Variables, reset
βββ components/ # Header, cards, footer, etc.
βββ utilities/ # Responsive styles
ποΈ Project Structure bude-global-tech-presentations/
β
βββ π assets/ # Static assets
β βββ π fonts/ # Custom fonts (Molot)
β β βββ Molot.otf
β βββ π icons/ # Custom icons
β βββ π images/ # Images and logos
β βββ budeglobal_logo.png
β βββ π Readme/ # README screenshots
β βββ home.png
β βββ author.png
β βββ intro-react.png
β
βββ π presentations/ # Presentation JSON files
β βββ intro-oss.json # Open Source Software
β βββ intro-python.json # Python Programming
β βββ intro-csharp.json # C# Programming
β βββ ... (40+ presentations)
β
βββ π src/ # Modular source code (for bundlers)
β βββ π js/ # JavaScript modules
β β βββ config.js # Animation configuration
β β βββ main.js # Entry point
β β βββ π animations/ # 8 animation modes
β β βββ π ui/ # UI components
β β βββ π utils/ # Utility functions
β βββ π css/ # CSS modules
β βββ π base/ # Variables, reset
β βββ π components/ # Header, cards, footer
β βββ π utilities/ # Responsive styles
β
βββ π templates/ # Template files
β βββ sample-presentation.json # Template for new presentations
β
βββ π index.html # Main entry point
βββ π presentations.js # Presentation configuration
βββ π presenter.js # Animation & slide rendering
βββ π loader.js # Dynamic loading logic
βββ π style.css # Custom styles
βββ π github-live.js # GitHub API integration
βββ π theme-switcher.js # Dark/Light theme toggle
βββ π orientation-handler.js # Mobile orientation handler
βββ π README.md # This file
βββ π CONTRIBUTING.md # Contribution guidelines
βββ π LICENSE # GNU GENERAL PUBLIC LICENSE
π Quick Start Get up and running in under 2 minutes!
Prerequisites A modern web browser (Chrome, Firefox, Edge, Safari)
Basic knowledge of JSON (for creating presentations)
Git installed (optional, for cloning)
Installation Option 1: Clone the Repository # Clone the repository
git clone https://github.com/BUDEGlobalEnterprise/bude-global-tech-presentations.git
# Navigate to the project directory
cd bude-global-tech-presentations
# Open in browser
open index.html
# Or on Windows: start index.html
# Or on Linux: xdg-open index.htmlOption 2: Download ZIP Download the latest release
Extract the ZIP file
Open index.html in your browser
Option 3: GitHub Pages (Live Demo) Simply visit: https://budeglobalenterprise.github.io/bude-global-tech-presentations
π How to View Presentations Browser Experience Open the Platform : Launch index.html in your browser
Browse Presentations : View all available presentations in the selector modal
Search : Type keywords to filter presentations instantly
Select : Click on any presentation to begin viewing
Navigate : Use arrow keys or on-screen controls to move between slides
Return Home : Press H to return to the presentation selector
Navigation Controls ActionKeyboardMouse/Touch Next Slideβ or β or SpaceClick right arrowPrevious Slideβ or βClick left arrowScroll Slideβ / β (if content overflows)Mouse wheelFirst SlideHome-Last SlideEnd-Slide OverviewEsc or O-FullscreenF-Return to SelectorH-
β How to Add a New Presentation Adding a new presentation is straightforward and takes just 3 steps!
Step 1: Create Your JSON File Create a new .json file in the presentations/ directory:
touch presentations/my-awesome-tech-talk.jsonUse the template structure (see Presentation JSON Schema ) or copy from templates/sample-presentation.json.
Step 2: Update Configuration Open index.html and locate the PRESENTATIONS_CONFIG array. Add your presentation:
const PRESENTATIONS_CONFIG = [
// ... existing presentations ...
{
file: 'presentations/my-awesome-tech-talk.json',
title: 'My Awesome Tech Talk',
description: 'A comprehensive guide to an amazing technology',
keywords: ['awesome', 'tech', 'innovation', 'tutorial']
}
];Step 3: Test & Commit # Test locally
open index.html
# Commit your changes
git add presentations/my-awesome-tech-talk.json index.html
git commit -m "Add: My Awesome Tech Talk presentation"
git push origin mainThat's it! Your presentation is now live and searchable! π
π Presentation JSON Schema Basic Structure {
"presentation": {
"topics": [
{
"id": "unique-topic-id",
"title": "Topic Title",
"slides": [
{
"type": "title|presenter|topic-title|content|qa|thank-you",
"title": "Slide Title",
"emoji": "π",
"box": {
"title": "Box Title",
"content": "Box content with <strong>HTML</strong>",
"code": "const example = 'code block';",
"list": [
{ "emoji": "β
", "text": "List item with emoji" },
{ "emoji": "β", "text": "Another item" }
]
},
"list": [
{ "emoji": "π", "text": "Top-level list item" }
],
"note": {
"text": "Additional note or tip"
}
}
]
}
]
}
}Slide Types 1. Title Slide {
"type": "title",
"title": "Presentation Title",
"subtitle": "Subtitle or tagline"
}2. Presenter Slide {
"type": "presenter",
"name": "Your Name",
"title": "Your Title",
"experience": "Years of experience",
"oss_experience": "OSS contribution details",
"github": "https://github.com/username",
"website": "https://yoursite.com"
}3. Topic Title Slide {
"type": "topic-title",
"title": "Section Title",
"box": {
"content": "Section introduction"
}
}4. Content Slide {
"type": "content",
"emoji": "π‘",
"title": "Slide Title",
"box": {
"title": "Optional box title",
"content": "Main content",
"code": "// Code example\nfunction hello() {\n console.log('Hello');\n}",
"list": [
{ "emoji": "β
", "text": "Feature one" },
{ "emoji": "β
", "text": "Feature two" }
]
},
"list": [
{ "emoji": "π", "text": "Additional point" }
],
"note": {
"text": "Pro tip or note"
}
}5. Q&A Slide {
"type": "qa",
"title": "Questions? π¬",
"content": "Your questions are welcome!"
}6. Thank You Slide {
"type": "thank-you",
"title": "Thank You! π",
"box": {
"content": "Closing message",
"note": "Final thoughts"
},
"footer": {
"org": "Organization Name",
"tagline": "Your tagline"
}
}HTML Support You can use HTML tags in content:
β¨οΈ Keyboard Shortcuts Presentation Navigation KeyAction β β Space PgDnNext slideβ β PgUpPrevious slideHomeFirst slideEndLast slideEsc OSlide overview modeFFullscreen modeSSpeaker notes (if available)B .Blackout/pauseHReturn to presentation selector
Slide Scrolling (Long Content) KeyAction βScroll down (if slide has overflow)βScroll up (if slide has overflow)
Animation Controls KeyAnimation Mode 1Floating Shapes2Gradient Blobs3Neon Waves4Animated Grid5Particle Field6Pulse Rings7Parallax Layers8Cosmic Dust
π€ Contributing We warmly welcome contributions from developers of all skill levels! Whether you're fixing typos, adding presentations, or building new features, your contribution matters.
Ways to Contribute π Add Presentations : Share your knowledge on any tech topic
π Report Bugs : Found an issue? Open an issue
π‘ Suggest Features : Have ideas? We'd love to hear them
π Improve Documentation : Help make our docs clearer
π¨ Design Enhancements : Improve UI/UX
π§ Code Improvements : Refactor, optimize, or add features
Contribution Workflow Fork the repository
Create a feature branch (git checkout -b feature/amazing-feature)
Make your changes
Test thoroughly
Commit with clear messages (git commit -m 'Add: Amazing feature')
Push to your fork (git push origin feature/amazing-feature)
Open a Pull Request
Commit Message Convention Type: Brief description
Types:
- Add: New feature or presentation
- Fix: Bug fix
- Update: Update existing content
- Docs: Documentation changes
- Style: Code style changes (formatting)
- Refactor: Code refactoring
- Test: Adding tests
- Chore: Maintenance tasks
Example : Add: Introduction to Kubernetes presentation
For detailed guidelines, see CONTRIBUTING.md .
π Available Presentations Programming Languages π Introduction to Python - From basics to advanced topics
π― C# Programming - Modern C# with .NET
βοΈ React.js - Building modern web apps
Frameworks & Libraries π± .NET MAUI - Cross-platform app development
π¨ Tailwind CSS - Utility-first CSS framework
π
±οΈ Bootstrap - Responsive web design
π§ Frappe Framework - Full-stack Python framework
π ERPNext - Open-source ERP system
DevOps & Tools π§ Linux Fundamentals - Command line mastery
π Git & GitHub - Version control essentials
π Gitea - Self-hosted Git service
π³ Docker - Containerization basics
Security & Identity Analytics & BI Open Source More presentations are added regularly by our community!
π§ Customization Branding Update colors in index.html CSS variables:
:root {
--bude-primary: #0060a0; /* Primary brand color */
--bude-purple: #6f42c1; /* Secondary color */
--bude-pink: #cb6ce6; /* Accent color */
--bude-dark: #2c3e50; /* Dark text */
}Fonts Replace the Molot font in assets/fonts/ and update the @font-face rule:
@font-face {
font-family: 'YourFont';
src: url('assets/fonts/YourFont.otf') format('opentype');
}Logo Replace assets/images/budeglobal_logo.png with your logo (recommended size: 400x400px).
Footer Links Update social links in the <footer> section of index.html.
β FAQ Q: Can I use this for my own presentations? A: Absolutely! This project is open-source under GNU GENERAL PUBLIC LICENSE. Feel free to fork and customize.
Q: Do I need a server to host this? A: No! It's a static site. You can host on GitHub Pages, Netlify, Vercel, or any static hosting service.
Q: Can I export presentations to PDF? A: Yes! Use your browser's print function (Ctrl+P) and select "Save as PDF". Reveal.js handles print styling automatically.
Q: How do I add speaker notes? A: Reveal.js supports speaker notes. Press S during presentation to open speaker view.
Q: Can I embed videos or interactive elements? A: Yes! You can use HTML in your JSON content, including <iframe>, <video>, and interactive elements.
Q: Is there a limit to slide count? A: No technical limit, but we recommend keeping presentations under 100 slides for optimal performance.
Q: Can I use this offline? A: Mostly yes, but external resources (CDN fonts, icons) require internet. You can download and self-host these for full offline support.
Β©οΈ License This project is licensed under the GNU GENERAL PUBLIC LICENSE - see the LICENSE file for details.
What This Means β
You can :
Use commercially
Modify and distribute
Use privately
Sublicense
β You cannot :
π You must :
π Terms and Conditions By accessing and using this service, you agree to be bound by our Terms and Conditions .
π Acknowledgments Special thanks to:
OSSPhilippines/oss-101 - For inspiration and attribution
Reveal.js - Hakim El Hattab for the amazing presentation framework
Remixicon - For the beautiful icon system
Bude Global Community - For contributing presentations and feedback
All Contributors - Thank you for making this project better!
π§ Contact Bude Global Enterprise Support β Star this repository if you find it helpful!
Made with β€οΈ by Bude Global Enterprise
Issues & PRs Board
No issues or pull requests added.