# Demos

Discover an extensive collection of demos at <https://github.com/ortus-boxlang/bx-demos/>. This repository offers a wide range of example projects and code snippets designed to illustrate various programming concepts, techniques, and real-world applications.

Whether you are a beginner looking to learn new skills or an experienced developer seeking advanced implementations, this resource provides valuable insights and practical demonstrations to help you enhance your understanding and expertise.

## 🚀 Demo Categories

The demo repository contains examples across multiple categories:

### 📱 **Web Applications**

* **Blog Systems** - Complete blog applications with database integration
* **Comic Book Reader** - File processing and web-based viewing applications
* **Calendar Applications** - Date/time handling and UI generation
* **File Search Tools** - Full-text search and indexing systems
* **API Integration Examples** - REST API consumption and data processing

### 📊 **Data & Integration**

* **Database Access** - MySQL, Derby, and database query examples
* **CSV Processing** - File parsing and data transformation
* **RSS Feed Aggregation** - Multi-source data collection and normalization
* **JSON Handling** - Data serialization and API responses
* **PDF Processing** - Document generation and manipulation

### 🔧 **Advanced Features**

* **Java Library Integration** - Using external JARs and Maven dependencies
* **Module Development** - Creating custom BoxLang modules with BIFs
* **Async Programming** - Background processing and concurrent operations
* **Web Scraping** - AgentQL integration and data extraction
* **AI/ML Integration** - Sentiment analysis and machine learning workflows

### 🎯 **Development Patterns**

* **MVC Applications** - Structured web application architecture
* **REST APIs** - Building and consuming web services
* **Template Systems** - Dynamic content generation
* **Custom Tags** - Reusable component development
* **CLI Tools** - Command-line application examples

## 🎮 Interactive Playground

Don't forget about [https://try.boxlang.io](https://try.boxlang.io/) - your online coding playground where you can experiment with BoxLang code directly in your browser without any local setup required.

<figure><img src="https://1598982152-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4ENvvb4b3Cmrr1qKj7y4%2Fuploads%2Fgit-blob-73028d45629a79f37456a561420557b8525c6e8a%2Fimage.png?alt=media" alt="BoxLang Try Online Interface"><figcaption><p>BoxLang online coding playground at try.boxlang.io</p></figcaption></figure>

## 📝 Featured Examples

Some notable examples from the repository include:

### **Real-World Blog Application**

Complete blog system with:

* Database integration ( MySQL/Derby )
* Custom routing and templates
* Administration interface
* Multi-user support

### **Java Library Integration**

Demonstrates how to:

* Include external JAR files
* Use Maven-style dependencies
* Integrate with Java Optional patterns
* Handle complex Java objects

### **Module Development**

Shows how to create:

* Custom Built-In Functions ( BIFs )
* Modular components
* Library packaging
* Distribution and installation

### **API Development & Consumption**

Examples of:

* REST API creation with `remote` functions
* External API integration ( Jira, AgentQL, Pinecone )
* Data transformation and caching
* Error handling patterns

## 🔨 Getting Started with Demos

1. **Clone the Repository**:

   ```bash
   git clone https://github.com/ortus-boxlang/bx-demos.git
   ```
2. **Browse Categories**:
   * `webapps/` - Full web applications
   * `modules/` - Custom module examples
   * `misc/` - Utility scripts and tools
   * Individual demo folders contain README files with setup instructions
3. **Try Online First**:
   * Visit [try.boxlang.io](https://try.boxlang.io/) for immediate experimentation
   * Copy demo code snippets to test concepts
   * No local installation required

## 🎯 Learning Path Suggestions

### **Beginners**

Start with basic examples in `misc/` folder, then explore simple web applications

### **Web Developers**

Focus on `webapps/` examples, especially the blog and API demonstrations

### **Java Developers**

Check out Java integration examples and module development patterns

### **Advanced Users**

Explore AI integration, async programming, and complex data processing examples

{% hint style="info" %}
**Pro Tip**: Each demo folder typically contains its own README with specific setup instructions, dependencies, and usage examples. Always check the README first!
{% endhint %}

{% @github-files/github-code-block url="<https://github.com/ortus-boxlang/bx-demos/>" %}
