---
phase: quick
plan: 2
type: execute
wave: 1
depends_on: []
files_modified: []
autonomous: true
requirements: []
user_setup: []
must_haves:
truths:
- "Current Flask v1 interface is preserved in a dedicated directory"
- "v2 project structure is initialized with sample_interface as reference"
artifacts:
- path: "src_v1/"
provides: "Archived Flask application (app.py + templates)"
- path: "v2/"
provides: "New v2 project based on sample_interface"
key_links: []
---
Store the current Flask v1 interface and initialize v2 project based on sample_interface reference implementation.
Purpose: Preserve working v1 while setting up v2 development environment using the React/Next.js sample as a template.
Output:
- src_v1/ - Archived Flask v1 application
- v2/ - Initial v2 project structure (copied from sample_interface)
@./.planning/STATE.md
# v1 Interface (current - to be archived)
src/app.py - Flask backend
src/templates/dashboard.html - Main rainfall dashboard
src/templates/calibration.html - Sensor calibration page
src/templates/files.html - Flash memory/file manager
src/templates/settings.html - System settings
# v2 Reference (sample_interface)
sample_interface/guidelines/Guidelines.md - Design system specification
sample_interface/src/app/ - Complete React app structure
task 1: Archive current Flask v1 interface
src_v1/app.py, src_v1/templates/*.html
1. Create src_v1/ directory
2. Copy src/app.py to src_v1/app.py
3. Copy src/templates/*.html to src_v1/templates/ (create directory first)
4. Copy src/static/ to src_v1/static/ (if exists)
5. Copy src/data/ to src_v1/data/ (if exists)
6. Copy src/routes/ to src_v1/routes/ (if exists)
7. Copy src/services/ to src_v1/services/ (if exists)
8. Copy requirements.txt to src_v1/requirements.txt
This preserves the complete working Flask v1 application.
ls -la src_v1/ && ls src_v1/templates/
src_v1/ directory exists with complete Flask application copied
task 2: Initialize v2 project from sample_interface
v2/
1. Create v2/ directory
2. Copy entire sample_interface/src/ to v2/src/
3. Copy sample_interface/package.json to v2/ (create if needed)
4. Copy sample_interface/tsconfig.json to v2/ (if exists)
5. Copy sample_interface/vite.config.ts to v2/ (if exists)
6. Copy sample_interface/index.html to v2/ (if exists)
7. Copy sample_interface/guidelines/ to v2/guidelines/
This establishes v2 project with the sample React interface as starting point.
ls -la v2/ && ls v2/src/app/
v2/ directory exists with React application structure from sample_interface
task 3: Document v1 and v2 structure in README
README.md
Update project README to document the new v1/v2 structure:
- Explain src_v1 contains the archived Flask v1 application
- Explain v2 contains the new React-based interface
- Reference which interface is currently active/deployed
Add a version history section documenting this transition.
grep -E "v1|v2|version" README.md
README documents the v1/v2 structure and version history
- [ ] src_v1/ contains complete Flask application
- [ ] v2/ contains React application from sample_interface
- [ ] README documents the new structure
- Current Flask v1 interface archived in src_v1/
- v2 project initialized with sample_interface React code
- Project documentation updated