Essential session storage is required to sign in. Optional analytics remain off unless you allow them.
Design a GraphQL schema in SDL for a domain you like (a blog, a library, a movie catalog): object types, a Query root and a Mutation root, deliberate nullability (! only where a field truly can't be null), and at least one nested relationship. Then stand up a tiny server (Apollo Server or GraphQL Yoga) with resolvers backed by in-memory data, and write a few queries (with arguments + variables) and a mutation that returns the affected object. Run them in the built-in sandbox.
Well-typed SDL with Query/Mutation roots, sensible nullability, and a nested relationship; reads as a graph, not REST endpoints.
Working queries using arguments and variables, plus a mutation that takes an input and returns the changed object.
Resolvers correctly return field values; a nested field resolves through its parent.
Server runs; operations execute in the sandbox; validation rejects unknown fields.
Use this README structure to make the work reviewable.
DevPath fetches a read-only, size-capped snapshot. Submitted code is never executed.
# A GraphQL schema + a working server ## Goal Design a GraphQL schema in SDL for a domain you like (a blog, a library, a movie catalog): object types, a Query root and a Mutation root, deliberate nullability (! only where a field truly can't be null), and at least one nested relationship. Then stand up a tiny server (Apollo Server or GraphQL Yoga) with resolvers backed by in-memory data, and write a few queries (with arguments + variables) and a mutation that returns the affected object. Run them in the built-in sandbox. ## Acceptance criteria - [ ] Schema design: Well-typed SDL with Query/Mutation roots, sensible nullability, and a nested relationship; reads as a graph, not REST endpoints. - [ ] Queries & mutations: Working queries using arguments and variables, plus a mutation that takes an input and returns the changed object. - [ ] Resolvers: Resolvers correctly return field values; a nested field resolves through its parent. - [ ] Runs: Server runs; operations execute in the sandbox; validation rejects unknown fields. ## Verification - [ ] Document installation and run commands. - [ ] Record automated checks and their exact commands. - [ ] Add representative output, screenshots, or a short demo where useful. - [ ] Confirm failure paths and known constraints. ## Decision log ### Decision title - Context: - Choice: - Alternatives considered: - Tradeoffs: ## Evidence - Link each rubric criterion to the file, test, or artifact that demonstrates it. ## Known limitations - List what is intentionally out of scope and what should be improved next.