Introduction
Welcome to the Syneo/Barcoding documentation. This is a comprehensive multi-modular enterprise management system designed for production analysis, user interactions, and data visualization.
What is Syneo/Barcoding?
Syneo/Barcoding is a monorepo-based enterprise system consisting of:
- API Backend - LoopBack 4 REST API with MySQL database
- Web Applications - Three Angular 17 application instances
- Desktop Application - Electron-based desktop wrapper
- Automation Bot - Puppeteer-based automation and testing
Key Features
Multi-Instance Architecture
The system provides three specialized application instances:
- Backend - Production analysis and daily operations dashboard
- Front - User interactions and job tracking
- Dashboard - External views and data visualization
All three instances share a common set of 70+ reusable packages, ensuring consistency and reducing code duplication.
Comprehensive API
The LoopBack 4 API provides:
- 606+ controllers for various business operations
- 582+ repositories for data access
- 22 services for business logic
- JWT-based authentication
- MySQL database with Knex migrations
Dynamic Widget System
A database-driven widget system allows users to:
- Add and remove widgets dynamically
- Resize and reposition widgets
- Customize dashboard layouts per user
- Share widget configurations
Modular Feature System
The system includes 29 feature modules covering:
- NCR (Non-Conformance Reports)
- Ticket management
- HR operations
- IT management
- And many more...
Technology Choices
Why LoopBack 4?
LoopBack 4 provides:
- Strong TypeScript support
- Dependency injection out of the box
- OpenAPI specification generation
- Built-in REST API framework
- Database abstraction with connectors
Why Angular 17?
Angular 17 offers:
- Enterprise-ready framework
- Strong typing with TypeScript
- Powerful CLI for scaffolding
- Excellent testing support
- Large ecosystem of components
Why NGXS?
NGXS state management provides:
- Simple, intuitive API
- Type-safe state management
- Excellent DevTools support
- Less boilerplate than NgRx
- Better performance
Getting Help
If you encounter issues or have questions:
- Check this documentation first
- Review the
/workspace/CLAUDE.mdfile for AI assistant guidance - Check the API's REST Explorer at
/explorer - Review the monorepo structure
Next Steps
- Getting Started - Set up your development environment
- Project Structure - Understand the codebase layout
- Architecture Overview - Learn the system architecture