Skip to content

LazerPlatypus/best_fence

Repository files navigation

best_fence

3D-printable accessories for the Best Fence saw system.

Overview

best_fence is an OpenSCAD design project that creates 3D-printable parts for working with the Best Fence woodworking measurement system.

Features:

  • 3D-printable toe clamp system for securing the Best Fence to your workstation
  • Modular mount design supporting 1–10 channels with configurable spacing
  • Connectors for joining fence sections (butt connector) and mounting to saw horses

Requirements

  • OpenSCAD 2026.02.10 or newer
  • Python 3 (for documentation generation, optional)
  • openscad-docsgen (installed via make setup)

Quick Start

1. Preview

Open any file in parts/ or assemblies/ in OpenSCAD and press F5 to preview.

2. Build

make          # Build all STL files

3. Customize

Edit parameters in config.scad to adjust dimensions and settings.

Building

# Build all parts
make

# Build specific part
make parts/butt_connector.scad build/stl/butt_connector.stl
make parts/saw_horse_connector.scad build/stl/saw_horse_connector.stl
make parts/toe_clamp_body.scad build/stl/toe_clamp_body.stl
make parts/toe_clamp_insert.scad build/stl/toe_clamp_insert.stl

# Generate documentation
make docs

# Render images
make images

# Clean build artifacts
make clean

File Organization

  • parts/ - Printable 3D part source files
  • assemblies/ - Pre-configured assembly files for preview and export
  • tools/ - Reusable mount and attachment modules
  • hardware/ - Hardware reference models (bolt, screw)
  • scripts/ - Build automation scripts
  • build/ - Generated STL files and images (run make to create)
  • docs/ - Documentation (hand-written + generated)
  • config.scad - Project-wide configuration

Customization

All project settings can be adjusted in config.scad:

  • Best Fence dimensions and tolerances
  • Mount height and clearance
  • Toe clamp geometry and sizing
  • Hardware dimensions (bolt/screw)
  • Rendering quality ($fn settings)

Parts List

Part File Description
Toe Clamp Body parts/toe_clamp_body.scad Main clamp body — print in TPU
Toe Clamp Insert parts/toe_clamp_insert.scad Stiffening insert for clamp — print in PLA/PETG
Butt Connector parts/butt_connector.scad Joins two fence sections end-to-end (2 channels)
Saw Horse Connector parts/saw_horse_connector.scad Mounts fence on a saw horse (1 channel)

See docs/bom.md for complete bill of materials including hardware.

Assembly

See docs/assembly_instructions.md for step-by-step assembly instructions.

Documentation

Development

Setup Development Environment

make setup

This creates a Python virtual environment and installs openscad-docsgen for documentation generation.

Project Structure

best_fence/
├── README.md                        # Project overview
├── Makefile                         # Build automation
├── config.scad                      # Project configuration
├── .openscad_docsgen_rc             # Documentation config
├── parts/                           # Printable part source files
│   ├── toe_clamp_body.scad
│   ├── toe_clamp_insert.scad
│   ├── butt_connector.scad
│   └── saw_horse_connector.scad
├── assemblies/                      # Pre-configured assembly files
│   ├── butt_connector.scad
│   └── saw_horse_connector.scad
├── tools/                           # Reusable mount/attachment modules
│   ├── mount.scad
│   ├── attachment_helping_hand.scad
│   └── attachment_screw.scad
├── hardware/                        # Hardware reference models
│   ├── bolt.scad
│   └── screw.scad
├── scripts/                         # Build scripts
├── build/                           # Generated files (gitignored)
│   ├── stl/                        # STL exports
│   └── images/                     # Documentation renders
└── docs/                            # Documentation
    └── api/                        # Generated API docs

Exporting with Variable Overrides

You can override variables from the command line:

# Export with custom bolt radius
./scripts/export_part.sh parts/toe_clamp_body.scad build/stl/toe_clamp_body.stl \
    "BOLT_HEAD_RADIUS=8"

# Export with lower resolution (faster)
./scripts/export_part.sh parts/toe_clamp_body.scad build/stl/toe_clamp_body_lowres.stl \
    "EXPORT_FN=16"

Contributing

Contributions welcome! Please:

  1. Follow the OpenSCAD Style Guide
  2. Document everything using openscad_docsgen format
  3. Test your changes before submitting
  4. Update documentation as needed

Support

License

This project is licensed under the CERN Open Hardware License Version 2 – Strongly Reciprocal (CERN-OHL-S v2).

Summary:

  • ✓ Use, modify, and manufacture (including commercially)
  • ✓ Distribute original or modified versions
  • ⚠️ Modified versions must use the same license
  • ⚠️ Must provide complete source for any distributed modifications

See LICENSE for full license text.


Status: Active development Version: 0.1.0 (pre-release)

About

No description or website provided.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors