Skip to content

telemetrytv/TelemetryX-Applications-Library

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TelemetryX Applications Library

A collection of production-ready applications for the TelemetryX digital signage platform.

Overview

What is TelemetryX?

TelemetryX is a revolutionary low-code platform that transforms commercial digital displays into intelligent, interactive application platforms. Unlike traditional digital signage solutions that require complex content management systems and limited functionality, TelemetryX enables developers to build and deploy full-fledged applications using familiar web technologies like React, TypeScript, and modern JavaScript.

Purpose of This Repository

This repository serves as a centralized library of production-ready applications specifically designed for the TelemetryX ecosystem. Each application here is:

  • Completely Independent: Every app is a standalone project with its own dependencies, build system, and configuration
  • Production-Ready: Built for 24/7 operation on commercial displays in retail, corporate, healthcare, and public spaces
  • SDK-Integrated: Leverages the @telemetryx/sdk for seamless integration with device capabilities, data sources, and platform features
  • Display-Optimized: Designed for viewing distances of 6-10 feet with high contrast, large text, and clear visual hierarchies
  • Enterprise-Grade: Includes comprehensive error handling, offline fallbacks, and memory management for continuous operation

Key Features

  • Rapid Development: Use tx init to scaffold a new application in seconds with all the boilerplate configured
  • Built-in Development Harness: Each app includes a development server with dual-view testing (render + settings)
  • Real-time Data Integration: Access weather, calendar, RSS feeds, social media, and custom data sources through the SDK
  • Device Capabilities: Interact with screen hardware, sensors, and local storage through a unified API
  • Hot Module Replacement: Development server with instant updates as you code
  • TypeScript First: Full type safety with TypeScript 5.7+ and strict mode enabled

Target Environments

Applications in this library are designed to run on:

  • Digital Signage Displays: Commercial screens in retail stores, lobbies, waiting rooms
  • Interactive Kiosks: Touch-enabled displays for wayfinding, information, and engagement
  • Video Walls: Multi-screen installations in corporate offices and public spaces
  • Meeting Room Displays: Conference room schedulers and information boards
  • Menu Boards: Dynamic pricing and content for restaurants and cafes

Why TelemetryX?

  • Familiar Stack: Build with React, TypeScript, and modern web technologies you already know
  • No Proprietary Tools: Use your favorite IDE, version control, and development workflow
  • Platform Agnostic: Applications work across different display hardware and operating systems
  • Scalable: Deploy one app or thousands, manage from a single dashboard
  • Real-time Updates: Push updates instantly to all displays without downtime

Quick Start

Prerequisites

  • Node.js 21+ and pnpm (or npm)
  • TelemetryX CLI for development and testing

Install TelemetryX CLI

# Install globally with pnpm
pnpm add -g @telemetryx/cli

# Or with npm
npm install -g @telemetryx/cli

Create a New Application

# Generate a new TelemetryX application
tx init

# Follow the prompts to:
# - Choose application name
# - Select template (creates a barebones hello world)
# - Configure mount points
# The CLI will create a complete application structure

Development Workflow

# Clone the repository
git clone [repository-url]
cd TelemetryX-Applications-Library

# Navigate to an application
cd applications/[app-name]

# Install dependencies
pnpm install

# Start development server
pnpm dev  # Runs 'tx serve'
# The TelemetryX harness opens automatically at http://localhost:6969
# Your app runs on http://localhost:3000 (configured in telemetry.config.json)

# Build for production (if build scripts are configured)
pnpm run build

Repository Structure

TelemetryX-Applications-Library/
├── applications/           # Independent applications
│   ├── example/           # Example app (generated by 'tx init')
│   │   ├── src/          # Source code
│   │   │   ├── App.tsx   # Main app with React Router
│   │   │   ├── main.tsx  # Application entry point
│   │   │   └── views/    # View components
│   │   │       ├── Render.tsx    # Main display view
│   │   │       └── Settings.tsx  # Configuration view
│   │   ├── assets/       # Static assets
│   │   ├── index.html    # HTML entry point
│   │   ├── package.json  # Dependencies
│   │   ├── vite.config.ts # Build configuration
│   │   └── telemetry.config.json # TelemetryX config
│   └── [your-apps]/      # Your custom applications
├── scripts/               # Utility scripts
│   ├── build-all-apps.js # Build all applications
│   └── create-placeholder.js # Generate placeholder HTMLs
├── docs/                  # Shared documentation
│   ├── SDK_GUIDE.md      # SDK documentation
│   ├── CONTRIBUTING.md   # Contribution guidelines
│   └── CHANGELOG.md      # Version history
├── AGENTS.md             # AI assistant guide
├── CLAUDE.md             # Claude-specific notes
└── README.md             # This file

