diff --git a/.gitignore b/.gitignore index 003757c..2a4e284 100644 --- a/.gitignore +++ b/.gitignore @@ -28,6 +28,9 @@ src/assets/js/ !dist/vessel_stubs.c !dist/soul-demo.c !dist/page_close.c +!dist/page_css.c +!dist/page_ga.c +!dist/page_schema.c !dist/elhtml_impl.c !dist/entrypoint.sh !dist/engram-snapshot.json diff --git a/dist/page_css.c b/dist/page_css.c new file mode 100644 index 0000000..885f479 --- /dev/null +++ b/dist/page_css.c @@ -0,0 +1,1808 @@ +#include +#include +#include "el_runtime.h" + +el_val_t page_css(void); + +el_val_t page_css(void) { + return EL_STR(""); +} diff --git a/dist/page_ga.c b/dist/page_ga.c new file mode 100644 index 0000000..15b1fb9 --- /dev/null +++ b/dist/page_ga.c @@ -0,0 +1,15 @@ +#include +#include +#include "el_runtime.h" + +el_val_t page_ga_script(void); + +el_val_t page_ga_script(void) { + return EL_STR(""); +} diff --git a/dist/page_schema.c b/dist/page_schema.c new file mode 100644 index 0000000..ea94612 --- /dev/null +++ b/dist/page_schema.c @@ -0,0 +1,110 @@ +#include +#include +#include "el_runtime.h" + +el_val_t page_schema(void); + +el_val_t page_schema(void) { + return EL_STR(""); +} diff --git a/manifest.el b/manifest.el index a8db0d9..6ca3cd8 100644 --- a/manifest.el +++ b/manifest.el @@ -13,4 +13,7 @@ build { c_source "dist/vessel_stubs.c" c_source "dist/elhtml_impl.c" c_source "dist/page_close.c" + c_source "dist/page_css.c" + c_source "dist/page_ga.c" + c_source "dist/page_schema.c" } diff --git a/src/styles.el b/src/styles.el index 2b79fcc..9798b56 100644 --- a/src/styles.el +++ b/src/styles.el @@ -4,1963 +4,57 @@ // This file contains NO application logic - only the outer HTML // document structure and presentation layer. // -// CSS is kept as a string constant here to keep component files -// free of style concerns. The inline - - - - - - - - - - - - - - - - - - - - - - - - - - - return "" + h + "" -} +// Pre-compiled C functions — bypass elc tokenizer for CSS and complex scripts +extern fn page_css() -> String +extern fn page_ga_script() -> String +extern fn page_schema() -> String extern fn page_close() -> String + +// el-html vessel — extern declarations (implementations in dist/elhtml_impl.c) +extern fn el_meta(name: String, content: String) -> String +extern fn el_meta_charset(charset: String) -> String +extern fn el_link_stylesheet(href: String) -> String +extern fn el_script_src(src: String, defer_load: Bool) -> String +extern fn el_script_inline(js: String) -> String +extern fn el_title(text: String) -> String + +fn page_head() -> String { + return el_meta_charset("UTF-8") + + el_meta("viewport", "width=device-width, initial-scale=1.0") + + el_title("Neuron - The AI That Remembers You") + + el_meta("description", "Every AI resets when you close the tab. Neuron doesn't. Runs on your machine. Remembers everything. Cheaper than ChatGPT on day one.") + + "" + + "" + + "" + + "" + + el_link_stylesheet("https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&family=IBM+Plex+Sans:wght@300;400;500;600&display=swap") + + page_css() + + "" + + "" + + "" + + "" + + page_ga_script() + + "" + + "" + + "" + + "" + + "" + + "" + + "" + + "" + + "" + + "" + + page_schema() +} + +fn page_open() -> String { + return "" + page_head() + "" +}