aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--TODO.md27
1 files changed, 27 insertions, 0 deletions
diff --git a/TODO.md b/TODO.md
new file mode 100644
index 0000000..46eeb39
--- /dev/null
+++ b/TODO.md
@@ -0,0 +1,27 @@
+# Future plans for this project:
+
+## Custom Fonts
+For ease-of-inclusion this should probably be handled by internal code, and provided as a set of properties on `lfm_embed::ctx::model::Data`.
+
+There are 3 main kinds of fonts we should support.
+- User-hosted fonts. These would be loaded directly from a link to a TTF,WOFF2,etc font file.
+- Google fonts fonts. In theory, we'd proxy these, but that's not 100% necessary.
+- Named fonts. e.x. 'serif', 'sans-serif', 'monospace'. Browser will handle these.
+
+There is no good way to expose a typed enum with the current wizard UI, and the resulting UI from this could allow added user flexibility.
+
+I propose the following API:
+
+- `?font=foo` corresponds directly with `* { font-family: 'foo' }` in the CSS.
+- `?font=foo&include-font=https://example.com/font.otf` will additionally append `@font-face { font-family: 'foo' src: url('https://example.com/font.otf') }`.
+
+There will also be a `?include-stylesheet` parameter, allowing for general custom styles, including google fonts et. al.
+
+
+## Move more things internal
+
+Of the crates currently relied on, the following appear too feature-packed should be replaced with simpler internal code.
+
+- duration-str
+- htmlize
+- urlencoding