Skip to content

Getting Started with AIDDDMAP Development

Prerequisites

Before you begin development with AIDDDMAP, ensure you have the following installed:

  • Node.js (v16 or higher)
  • Docker and Docker Compose
  • Git
  • A code editor (VS Code recommended)

Quick Start

  1. Clone the Repository
git clone https://github.com/yourusername/aidddmap.git
cd aidddmap
  1. Install Dependencies
npm install
  1. Set Up Environment
cp .env.example .env
# Edit .env with your configuration
  1. Start Development Server
npm run dev

Project Structure

aidddmap/
├── src/
│   ├── app/           # Core application code
│   ├── components/    # Reusable UI components
│   ├── features/      # Feature modules
│   │   ├── idat/     # Interactive Data Assembly Tool
│   │   ├── sfdp/     # Secure Fitness Data Pipeline
│   │   └── uadm/     # Universal Agent Deployment Module
│   ├── lib/          # Core libraries
│   └── marketplace/  # Marketplace functionality
├── docs/            # Documentation
├── tests/          # Test files
└── docker/         # Docker configuration

Key Components

1. IDAT (Interactive Data Assembly Tool)

  • Canvas-based interface for data workflow
  • Agent integration
  • Real-time collaboration features

2. UADM (Universal Agent Deployment Module)

  • Agent creation and management
  • Hardware abstraction layer
  • Device integration

3. SFDP (Secure Fitness Data Pipeline)

  • Fitness data processing
  • Encryption integration
  • Real-time analytics

Development Workflow

  1. Create Feature Branch
git checkout -b feature/your-feature-name
  1. Development

  2. Write code following our style guide

  3. Add tests for new features
  4. Update documentation

  5. Testing

npm run test        # Run unit tests
npm run test:e2e    # Run end-to-end tests
npm run lint        # Check code style
  1. Submit Pull Request
  2. Create PR with detailed description
  3. Address review comments
  4. Ensure CI passes

Configuration

Environment Variables

NODE_ENV=development
API_URL=http://localhost:3000
ENCRYPTION_KEY=your-key
DATABASE_URL=postgresql://user:pass@localhost:5432/dbname

Docker Setup

# Start all services
docker-compose up -d

# View logs
docker-compose logs -f

# Stop services
docker-compose down

Common Tasks

Adding a New Agent

  1. Create agent class in src/features/uadm/agents/
  2. Implement required interfaces
  3. Register in agent registry
  4. Add tests and documentation

Implementing Encryption

  1. Use encryption drawer component
  2. Configure encryption modes
  3. Implement key management
  4. Add security tests

Debugging

Development Tools

  • Chrome DevTools for frontend
  • VS Code debugger configuration
  • Docker container inspection

Common Issues

  1. WASM Loading Issues

  2. Check browser console

  3. Verify WASM compilation
  4. Check file paths

  5. Agent Communication

  6. Verify WebSocket connection
  7. Check agent configuration
  8. Review logs

Best Practices

  1. Code Style

  2. Follow TypeScript guidelines

  3. Use ESLint and Prettier
  4. Write meaningful comments

  5. Testing

  6. Write unit tests for new features

  7. Include integration tests
  8. Test encryption thoroughly

  9. Security

  10. Follow security guidelines
  11. Implement proper encryption
  12. Validate user input

Resources

Support

  • GitHub Issues for bug reports
  • Development chat on Discord
  • Weekly developer meetings
  • Documentation updates

Next Steps

  1. Review the Architecture Overview
  2. Explore the API Documentation
  3. Join our Developer Community
  4. Start building your first feature!