diff --git a/README.md b/README.md index 1f45c7f..8f53a29 100644 --- a/README.md +++ b/README.md @@ -1,26 +1,26 @@ # B4L Open Hardware Project Template Welcome to the **Build4Life (B4L)** Open Hardware Project Template! -This repository provides a standardized structure for developing and sharing high-quality open hardware designs. +This repository defines a standard structure for building open-source hardware projects with high transparency, maintainability, and manufacturability. -Use this template to kickstart your own B4L-compatible project. +Use this as a base for your own project or as a collaborative standard for contributions. --- ## 📁 Folder Structure ``` -hardware/ # Schematics, PCB layout, BOM, manufacturing files -mechanical/ # Mechanical designs and 3D printable enclosures -firmware/ # Microcontroller firmware -software/ # PC-side tools or GUIs -docs/ # User guides, images, datasheets -tests/ # Test plans and reports -ci/ # Continuous Integration config -tools/ # Development and debug tools -certs/ # Certification and compliance documentation -manufacturing/ # Production-level data for fab and assembly -meta/ # Project metadata and changelog +hardware/ # Schematics, PCB, component models, libraries +mechanical/ # Enclosures and mechanical CAD +firmware/ # Embedded firmware +software/ # PC-side software and tools +docs/ # Documentation and datasheets +tests/ # Test plans, logs, reports +ci/ # Continuous Integration configuration +tools/ # Debug and development utilities +certs/ # Certification/compliance files +manufacturing/ # Production and assembly resources +meta/ # Project changelog and metadata ``` --- @@ -28,80 +28,76 @@ meta/ # Project metadata and changelog ## 📂 Folder Descriptions ### `/hardware/` -Contains all electrical design files: -- `schematics/`: KiCad or EDA schematic files +- `schematics/`: Electrical schematics in any EDA tool - `pcb/`: PCB layout files -- `bom/`: Bill of Materials -- `manufacturing/`: Gerbers, pick-and-place, drill files -- `simulations/`: Simulation circuits (e.g. SPICE) +- `bom/`: Bill of Materials (CSV, XLSX) +- `manufacturing/`: Gerbers, pick-and-place, drill data +- `simulations/`: SPICE or other circuit simulations +- `component-models/`: 3D models for electronic components +- `libraries/`: Custom symbols, footprints, models ### `/mechanical/` -Mechanical or enclosure design: -- `enclosure/`: STL/STEP files for 3D-printable parts -- `cad/`: Editable CAD models (FreeCAD, Fusion360) -- `drawings/`: 2D drawings for fabrication or documentation -- `stl/`: Final 3D-printable export files +- `enclosure/`: 3D-printable housing or case designs +- `cad/`: Editable CAD models +- `stl/`: Printable STL files +- `drawings/`: 2D mechanical drawings for CNC or documentation ### `/firmware/` -Firmware source code: -- `src/`, `include/`, `lib/`: Microcontroller code and dependencies -- Example: PlatformIO, STM32Cube, Arduino, Zephyr +- `src/`, `include/`, `lib/`: Source code and libraries for microcontrollers +- Compatible with PlatformIO, Arduino, STM32Cube, Zephyr, etc. ### `/software/` -Optional software tools, GUI, or helper scripts: -- `gui/`: Any frontend or desktop apps -- `scripts/`: CLI or backend support tools +- `gui/`: GUI apps for control or configuration +- `scripts/`: Helper tools or automation ### `/docs/` -Project documentation: -- `overview.md`, `quickstart.md`, photos, diagrams -- `datasheets/`: PDFs of important components +- `overview.md`, `quickstart.md`: Introductory and usage docs +- `images/`: Diagrams, photos, illustrations +- `datasheets/`: Reference datasheets for key components ### `/tests/` -Hardware and firmware testing: -- `hardware/`: Test jigs, test instructions -- `firmware/`: Unit and integration test code -- `reports/`: Test results, logs, and photos +- `hardware/`: Hardware test procedures +- `firmware/`: Firmware unit or integration tests +- `reports/`: Test logs and validation outputs ### `/ci/` -Automation and CI pipelines: -- GitHub Actions, GitLab CI, etc. +- GitHub Actions, GitLab CI, or other automation scripts ### `/tools/` -Developer tools, flashing utilities, debug helpers +- Developer tools, debug scripts, flashing utilities ### `/certs/` -Regulatory and certification documents (e.g., CE, FCC) +- Regulatory or environmental compliance documents (e.g., CE, FCC, RoHS) ### `/manufacturing/` -Everything needed for production: -- `assembly/`: Instructions for assembly/test stations -- `fab/`: Files needed by PCB fab houses +- `assembly/`: Instructions and jigs for assembly +- `fab/`: Production-ready files for fabrication ### `/meta/` -Project metadata: -- `b4l_manifest.json`: Name, version, tags, license -- `authors.md`, `changelog.md` +- `changelog.md`: Development history +- `authors.md`: Contributors list +- `b4l_manifest.json`: Optional machine-readable metadata --- ## 📝 License -This template is open source. Choose a license appropriate for your project. -Recommended: [CERN-OHL-S-2.0](https://gitlab.com/ohwr/project/cernohl/) for open hardware. +This template is open source. Use a license that fits your project. +Recommended for hardware: [CERN-OHL-S-2.0](https://gitlab.com/ohwr/project/cernohl/) --- ## 🤝 Contributing -If you’re creating a new B4L-compatible project, click “Use this template” or clone this repository. - -You’re encouraged to submit improvements to this template! +To start a new project: +1. Click “Use this template” (on GitHub) or clone this repo +2. Rename and fill out your project files +3. Share and collaborate with ease --- ## 📡 About Build4Life -**Build4Life** is a community-driven initiative designing durable, open, and maintainable electronics. +**Build4Life** creates long-lasting, open hardware systems — starting with sustainable LED lighting and modular solar power. Website: [https://buildfor.life](https://buildfor.life) diff --git a/hardware/component-models/README.md b/hardware/component-models/README.md new file mode 100644 index 0000000..b2b2c09 --- /dev/null +++ b/hardware/component-models/README.md @@ -0,0 +1,3 @@ +# /hardware/component-models + +3D models of components (STEP, WRL, etc.) for mechanical integration. \ No newline at end of file diff --git a/hardware/libraries/README.md b/hardware/libraries/README.md new file mode 100644 index 0000000..a048843 --- /dev/null +++ b/hardware/libraries/README.md @@ -0,0 +1,3 @@ +# /hardware/libraries + +Custom libraries for component symbols, footprints, and models. \ No newline at end of file