# zenangst/Spots

:bamboo: Spots is a cross-platform view controller framework for building component-based UIs

Repository: https://github.com/zenangst/Spots
Canonical: https://ross.abutalabs.com/products/spots
Language: Swift
License: NOASSERTION
License Family: other
Topics: component-driven, ui, backend-driven, json, spots, components, yolo
Last push: 2018-04-12T12:27:12+00:00

## Health v2 (maintenance only)
Score: 23/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 0, release rhythm 8, longevity 100
- inputs: {"age_days": 3987, "days_push": 3065, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1302, forks 70 (observed 2026-08-28T04:04:18.041266+00:00)

## What it is
Spots is a cross-platform view controller framework for building component-based user interfaces in Swift. It uses generic view models that can be serialized to and from JSON, enabling backend-driven UI declarations, and handles data source and delegate setup automatically.

## Use cases
- build component-based UIs in Swift
- create server-driven or backend-driven user interfaces
- avoid manual UITableView/UICollectionView data source and delegate setup
- mutate list UIs with collection-like convenience APIs
- share UI component code across iOS, macOS, and tvOS
- render UI from JSON payloads

## When to choose
- you are building a Swift app on iOS, macOS, or tvOS with a component-driven architecture
- you want the UI structure to be defined or driven by a backend via JSON
- you prefer declarative, collection-style mutation of list-based interfaces

## When to avoid
- you need a maintained library - the last release was in 2018 and the project appears inactive
- you are targeting platforms outside the Apple ecosystem
- you need SwiftUI or modern declarative UI support
- your project requires a permissive, clearly defined license (the license is non-standard)

## Facets
- artifact type: framework
- maturity: abandoned
- function: ui-components, frontend-framework, state-management, serialization, json
- domain: mobile-development, frontend, cross-platform
- platform: cross-platform
- tags: component-driven-ui, view-controller, server-driven-ui, swift, cocoapods, carthage, ios, macos

## Member repositories
- zenangst/Spots (main) score 23

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:18.041266+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:52:12.333816+00:00, confidence not recorded.
  - readme: https://github.com/zenangst/Spots (fetched 2026-08-28T04:04:18.041266+00:00, sha bb647024c4d9)
- Data as of 2026-08-30T08:39:29.467469+00:00.
