Open
Description
Enhancements
- Add Chapter Numbers (blocked by numbers are stripped out of the sidebar the-guild-org/the-guild-docs#507)
- Add Codeline Annotations (blocked by Code blocks with code line change annotations the-guild-org/the-guild-docs#506)
- Add Graphics (blocked by mermaid-js integration the-guild-org/the-guild-docs#502)
- Introduction Overview tutorial #883 (comment)
- Show difference between REST and GraphQL API tutorial #883 (comment)
- Replace install instructions with the
<PackageInstall />
component (blocked by PackageInstall allow passing dev and exact instructions the-guild-org/the-guild-docs#510) - Improve Images used throughout the tutorial to be more mobile/desktop friendly aka can be read
- Revisit the Getting Started section (tutorial #883 (comment))
Potentially, we don't need to show the usage without yoga first. - Evaluate Prisma Links. (tutorial #883 (comment))
Potentially, we should provide alternative resources. - More default field-resolver information. (tutorial #883 (comment))
- Gamification
- Add quiz for each chapter
- add quiz for testing skill of students
- use quiz result analytics for improving the tutorial
- XP / Point Score for completed chapters
- Add quiz for each chapter
Additional Content
1. Codebase architecture and tools
- Split schema into reusable modules
Show-case type merging, by refactoring the current monolith schema into modules. Mention server preset's - Integrating
graphql-eslint
2. Production usage
- Production deployment
A guide for deploying the app to production. Platform to be determined. - Rate Limiting.
Implement rate-limiting for commenting and posting.
3. Abstract types
- Advanced Error Handling using Union and Interface Types
- Interface Types for Feed Items
Introduce a new feed item type called Image. Change feed to returnFeedItem
interface type. Database migrations? 🤔
4. Integrating with 3rd party APIs
- Integrate another third party API
- Call a REST API from within GraphQL Resolvers
- Call a GraphQL API from within GraphQL Resolvers
- Merge local GraphQL Schema with a remote GraphQL schema
- Caching and batching requests to solve N+1 problems
Revisit mutation fields and change them to use union and interface types for expressing the errors.
5. Pagination
- Relay Style Pagination
Explain drawbacks of offset based pagination. Show implementation of relay style pagination. Implement correct indices for doing performant relay-style pagination. - Sorting + Indices
Introduce post flavours using enum type. Filter feed per flavour. Set correct database indices for doing performant post flavour feed look-ups.
6. Subscriptions
- Subscriptions
Explain concepts. Set up subscription fields for subscribing to the latest feed items as they are posted.- Architectural Diagram tutorial #883 (comment)
- Emphasize usage of Repeater in the documentation/tutorial Emphasize usage of
Repeater
in the documentation/tutorial #2672
7. Auth
- Authentication with
useGenericAuth
Introduce Prisma modelUser
and addregister
andlogIn
mutations. LimitMutation.postLink
andMutation.postCommentOnLink
to authentciated users.
Further thoughts
- Should we provide a raw SQL non-prisma variant?
- Should we provide a no-sql (mongodbor similar ) variant?
Metadata
Metadata
Labels
No labels