Available Applications

Each application in the applications/ directory is production-ready and includes:

  • Full TypeScript support with strict mode
  • React 19.1+ with modern hooks
  • TelemetryX SDK integration
  • Error boundaries for 24/7 operation
  • Offline fallback capabilities
  • Optimized for distance viewing

Creating New Applications

Using TelemetryX CLI (Recommended)

The easiest way to create a new application:

# From the applications directory
cd applications/
tx init

# The CLI will:
# - Create a barebones hello world application
# - Set up mount points
# - Install dependencies
# - Configure the development harness

# Then run the app:
cd [your-app-name]
pnpm dev
# Open http://localhost:6969 in your browser

Manual Creation

If creating manually, each application must include:

applications/your-app/
├── src/
│   ├── App.tsx              # Main app with router
│   ├── main.tsx             # App entry point
│   └── views/
│       ├── Render.tsx       # Render view component
│       └── Settings.tsx     # Settings view component
├── assets/                  # Static assets
├── index.html              # HTML entry point
├── package.json            # Dependencies
├── tsconfig.json           # TypeScript config
├── vite.config.ts          # Vite configuration
├── telemetry.config.json   # TelemetryX configuration
└── pnpm-workspace.yaml     # PNPM workspace config

Package Configuration

{
  "name": "your-app",
  "version": "0.1.0",
  "description": "A telemetryX application",
  "scripts": {
    "dev": "tx serve"
  },
  "dependencies": {
    "@telemetryx/sdk": "^1.0.0-alpha23",
    "react": "^19.1.1",
    "react-dom": "^19.1.1",
    "react-router": "^7.9.1"
  },
  "devDependencies": {
    "@telemetryx/cli": "^1.0.0-alpha23",
    "@types/react": "^19.1.12",
    "@vitejs/plugin-react": "^5.0.2",
    "typescript": "^5.8.3",
    "vite": "^6.3.5"
  }
}

TelemetryX Configuration

Create a telemetry.config.json file:

{
  "name": "your-app",
  "version": "0.1.0",
  "mountPoints": {
    "render": "/render",
    "settings": "/settings"
  },
  "devServer": {
    "runCommand": "vite --port 3000",
    "url": "http://localhost:3000"
  }
}

Testing Applications

Development Server

Each application includes a built-in development harness:

# From your application directory
cd applications/[app-name]

# Start the development server
pnpm dev  # Runs 'tx serve'

# The TelemetryX harness opens at:
# http://localhost:6969

Development Features

The pnpm dev command provides:

  • Built-in Harness: Complete TelemetryX development environment
  • Dual View: See both render and settings interfaces
  • SDK Mocking: Complete TelemetryX SDK simulation
  • Hot Reload: Automatic refresh on file changes
  • Device Simulation: Test different screen sizes and capabilities
  • Mock Data: Weather, calendar, RSS, and social media data

Contributing

When contributing applications:

  1. Independence: Each app must be completely standalone
  2. Quality: Production-ready for 24/7 operation
  3. Documentation: Include README and configuration examples
  4. Testing: Test with tx dev before submission
  5. Performance: Optimize for long-running displays
  6. Accessibility: High contrast, large text for distance viewing

Best Practices

  • ✅ Use TypeScript strict mode
  • ✅ Implement error boundaries
  • ✅ Include offline fallbacks
  • ✅ Prevent memory leaks
  • ✅ Optimize for distance viewing
  • ✅ Use high contrast colors
  • ✅ Implement retry logic
  • ✅ Cache data appropriately
  • ✅ Document configuration
  • ✅ Test for 24+ hour operation

Support

  • Documentation: https://docs.telemetryx.ai
  • SDK Reference: Included with @telemetryx/sdk
  • CLI Help: tx --help
  • Support: Via TelemetryX dashboard chat

License

See LICENSE file in the repository root.


Note: Applications in this library are designed for commercial digital signage displays that operate continuously. Reliability and performance are critical.

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •