Skip to content

Commit a34dcd3

Browse files
TortoiseWolfeclaude
andcommitted
chore: move core PRP to docs/prp-docs/
Moved PRP.md to docs/prp-docs/spoketowork-core-prp.md to follow project conventions for PRP documentation. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent 026f313 commit a34dcd3

File tree

1 file changed

+201
-0
lines changed

1 file changed

+201
-0
lines changed
Lines changed: 201 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,201 @@
1+
# SpokeToWork
2+
3+
> Track companies and generate optimized bicycle routes for in-person job hunting
4+
5+
---
6+
7+
## Problem Statement
8+
9+
A job seeker in a small city (Cleveland, TN) wants to conduct in-person job applications efficiently. Visiting companies by bicycle requires planning optimal routes to minimize travel time and physical effort. Currently, there's no easy way to:
10+
11+
1. Track which companies to visit and their application status
12+
2. Verify and manage company location coordinates
13+
3. Group nearby companies into logical geographic clusters for single-trip visits
14+
4. Generate optimized multi-stop bicycle routes
15+
5. Export routes to mobile devices for field use
16+
17+
## User Profile
18+
19+
- **Primary User**: Individual job seeker
20+
- **Mode of Transport**: Bicycle (affects routing preferences - bike-friendly roads, avoid highways)
21+
- **Geographic Scope**: ~10 mile radius from home address
22+
- **Technical Comfort**: Comfortable with web interfaces and mobile map apps
23+
24+
## Core Workflows
25+
26+
### 1. Company Management
27+
28+
The user needs to maintain a list of companies they intend to visit or have visited.
29+
30+
**Required Information per Company**:
31+
32+
- Company name and contact details (name, title, phone, email, website)
33+
- Physical address
34+
- Geographic coordinates (latitude/longitude)
35+
- Application status tracking (not contacted → contacted → follow-up → meeting → outcome)
36+
- Priority level
37+
- Notes and follow-up dates
38+
- Route assignment (which geographic cluster)
39+
- Active/inactive flag (still pursuing or not)
40+
41+
**Actions**:
42+
43+
- Add new companies manually
44+
- Edit company information
45+
- Delete companies
46+
- Bulk import from spreadsheet data
47+
- Export data for backup or sharing
48+
- Filter and search companies
49+
50+
### 2. Address Geocoding
51+
52+
Company addresses must be converted to coordinates for mapping and routing.
53+
54+
**Requirements**:
55+
56+
- Convert street addresses to latitude/longitude coordinates
57+
- Handle addresses that fail automatic geocoding (manual coordinate entry)
58+
- Validate coordinates are within reasonable geographic bounds
59+
- Visual verification of coordinates on a map (catch geocoding errors)
60+
- Bulk geocoding for efficiency
61+
62+
### 3. Geographic Clustering
63+
64+
Companies should be grouped into route clusters based on geographic proximity.
65+
66+
**Requirements**:
67+
68+
- Define a home location as the start/end point for all routes
69+
- Automatically assign companies to geographic clusters (routes)
70+
- Clusters should be based on:
71+
- Distance from home
72+
- Directional bearing (north, east, southwest, etc.)
73+
- Natural geographic groupings
74+
- Support 5-10 route clusters with descriptive names
75+
- Allow manual override of automatic assignments
76+
- Handle companies outside normal range ("extended range")
77+
78+
**Cluster Characteristics**:
79+
80+
- Each cluster should be completable in a single trip
81+
- Clusters should minimize backtracking
82+
- Nearby companies should be in the same cluster
83+
84+
### 4. Route Generation
85+
86+
Given a set of companies to visit, generate an optimized travel route.
87+
88+
**Requirements**:
89+
90+
- Start and end at home location
91+
- Visit all selected companies in optimal order (minimize total distance)
92+
- Use bicycle-appropriate roads and paths
93+
- Calculate total distance and estimated travel time
94+
- Support selecting companies by:
95+
- Geographic cluster (route)
96+
- Manual selection
97+
- Active/priority status
98+
99+
### 5. Route Export
100+
101+
Routes must be usable in the field on mobile devices.
102+
103+
**Export Formats**:
104+
105+
- Interactive map viewable in web browser
106+
- GPS file importable to cycling/navigation apps
107+
- Printable summary with company details and addresses
108+
109+
### 6. Field Operations Support
110+
111+
While visiting companies, the user needs reference materials.
112+
113+
**Requirements**:
114+
115+
- Printable "field sheet" with company details for the day's route
116+
- Quick status updates (mark as visited, add notes)
117+
- View route progress
118+
119+
## Data Requirements
120+
121+
### Single Source of Truth
122+
123+
- All company data should live in one authoritative location
124+
- Changes should be tracked/auditable
125+
- Data should be exportable and human-readable
126+
127+
### Data Integrity
128+
129+
- Prevent data loss from concurrent edits
130+
- Support undo/recovery from mistakes
131+
- Validate data on entry (coordinates in valid range, required fields present)
132+
133+
### Privacy
134+
135+
- Data is personal/private (single user)
136+
- No cloud sync required initially
137+
- User controls their own data
138+
139+
## User Interface Requirements
140+
141+
### Company Management View
142+
143+
- Spreadsheet-like interface for efficient bulk editing
144+
- Sort and filter by any column
145+
- Visual indicators for status, priority, route assignment
146+
- Checkbox selection for bulk operations
147+
148+
### Map View
149+
150+
- Display companies as markers on a map
151+
- Color-code by route/cluster assignment
152+
- Show generated route paths
153+
- Click markers for company details
154+
155+
### Route Controls
156+
157+
- Quick toggle: include/exclude companies from route generation
158+
- Filter view by route/cluster
159+
- One-click route generation for a cluster
160+
- Preview route before export
161+
162+
## Constraints
163+
164+
### Geographic
165+
166+
- Optimized for small city/suburban area (~20 mile diameter)
167+
- Bicycle routing (not car-optimized)
168+
- Single home location as hub
169+
170+
### Scale
171+
172+
- Target: 50-200 companies
173+
- Target: 5-10 route clusters
174+
- Single user (no multi-user/collaboration initially)
175+
176+
### Offline Capability
177+
178+
- Route exports must work offline (for field use)
179+
- Core data management can require connectivity
180+
181+
## Success Criteria
182+
183+
1. **Efficiency**: User can plan a day's route in under 5 minutes
184+
2. **Accuracy**: Geocoded coordinates are verifiably correct
185+
3. **Usability**: Routes are practical for actual bicycle travel
186+
4. **Reliability**: No data loss, changes are tracked
187+
5. **Portability**: Routes work on standard mobile map/GPS apps
188+
189+
## Out of Scope (Future Considerations)
190+
191+
- Multi-user/team collaboration
192+
- Automatic company discovery/import from business directories
193+
- Integration with job application platforms
194+
195+
## Glossary
196+
197+
- **Route/Cluster**: A geographic grouping of companies that can be visited in a single trip
198+
- **Geocoding**: Converting a street address to latitude/longitude coordinates
199+
- **TSP (Traveling Salesman Problem)**: The optimization problem of finding the shortest route visiting all points
200+
- **Field Sheet**: Printable reference document for use while visiting companies
201+
- **Home Location**: The user's starting point for all routes (typically their residence)

0 commit comments

Comments
 (0)