Skip to content

Latest commit

 

History

History
292 lines (248 loc) · 10.9 KB

File metadata and controls

292 lines (248 loc) · 10.9 KB

Repository Structure

Complete directory structure and organization of the LAN IoT documentation repository.

Directory Overview

docs/
├── README.md                    # Main repository documentation
├── STRUCTURE.md                 # This file - repository organization
├── CONTRIBUTING.md              # Contribution guidelines
├── CONTRIBUTORS.md              # List of contributors
├── LICENSE                      # Apache 2.0 license
├── NOTICE                       # Third-party attributions
├── .gitignore                   # Git ignore rules
│
├── docs/                        # Software documentation
│   ├── getting-started/         # Beginner guides
│   │   ├── quick-start.md           # 15-minute setup guide
│   │   ├── system-overview.md       # Architecture and components
│   │   └── hardware-requirements.md # What you need to build
│   │
│   ├── software/                # Software documentation
│   │   ├── core-firmware.md         # ESP32-S3 firmware guide
│   │   ├── certificate-signer.md    # Certificate authority setup
│   │   ├── configuration.md         # Advanced configuration
│   │   └── api-reference.md         # API endpoints and WebSocket protocol
│   │
│   ├── tutorials/               # Step-by-step tutorials
│   │   ├── first-deployment.md      # Deploy your first device
│   │   ├── custom-builds.md         # Customize firmware
│   │   ├── certificate-management.md # SSL/TLS certificate handling
│   │   ├── serial-devices.md        # Connect RS-232 devices
│   │   └── troubleshooting.md       # Common issues and solutions
│   │
│   ├── use-cases/               # Real-world applications
│   │   ├── industrial-monitoring.md # Industrial equipment monitoring
│   │   ├── remote-locations.md      # Remote deployments
│   │   └── legacy-devices.md        # Legacy RS-232 integration
│   │
│   └── contributing/            # Contributor resources
│       ├── code-of-conduct.md       # Community guidelines
│       └── development-setup.md     # Development environment setup
│
├── hardware/                    # Hardware documentation
│   ├── README.md                    # Hardware overview
│   ├── bom.md                       # Bill of materials (planned)
│   │
│   ├── iotbox-v1/               # First generation enclosure
│   │   ├── README.md                # V1 documentation
│   │   ├── IoTBoxV1-Body.stl        # 3D printable body
│   │   ├── IoTBoxV1-Top.stl         # 3D printable top
│   │   └── IoTBoxV1.FCStd           # FreeCAD source file
│   │
│   ├── iotbox-v2/               # Current generation enclosure
│   │   ├── README.md                # V2 documentation (detailed)
│   │   ├── IoTBoxV2-BOTTOM.stl      # 3D printable bottom
│   │   ├── IoTBoxV2-TOP.stl         # 3D printable top
│   │   └── IoTBoxV2.FCStd           # FreeCAD source file
│   │
│   ├── soldering-rig/           # Assembly fixture
│   │   ├── README.md                # Soldering rig guide
│   │   ├── SolderingRig-Body.stl    # 3D printable jig
│   │   └── SolderingRig.FCStd       # FreeCAD source file
│   │
│   └── assembly/                # Assembly procedures
│       ├── README.md                # Assembly guide
│       └── LAN-IOT Assmebly Procedures.pdf  # Detailed procedures
│
└── images/                      # Reference photos
    ├── README.md                    # Image documentation
    ├── *.HEIC                       # iOS photos (44 images)
    └── *.jpg/*.jpeg                 # JPEG photos (2 images)

File Count Summary

Documentation Files

  • Markdown Files: 20+ documentation files
  • PDF Documentation: 1 assembly procedures manual
  • Hardware Designs: 6 STL files, 3 FreeCAD files
  • Images: 46 reference photos

Repository Root Files

  • README.md - Main repository introduction
  • STRUCTURE.md - This file
  • CONTRIBUTING.md - How to contribute
  • CONTRIBUTORS.md - Hall of fame
  • LICENSE - Apache 2.0 license
  • NOTICE - Legal notices
  • .gitignore - Version control rules

Documentation Categories

1. Getting Started (docs/getting-started/)

Quick guides to get users up and running:

  • Quick Start: 15-minute setup guide
  • System Overview: Architecture and components
  • Hardware Requirements: What you need

2. Software Guides (docs/software/)

In-depth software documentation:

  • Core Firmware: ESP32-S3 firmware setup
  • Certificate Signer: Certificate authority deployment
  • Configuration: Advanced settings
  • API Reference: Endpoints and protocols

3. Tutorials (docs/tutorials/)

Step-by-step walkthroughs:

  • First Deployment: Complete deployment guide
  • Custom Builds: Firmware customization
  • Certificate Management: SSL/TLS handling
  • Serial Devices: RS-232 integration
  • Troubleshooting: Problem solving

4. Use Cases (docs/use-cases/)

Real-world application examples:

  • Industrial Monitoring: Manufacturing and automation
  • Remote Locations: Intermittent connectivity scenarios
  • Legacy Devices: Modernizing RS-232 equipment

5. Contributing (docs/contributing/)

Developer resources:

  • Code of Conduct: Community guidelines
  • Development Setup: Development environment

6. Hardware (hardware/)

Physical designs and assembly:

  • IoTBox V1: First generation enclosure (legacy)
  • IoTBox V2: Current production enclosure
  • Soldering Rig: Assembly fixture
  • Assembly: Step-by-step procedures
  • BOM: Bill of materials (planned)

7. Images (images/)

Reference photography:

  • Component photos
  • Assembly sequences
  • Installation examples
  • Troubleshooting references

Navigation Guide

For New Users

Start here:

  1. README.md - Project overview
  2. docs/getting-started/quick-start.md - Get started
  3. docs/getting-started/system-overview.md - Understand the system

For Hardware Builders

Follow this path:

  1. hardware/README.md - Hardware overview
  2. hardware/iotbox-v2/README.md - Print enclosure
  3. hardware/assembly/README.md - Assemble device
  4. images/README.md - Reference photos

For Software Developers

Navigate through:

  1. docs/software/core-firmware.md - Firmware details
  2. docs/software/configuration.md - Configuration options
  3. docs/tutorials/custom-builds.md - Customization
  4. docs/software/api-reference.md - API documentation

For Deployers

Follow this workflow:

  1. docs/tutorials/first-deployment.md - Deploy first device
  2. docs/software/certificate-signer.md - Certificate infrastructure
  3. docs/use-cases/ - Application examples
  4. docs/tutorials/troubleshooting.md - Troubleshooting

For Contributors

Start with:

  1. CONTRIBUTING.md - Contribution guidelines
  2. docs/contributing/development-setup.md - Setup
  3. docs/contributing/code-of-conduct.md - Community rules

Documentation Status

✅ Complete

  • Main README
  • Repository structure
  • Hardware documentation (all subdirectories)
  • Quick start guide
  • System overview
  • Assembly procedures
  • Images documentation
  • Contributing guidelines
  • License and notices

🚧 In Progress

  • Software guides (core firmware, signer, configuration)
  • API reference
  • Tutorial series
  • Use case examples
  • Hardware BOM
  • Code of conduct
  • Development setup

📋 Planned

  • Video tutorials
  • Interactive diagrams
  • Deployment checklists
  • Performance benchmarks
  • Security audits
  • Certification guides (UL, CE, FCC)

Content Guidelines

Documentation Standards

  • Format: Markdown (.md) for text documentation
  • Style: Clear, concise, beginner-friendly
  • Structure: Consistent headings and formatting
  • Code: Syntax-highlighted code blocks
  • Links: Relative paths for internal links
  • Images: Store in images/ directory

Hardware Files

  • 3D Models: STL for distribution, FreeCAD (.FCStd) for sources
  • Documentation: README.md in each hardware subdirectory
  • Photos: Original format (HEIC/JPEG) with conversion instructions

Version Control

  • Main Branch: Stable, reviewed documentation
  • Feature Branches: Work-in-progress documentation
  • Pull Requests: Required for all changes
  • Reviews: At least one approval for merges

Maintenance

Regular Updates

  • Update README.md with new features
  • Add new tutorials as features are added
  • Keep hardware documentation current with design iterations
  • Maintain image index as photos are added

Deprecation Policy

  • Mark outdated content with warnings
  • Keep legacy documentation for reference (e.g., IoTBox V1)
  • Archive old content rather than deleting
  • Update links when content moves

Quality Checks

  • All links work (no 404s)
  • Code examples are tested
  • Screenshots are current
  • Hardware files are printable
  • Documentation matches latest releases

Contributing to Structure

Have suggestions for improving organization?

How to Propose Changes

  1. Open an issue describing the proposed change
  2. Explain the benefit of the reorganization
  3. Provide example of new structure
  4. Wait for maintainer feedback
  5. Submit pull request if approved

Common Restructuring Requests

  • New documentation categories
  • Better tutorial organization
  • Additional hardware documentation
  • Improved navigation
  • Localization (translations)

Related Resources

External Links

Documentation Tools

  • FreeCAD: https://www.freecadweb.org/ (3D modeling)
  • Markdown Editor: Any text editor (VS Code recommended)
  • Image Conversion: ImageMagick, sips, online converters

Questions?


Last Updated: October 2025
Repository: https://github.com/laniot/docs
License: Apache 2.0