architecture.md 1.3 KB

Edge Case Debates

  • Is an email Inbox/conversation more like a collection or a feed?

Content System

Content sources can be registered to handle IDs. The first to be registered for a pattern will be used.

It should take into account things like connectivity, availability, etc.

Live API, Offline cache, Archive sources.

If the live API only has 7 days of data, we may fall back cached or exported archive.

Testing

Unit and E2E tests run offline, except integration portions.

We can use the cached responses and responses module to accomplish this.

Provider template

Twitter is the furthest along, but each has some distinct features.

I was learning Python as I built this project.

Extensibility

We rely as much as possible on the constituent parts that we rely on.

Trac is an inspiration but invents everything from scratch which is over-engineering for us at this point.

We'll vet the pieces that we use well and rely on them. Trac for the HTTP routing and themes.

Dataclasses for the serialization.

https://stackoverflow.com/questions/7505988/importing-from-a-relative-path-in-python

https://www.geeksforgeeks.org/absolute-and-relative-imports-in-python/

https://stackoverflow.com/questions/40892104/how-to-organize-one-blueprint-with-multiple-routes-files

Content

Themes

Routes