kendraio / kendraio-app

Kendraio App
https://app.kendra.io
MIT License
22 stars 6 forks source link

To URL or not to URL?... #97

Open dahacouk opened 4 years ago

dahacouk commented 4 years ago

That is the question! The problem is that URLs will exist in Kendraio App to refer to itself whilst it is in development; but also when hosted as a website. So, we need to make URLs work internally. This does in some ways link to #31. The problem stems from the tension between human readable and machine readable URLs. Gut proposal (not much thought behind it yet): all URLs take the form of a randomised alphanumeric, so something like:

Then with the option of their being a human readable component in lower-kebab-case like:

And the optional human readable component is derived from the title and not editable directly. There endeth the gut proposal.

dahacouk commented 4 years ago

A workflow/adapter can suggest URL aliases.

darrenmothersele commented 4 years ago

What to do about URLs?

If we switch to GUIDs for workflows, we’ll end up with something like this:

https://app.kendra.io/flow/8d93c039-6a68-4871-896f-0eacdb40b518

Where should “friendly urls” go? How are they resolved?

How should we deal with resolving them now (via workflow cloud?), and in the future (when there’s no central server)?

darrenmothersele commented 4 years ago

After converstaion with @dahacouk we have decided to use a GUID based URL for now, but we still need to plan for how to allow "friendly" urls, and how to resolve Flow IDs that are not local to the current instance of the app.

darrenmothersele commented 4 years ago

Related: https://hashids.org/ if generating ID from central place (eg Flow Cloud). But, we probably want to assign a GUID when creating new workflow. This can be done in the App. Using GUID means we wont have ID clashes. https://en.wikipedia.org/wiki/Universally_unique_identifier

To confirm, by GUID we actually mean UUID v4