Skip to content

Twiitchter/Xenon-BA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

109 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

XeonB CRM

A comprehensive Customer Relationship Management system for Brightly's Assetic Asset Management API. Integrating CRM and portal logging and management services for front-end users.

Features

Authentication System

  • Simple username/password authentication
  • SSO support via OAuth2
  • SSO support via SAML
  • JWT-based token management

Brightly Assetic API Integration

  • Middleware API to communicate with Assetic API
  • Asset synchronization
  • Change tracking and monitoring
  • Real-time data updates

Database Management

  • PostgreSQL database for asset tracking
  • Asset change history and audit logs
  • Email and report logging
  • Optimized indexes for performance

PDF Report Generation

  • Asset reports with customizable filters
  • Change reports for auditing
  • Professional PDF formatting
  • Automated report generation

Email Capabilities

  • SMTP email service
  • Email with PDF attachments
  • Change notifications
  • Customizable email templates

Quick Start

Option 1: GitHub Codespaces (Recommended)

Open this repository in GitHub Codespaces for instant setup with Docker-in-Docker:

  1. Click "Code" → "Codespaces" → "Create codespace" on GitHub
  2. Wait for the environment to build (2-3 minutes)
  3. Everything is configured automatically!

See CODESPACES.md for details.

Option 2: Docker (Local Development)

# Clone the repository
git clone https://github.com/Twiitchter/XeonB.git
cd XeonB

# Configure environment
cp .env.example .env
# Edit .env with your configuration

# Start with the smart launcher (auto-detects environment)
./docker-dev.sh up --build

# Reboot the Docker dev stack with a fresh rebuild
npm run reboot

# In Codespaces, this automatically remaps MSSQL host port to 11433
# to avoid conflicts with the helper DB container on 1433.

# Run migrations
docker compose -f docker-compose.dev.yml exec backend npm run migrate
# Or if using docker-dev.sh: ./docker-dev.sh exec backend npm run migrate

Option 3: Local Development (Without Docker)

# Install dependencies
npm install
cd client && npm install && cd ..

# Configure environment
cp .env.example .env
# Edit .env with your configuration

# Run database migrations (requires PostgreSQL installed)
npm run migrate

# Start development server
npm run dev

The application will be available at:

Documentation

Architecture

XeonB/
├── src/server/           # Backend Node.js/Express server
│   ├── routes/          # API routes
│   ├── services/        # Business logic (Assetic, PDF, Email)
│   ├── database/        # Database configuration and migrations
│   ├── config/          # Passport and authentication config
│   └── middleware/      # Authentication middleware
├── client/              # React frontend
│   ├── src/
│   │   ├── pages/      # React pages (Login, Dashboard, Assets, Reports)
│   │   ├── services/   # API service clients
│   │   └── components/ # Reusable React components
└── docs/               # Documentation

Technology Stack

Backend:

  • Node.js & Express
  • TypeScript
  • PostgreSQL
  • Passport.js (Authentication)
  • PDFKit (PDF generation)
  • Nodemailer (Email)
  • Axios (HTTP client)

Frontend:

  • React 18
  • TypeScript
  • Vite (Build tool)
  • React Router

Requirements

  • Node.js 18 or higher
  • PostgreSQL 12 or higher
  • Brightly Assetic API credentials

License

Standard MIT license Applies. As at 29-April-2026

About

A working Example of a CRM for Brightly (A Siemens Company) - Assetic: The Maintenance Module's API. Integrating CRM and Portal logging and management services for front end users. Extrapolate data into usable formats.

Resources

License

Stars

Watchers

Forks

Contributors

Languages