codefordenver / codefordenver/CWBN

EPIC: GraphQL query for orgs by category

Open
#76 0 comments 1 reaction 0 assignees View on GitHub
Dominant language
Clojure
Stars
5
Forks
2
PR merge metrics
No merged PRs in 30d

Description

# Stories
### Backend
- [x] Every 30 minutes, Redis gets data from Airtable and caches it. The data comes in 5 different tables that reference each other's records by ID
screen shot 2018-08-23 at 6 22 44 pm

- [ ] Right after Redis gets the data from Airtable, call a function to merge the 5 tables into one complete map that contains the full details of each organization, and save it in an atom. A single item (organization) in the map looks something like this:
```
{:name "Organization Name"
:status "Active"
:categories [...]
:services [...]
:type "..."
:tags [...]
:purpose-mission "..."
:target-population "..."
:area-served "..."
:website "..."
:contact-name "..."
:email-address "..."
:phone-number "..."
:address-street "..."
:address-city "..."
:address-state "..."
:address-zip-code "..."
}
```
- [ ] Write a GraphQL schema + resolver that takes a category parameter and returns organizations that have a category match
### Frontend
- [ ] When a category link is clicked, make a query to the backend GraphQL server that returns only the organizations that belong to that category, and store them in the frontend app-db under that category key

Contributor guide

No contributing guide indexed for this repository

Research direction

The issue names no files, tests, or entry points. Begin by locating the Redis/Airtable refresh and GraphQL server, then trace how the frontend stores category data. Done means the five tables are merged into the shown organization map, category filtering works through GraphQL, and frontend category links store the returned organizations under the category key.

Written by the indexing model from the issue text.

Assessment

Tech stack
clojure, graphql, redis
Domain
api, backend, databases, frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.