FRC Autonomous Path Planning Studio
FeatherFlow is a modern desktop application for creating and visualizing autonomous robot paths for FIRST Robotics Competition (FRC) teams. Built with Next.js and Tauri, it provides an intuitive interface for designing complex robot trajectories using Bezier curves and behavioral control points.
- Visual Canvas Editor: Drag-and-drop path creation with real-time field visualization
- Zoom & Pan Controls: Navigate large field layouts with smooth zooming and panning
- 2025 Reefscape Field: Pre-configured for the current FRC game field dimensions
- Real-time Path Preview: Instant visual feedback as you build paths
- Anchor Points: Define the geometric path your robot follows using Bezier curves
- Control Points: Add behavioral commands at specific positions along the path:
- Rotate Points: Specify robot heading changes
- Stop Points: Define controlled stops with duration
- Command Points: Execute custom robot actions
- Curve Handles: Intuitive Bezier curve manipulation with aligned handles
- Point Insertion: Click on curves to add new anchor points
- Properties Panel: Detailed editing of point positions and attributes
- Point Lists: Organized views of all anchor and control points
- Save/Load Projects: Manage multiple autonomous routines
- Path Previews: Visual thumbnails for quick project selection
- Duplicate & Edit: Clone existing paths for rapid iteration
FeatherFlow Architecture
├── 🎨 Frontend (Next.js + TypeScript + Tailwind CSS)
│ ├── Landing Page
│ ├── Project Browser
│ └── Visual Path Studio
├── ⚡ Desktop App (Tauri + Rust)
│ ├── Native Performance
│ └── Cross-Platform Support
└── 🧮 Core Mathematics
├── Bezier Curve Engine
├── Coordinate Conversion
└── Path Optmization (In Rust)
AnchorPoint: Defines path geometry with Bezier handlesControlPoint: Behavioral modifiers positioned along the curveBezierCurve: Mathematical foundation for smooth path generationVector2: 2D mathematics for precise field positioning- Canvas Coordinate System: Automatic conversion between pixels and field inches
FeatherFlow is designed specifically for FRC teams who need:
- Rapid Prototyping: Quick iteration on autonomous strategies
- Precise Control: Sub-inch accuracy for field positioning
- Visual Planning: See your robot's path before deployment
- Team Collaboration: Share and iterate on path designs
FeatherFlow is actively being developed with core functionality in place:
- Interactive field canvas with 2025 Reefscape background
- Anchor point creation and Bezier curve drawing
- Control point system for behavioral commands
- Zoom, pan, and reset view controls
- Point selection and properties editing
- Project management with save/load capabilities
- Real-time path visualization
- Path export to wplib
- Advanced control point behaviors
- Timeline-based path sequencing
- Physics simulation and validation
- Multi-path autonomous routines
- Node.js 18+
- Rust (for Tauri backend)
- npm/yarn/pnpm
# Clone the repository
git clone https://github.com/EmilioMGithub/FeatherFlow.git
cd FeatherFlow
# Install dependencies
npm install
# Start development server
npm run dev
# Launch Tauri desktop app (development)
npm run tauri devnpm run dev- Start Next.js development servernpm run build- Build for productionnpm run tauri dev- Launch Tauri development appnpm run tauri build- Build desktop applicationnpm run lint- Run ESLint
FeatherFlow welcomes contributions from FRC teams and the robotics community!
- Follow TypeScript best practices
- Maintain the dual-point architecture philosophy
- Test path mathematics thoroughly
- Document new features and behaviors
MIT License - see LICENSE file for details.
Built for FRC Team 3082