Applications
GoGrab Space NX applications and their documentation
๐ GoGrab Space Applications
Complete documentation for all applications in the GoGrab Space ecosystem.
This section contains comprehensive guides, setup instructions, and reference documentation for each application built with our NX monorepo architecture.
๐ฑ Available Applications
๐ GoGrab Space โญ MAIN APPLICATION
The primary Angular application for the GoGrab Space platform.
Features:
- ๐จ Full-featured UI Builder with drag-and-drop
- ๐พ Advanced storage system with persistence
- ๐ญ Integrated theme system
- ๐ Real-time reactive state with signals
- ๐งช Component testing and demos
Port: 4200
๐ Docs Angular
Modern documentation system built with Angular.
Features:
- ๐ Markdown and MDC (Markdown + Components) support
- ๐ Dynamic documentation discovery
- ๐จ Interactive component examples
- ๐ Multi-language support (English/Spanish)
- ๐ Project-based access control
Port: 5010
๐จโ๐ผ Space Admin
Administrative dashboard for GoGrab Space management.
Features:
- ๐ System monitoring and analytics
- โ๏ธ Configuration management
- ๐ฅ User administration
- ๐ง System tools and utilities
Port: (check docs)
๐ Backend API
NestJS backend API server.
Features:
- ๐ Authentication and authorization
- ๐ค AI integration endpoints
- ๐พ Storage API
- ๐ Singularity logic builder API
- ๐จ UI Builder backend
Port: 3000
๐๏ธ Application Architecture
All GoGrab Space applications follow consistent architectural patterns:
Technology Stack
Framework: Angular 20+ (Standalone Components)
Build System: NX Monorepo
State: Angular Signals + NGXS (legacy)
Storage: @widgets-editor/storage
Theme: @widgets-editor/theme-system
Persistence: @widgets-editor/flash-persistence
Shared Patterns
โ Standalone Components - No NgModules, modern Angular architecture โ Signal-Based State - Reactive state with automatic change detection โ Type Safety - Full TypeScript with strict typing โ OnPush Detection - Optimized performance โ Theme Integration - Consistent styling across all apps โ Flash Persistence - Zero-config automatic state persistence
๐ Quick Start
Running Applications
# GoGrab Space (main app)
npx nx serve gograb-space
# or: yarn nx serve gograb-space
# Docs Angular
npx nx serve docs-angular
# Space Admin
npx nx serve space-admin
# Backend API
npx nx serve backend-api
Building Applications
# Build specific app
npx nx build gograb-space
# Build all apps
npx nx run-many --target=build --all
# Production build
npx nx build gograb-space --configuration=production
Testing Applications
# Run tests
npx nx test gograb-space
# Run all tests
npx nx run-many --target=test --all
# E2E tests
npx nx e2e backend-api-e2e
๐ Application Ports
| Application | Port | Status |
|---|---|---|
| GoGrab Space | 4200 | โ Active |
| Docs Angular | 5010 | โ Active |
| Space Admin | TBD | ๐ง Development |
| Backend API | 3000 | โ Active |
๐ Cross-Application Integration
Shared Libraries
All applications leverage shared libraries:
// Core functionality
import { StorageService } from '@storage-system';
import { ThemeService } from '@theme-system';
import { LogService } from '@log-system';
// UI components
import { UxButtonComponent } from '@ux-ui-core';
import { UxPortalService } from '@libs-ux/ux-portal';
import { UxTabsComponent } from '@ux-ui-extended';
// State management
import { autoFlashState } from '@flash-persistence';
// Models and types
import type { SafeAny } from '@libs-foundational/core-models';
Communication Patterns
Apps can communicate through:
- Shared State Services - Global state management
- Event Bus - Cross-app event communication
- Storage System - Shared data persistence
- Route Integration - Deep linking between apps
๐ฏ Development Guidelines
Adding New Applications
When creating a new GoGrab Space application:
Use NX Generators
npx nx generate @nx/angular:application my-appFollow Naming Conventions
- Use kebab-case for app names
- Prefix with purpose (e.g.,
editor-,ux-,admin-)
Configure Port
- Add to port list above
- Update workspace configuration
Add Documentation
- Create folder in
/apps/ - Include
_folder.mdcoverview - Add
getting-started.md - Create comprehensive index file
- Create folder in
Integrate Theme System
import { ThemeService } from '@theme-system';
Best Practices
โ
Use Path Aliases - Import from @library-name (defined in tsconfig.base.json)
โ
Leverage Shared Libraries - Don't duplicate functionality
โ
Follow Angular 20 Patterns - Signals, standalone components
โ
Implement OnPush - Optimize change detection
โ
Add Flash Persistence - Auto-save user state with @flash-persistence
โ
Integrate Theme System - Consistent styling with @theme-system
๐ Additional Resources
Configuration & Setup
- App Configuration - TypeScript, build, and NX configuration
- Import Strategies - Path aliases, barrels, and static analysis
- Debugging - Common issues and solutions
Library Documentation
- Library Structure - NX library architecture and building
- Shared Libraries - Documentation for all shared libraries
System Architecture
- Storage System - Intelligent storage architecture
- Theme System - Design system integration
- Event System - Cross-app communication
๐ All GoGrab Space applications are built with modern Angular patterns and share a consistent, high-quality architecture!
Choose an application above to explore its specific documentation, or dive into the shared systems to understand the foundation powering all our apps.