Skip to content

[Documentation]: Re-organize DocC #58

@MasterJ93

Description

@MasterJ93

Summary

The DocC has several inconsistencies and navigational issues

Description

Several pages in the DocC are either outdated, inconsistent, difficult to read and understand, and/or out of place. This issue is simply to mark down all places where things are problematic and fix them accordingly. The result is a cohesive, more developer-friendly experience.

What type of issue is it?

Spelling, Grammar, Inconsistency, Outdated

ATProtoKit Version

0.20.0

Documentation Location

All parts of the DocC

Additional Context

There are many, many sections of the DocC that needs work. Below is a list of what needs to happen.

  • Completed
    ATProtoKit, ATProtoBluesky, ATProtoBlueskyChat, and ATProtoAdmin classes are currently put in alphabetical order (with respect to purely the methods) and grouped by the type of object. This is okay, but when it comes to classes with a ton of instance methods, it becomes difficult to find what you need.

    For each class, they need to be organized into different categories, depending on the class. More specifically, methods will need to be organized by task for each class, similarly to how URLSession in Foundation has their methods sorted by different tasks. This gives more opportunities to fit certain relevant articles (and potentially sample code and tutorials) within the sub-sections.

    For ATProtoBluesky in particular, it will be sorted by whatever records are available. They may also be sorted by certain tasks, if need be. ATLinkBuilder-related documentation may be able to fit there, too, since that protocol is most useful in there.

  • Completed
    Sample code needs to be made in order to help developers see a clear picture of what's going on. These include:

    • A macOS and Linux console app to showcase the ability to log in, create a simple post, and view raw Codable outputs.
    • A macOS and Linux GUI app to showcase the above, but in a way that's user-friendly.
    • An iOS app, showcasing how to integrate ATProtoKit into a SwiftUI project (using both the MVVM pattern, as well as the pattern Apple typically uses when showcasing SwiftUI (we're going to call it "MV" for now).
    • A Linux app that demonstrates running ATProtoKit in the server for the purposes of making a bot account. The example bot will post a random emoji every minute or five minutes, depending on the user's setting).
    • A macOS app that showcases how to view feeds (both logged in and logged out).
  • Completed
    Tutorials will also be made. They will include:

    • Creating a simple macOS or Linux console app that lets you log in, create a post, attach an external embed, and attach an image embed.
    • Create an iOS GUI app to integrate ATProtoKit in a SwiftUI application (both in MVVM and MV patterns).
    • Creating a server bot with logging in and creating a post.
    • Creating a macOS GUI app for getting records and deleting records.
  • Completed
    More articles need to be made.

    • Example projects that you can make with ATProtoKit

More things will be updated over time.

Note

This will most likely be completed within the next several 0.x updates.

Metadata

Metadata

Assignees

Labels

documentationImprovements or additions to documentationgood first issueGood for newcomers

Projects

Status

In Progress

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions