https://github.com/shade-tree-software/campgrounds
· scanned 2026-06-16 00:08 UTC (2 months, 2 weeks ago)
155 raw signals (0 security + 155 graph)
Last scanned 2 months, 2 weeks ago · v1 · 152 actionable findings from 1 signal source. 3 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
All 544 nodes from the latest scan, grouped by kind. Each node is a unit the engine identified (file, function, endpoint, table…). Most users won't need this view — it's primarily for debugging the engine's graph extraction or for AI agents that want to enumerate the project structure.
| Label | Layer | Status | Path |
|---|---|---|---|
get_day_of_week |
software | healthy | summer_finder.py:7 |
load_config |
software | healthy | summer_finder.py:13 |
load_campgrounds |
software | healthy | summer_finder.py:21 |
check_campground_weather |
software | healthy | summer_finder.py:27 |
find_summer_days |
software | healthy | summer_finder.py:88 |
send_sms_notification |
software | healthy | summer_finder.py:185 |
get_elevation |
software | healthy | get_elevation.py:10 |
index |
software | healthy | summer_seeker_app.py:10 |
geocode |
software | healthy | summer_seeker_app.py:15 |
search |
software | healthy | summer_seeker_app.py:47 |
generate |
software | healthy | summer_seeker_app.py:60 |
progress_callback |
software | healthy | summer_seeker_app.py:88 |
parse_trips |
software | healthy | trips.py:17 |
_load_raw_trips |
software | healthy | trips.py:30 |
_save_trips |
software | healthy | trips.py:38 |
_load_trips_json |
software | healthy | trips.py:45 |
_next_trip_id |
software | healthy | trips.py:67 |
migrate_csv_to_json |
software | healthy | trips.py:73 |
create_trip |
software | healthy | trips.py:104 |
update_trip |
software | healthy | trips.py:113 |
delete_trip |
software | healthy | trips.py:137 |
add_stay |
software | healthy | trips.py:148 |
update_stay |
software | healthy | trips.py:186 |
delete_stay |
software | healthy | trips.py:221 |
_shift_photo_dirs |
software | healthy | trips.py:250 |
_remap_indices_after_sort |
software | healthy | trips.py:265 |
_remap_json_keys |
software | healthy | trips.py:313 |
add_event |
software | healthy | trips.py:346 |
update_event |
software | healthy | trips.py:386 |
delete_event |
software | healthy | trips.py:419 |
get_suppressed_pings |
software | healthy | trips.py:451 |
add_suppressed_pings |
software | healthy | trips.py:460 |
remove_suppressed_pings |
software | healthy | trips.py:474 |
get_relocated_pings |
software | healthy | trips.py:506 |
_relocation_entry_key |
software | healthy | trips.py:517 |
add_relocated_pings |
software | healthy | trips.py:528 |
remove_relocated_pings |
software | healthy | trips.py:561 |
_keep |
software | healthy | trips.py:581 |
get_tid_overrides |
software | healthy | trips.py:611 |
set_tid_override |
software | healthy | trips.py:620 |
_parse_date |
software | healthy | trips.py:648 |
_parse_stays |
software | healthy | trips.py:653 |
_group_into_trips |
software | healthy | trips.py:697 |
_is_home |
software | healthy | trips.py:706 |
_make_trip |
software | healthy | trips.py:726 |
_stay_needs_split |
software | healthy | trips.py:799 |
_load_locations_by_id |
software | healthy | trips.py:889 |
_parse_site_coords |
software | healthy | trips.py:921 |
enrich_trip_locations |
software | healthy | trips.py:931 |
progress_callback |
software | healthy | find_summer.py:40 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
ANY / |
api | healthy | summer_seeker_app.py |
ANY /geocode |
api | healthy | summer_seeker_app.py |
ANY /search |
api | healthy | summer_seeker_app.py |
ANY /thumb/<path:subpath> |
api | healthy | ekko_trips_app.py |
ANY /sw.js |
api | healthy | ekko_trips_app.py |
ANY /offline |
api | healthy | ekko_trips_app.py |
ANY /sw-reset |
api | healthy | ekko_trips_app.py |
ANY /login |
api | healthy | ekko_trips_app.py |
ANY /logout |
api | healthy | ekko_trips_app.py |
ANY /trips |
api | healthy | ekko_trips_app.py |
ANY /trips/map |
api | healthy | ekko_trips_app.py |
ANY /trips/poster |
api | healthy | ekko_trips_app.py |
ANY /trips/calendar |
api | healthy | ekko_trips_app.py |
ANY /trips/list |
api | healthy | ekko_trips_app.py |
ANY /trips/stats |
api | healthy | ekko_trips_app.py |
ANY /trips/<int:trip_id> |
api | healthy | ekko_trips_app.py |
ANY /trips/<int:trip_id>/stays/<int:stay_idx>/upload |
api | healthy | ekko_trips_app.py |
ANY /trips/<int:trip_id>/stays/<int:stay_idx>/caption |
api | healthy | ekko_trips_app.py |
ANY /trips/<int:trip_id>/stays/<int:stay_idx>/photos/<filen… |
api | healthy | ekko_trips_app.py |
ANY /trips/<int:trip_id>/stays/<int:stay_idx>/photos/<filen… |
api | healthy | ekko_trips_app.py |
ANY /trips/<int:trip_id>/stays/<int:stay_idx>/photos |
api | healthy | ekko_trips_app.py |
ANY /trips/<int:trip_id>/stays/<int:stay_idx>/reorder |
api | healthy | ekko_trips_app.py |
ANY /trips/<int:trip_id>/events/<int:event_idx>/upload |
api | healthy | ekko_trips_app.py |
ANY /trips/<int:trip_id>/events/<int:event_idx>/caption |
api | healthy | ekko_trips_app.py |
ANY /trips/<int:trip_id>/events/<int:event_idx>/photos/<fil… |
api | healthy | ekko_trips_app.py |
ANY /trips/<int:trip_id>/events/<int:event_idx>/photos/<fil… |
api | healthy | ekko_trips_app.py |
ANY /trips/<int:trip_id>/events/<int:event_idx>/photos |
api | healthy | ekko_trips_app.py |
ANY /trips/<int:trip_id>/events/<int:event_idx>/reorder |
api | healthy | ekko_trips_app.py |
ANY /api/trips |
api | healthy | ekko_trips_app.py |
ANY /api/trips/<int:trip_id> |
api | healthy | ekko_trips_app.py |
ANY /api/trips/<int:trip_id>/stays |
api | healthy | ekko_trips_app.py |
ANY /api/trips/<int:trip_id>/stays/<int:stay_idx> |
api | healthy | ekko_trips_app.py |
ANY /api/trips/<int:trip_id>/events |
api | healthy | ekko_trips_app.py |
ANY /api/trips/<int:trip_id>/events/<int:event_idx> |
api | healthy | ekko_trips_app.py |
ANY /campgrounds/map |
api | healthy | ekko_trips_app.py |
ANY /campgrounds/waterfront |
api | healthy | ekko_trips_app.py |
ANY /campgrounds/climate |
api | healthy | ekko_trips_app.py |
ANY /trips/<int:trip_id>/move-photo |
api | healthy | ekko_trips_app.py |
ANY /admin/users |
api | healthy | ekko_trips_app.py |
ANY /api/users |
api | healthy | ekko_trips_app.py |
ANY /api/users/<username> |
api | healthy | ekko_trips_app.py |
ANY /api/campgrounds |
api | healthy | ekko_trips_app.py |
ANY /campgrounds/manage |
api | healthy | ekko_trips_app.py |
ANY /api/campgrounds/all |
api | healthy | ekko_trips_app.py |
ANY /api/campgrounds/<int:cg_id> |
api | healthy | ekko_trips_app.py |
ANY /api/geocode |
api | healthy | ekko_trips_app.py |
ANY /api/reverse-geocode |
api | healthy | ekko_trips_app.py |
ANY /api/nearby-places |
api | healthy | ekko_trips_app.py |
ANY /api/trips/<int:trip_id>/track |
api | healthy | ekko_trips_app.py |
ANY /api/trips/<int:trip_id>/suppress-pings |
api | healthy | ekko_trips_app.py |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
summer_finder.py |
software | healthy | summer_finder.py |
get_elevation.py |
software | healthy | get_elevation.py |
summer_seeker_app.py |
software | healthy | summer_seeker_app.py |
README-flask-app.md |
software | healthy | README-flask-app.md |
CLAUDE.md |
software | healthy | CLAUDE.md |
trips.py |
software | healthy | trips.py |
campgrounds.json |
software | healthy | campgrounds.json |
find_summer.py |
software | healthy | find_summer.py |
README-shared-core.md |
software | healthy | README-shared-core.md |
DESKTOP_UX_TODO.md |
software | healthy | DESKTOP_UX_TODO.md |
git-ask-pass-pat.sh |
software | healthy | git-ask-pass-pat.sh |
ekko_trips_app.py |
software | healthy | ekko_trips_app.py |
__init__.py |
software | healthy | tests/__init__.py |
verify_track_endpoint_parity.py |
software | healthy | tests/verify_track_endpoint_parity.py |
test_select_track_per_day.py |
software | healthy | tests/test_select_track_per_day.py |
smoke_select_track.py |
software | healthy | tests/smoke_select_track.py |
manifest.json |
software | healthy | static/manifest.json |
sw.js |
software | healthy | static/sw.js |
map-picker.js |
software | healthy | static/map-picker.js |
map-picker.css |
software | healthy | static/map-picker.css |
detect-stops.js |
software | healthy | static/trip-detail/detect-stops.js |
overrides.js |
software | healthy | static/trip-detail/overrides.js |
map.js |
software | healthy | static/trip-detail/map.js |
timeline.js |
software | healthy | static/trip-detail/timeline.js |
lightbox.js |
software | healthy | static/trip-detail/lightbox.js |
boot.js |
software | healthy | static/trip-detail/boot.js |
photos.js |
software | healthy | static/trip-detail/photos.js |
README.md |
software | healthy | audit/README.md |
waterfront_audit_instructions.md |
software | healthy | audit/waterfront_audit_instructions.md |
apply_waterfront_audit.py |
software | healthy | audit/apply_waterfront_audit.py |
users_manage.html |
software | healthy | templates/users_manage.html |
base.html |
software | healthy | templates/base.html |
sw_reset.html |
software | healthy | templates/sw_reset.html |
trips_calendar.html |
software | healthy | templates/trips_calendar.html |
login.html |
software | healthy | templates/login.html |
index.html |
software | healthy | templates/index.html |
trips_stats.html |
software | healthy | templates/trips_stats.html |
error.html |
software | healthy | templates/error.html |
offline.html |
software | healthy | templates/offline.html |
trips_map.html |
software | healthy | templates/trips_map.html |
campground_map.html |
software | healthy | templates/campground_map.html |
campground_manage.html |
software | healthy | templates/campground_manage.html |
trip_detail.html |
software | healthy | templates/trip_detail.html |
trips_poster.html |
software | healthy | templates/trips_poster.html |
settings.json |
software | healthy | .claude/settings.json |
wf_reservation_links.js |
software | healthy | .claude/wf_reservation_links.js |
CLAUDE.md |
quality | healthy | CLAUDE.md |
.claude/settings.json |
quality | healthy | .claude/settings.json |
| Label | Layer | Status | Path |
|---|---|---|---|
tests |
software | healthy | tests |
static |
software | healthy | static |
trip-detail |
software | healthy | static/trip-detail |
audit |
software | healthy | audit |
templates |
software | healthy | templates |
.claude |
software | healthy | .claude |
| Label | Layer | Status | Path |
|---|---|---|---|
User |
software | healthy | ekko_trips_app.py:504 |
TestSelectTrackPerDay |
software | healthy | tests/test_select_track_per_day.py:63 |
changes |
software | healthy | static/trip-detail/photos.js:changes |
| Label | Layer | Status | Path |
|---|---|---|---|
port:5000 |
network | healthy | summer_seeker_app.py |
port:5001 |
network | healthy | ekko_trips_app.py |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-lfs_m1n9 |
software | healthy | /tmp/repobility-clone-lfs_m1n9 |
| Label | Layer | Status | Path |
|---|---|---|---|
sqlite |
data | healthy | .claude/settings.json |
This page is publicly accessible at:
https://repobility.com/scan/01090711-7cab-4c10-9f8f-aaf2467d8619/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/01090711-7cab-4c10-9f8f-aaf2467d8619/
Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.