diff options
Diffstat (limited to 'served')
| -rw-r--r-- | served/auth.html | 21 | ||||
| -rw-r--r-- | served/colophon.html | 21 | ||||
| -rwxr-xr-x | served/home.html | 6 | ||||
| -rw-r--r-- | served/now/now.html | 60 | ||||
| -rw-r--r-- | served/quark/create.html | 38 | ||||
| -rw-r--r-- | served/quark/delete.html | 8 | ||||
| -rw-r--r-- | served/quark/edit-section.html | 19 | ||||
| -rw-r--r-- | served/quark/edit.html | 36 | ||||
| -rw-r--r-- | served/quark/move.html | 19 | ||||
| -rw-r--r-- | served/starlight.html | 1 | ||||
| -rw-r--r-- | served/styles/quark-forms.css | 93 | ||||
| -rw-r--r-- | served/styles/quark.css | 53 | ||||
| -rw-r--r-- | served/words/weeknotes/2026/a1.html | 53 |
13 files changed, 284 insertions, 144 deletions
diff --git a/served/auth.html b/served/auth.html new file mode 100644 index 0000000..3a04c65 --- /dev/null +++ b/served/auth.html @@ -0,0 +1,21 @@ +--- +title=Auth! +--- +<h2>Login</h2> +<form action="/api/auth/login" method="post"> + <input type="text" placeholder="name" name="name"> + <input type="password" placeholder="password" name="password"> + <input type="submit" value="login~"> +</form> + +<h2>Register</h2> +<form action="/api/auth/register" method="post"> + <input type="text" placeholder="name" name="name"> + <input type="password" placeholder="password" name="password"> + <input type="submit" value="register+"> +</form> + +<h2>Logout</h2> +<form action="/api/auth/logout" method="post"> + <input type="submit" value="logout;"> +</form> diff --git a/served/colophon.html b/served/colophon.html new file mode 100644 index 0000000..93e7c33 --- /dev/null +++ b/served/colophon.html @@ -0,0 +1,21 @@ +--- +title=colophon +description=or, about this website +--- +this website has both a lot going on, and not a lot going on. all at once! + +it's hosted on a colocation, hostnamed coriander, inside of a virtual machine +running on cloud hypervisor. the vm's hostname is starshine, which pays +homage to the vps it was running on before, starlight. + +splorm, a webserver i wrote in rust using the axum framework, is what runs the +site itself. it's reverse proxied through nginx, which runs on coriander. + +the code and html was first written in vscode, but i've since started using +the editor gram, which is what splorm was written with. + +[@paragraphs off] +<!-- +cloud hypervisor: https://github.com/cloud-hypervisor/cloud-hypervisor +gram: https://gram-editor.com/ +--> diff --git a/served/home.html b/served/home.html index 3b2f826..3e39241 100755 --- a/served/home.html +++ b/served/home.html @@ -20,6 +20,7 @@ style=/styles/home.css it in <a href="bits/">bits/</a> if it feels like it wants to be there. </p> <p>Take a look at what I'm doing <a href="now/">now/</a>.</p> + <p id="quark-blurb">Also! Also! Definitely go to<br>my digital-garden-thing <a href="quark/">quark/</a></p> <p> There are living pages, updated when needed, for some <a href="things/">things/</a>. </p> @@ -55,8 +56,9 @@ style=/styles/home.css <template id="logintemplate"> <h2>Login~,.</h2> <p>hi genny~</p> - <form> - <input type="password" placeholder="password"> + <form action="/api/auth/login" method="post"> + <input type="hidden" name="name" value="gen"> + <input type="password" name="password" placeholder="password"> <input type="submit" value="login~"> </form> </template> diff --git a/served/now/now.html b/served/now/now.html index 4f16064..fd075b3 100644 --- a/served/now/now.html +++ b/served/now/now.html @@ -22,70 +22,30 @@ You can read more about it at [@paragraphs off] <section id="doingnow"> <div> - <h2>Looking for a job</h2> + <h2>Still job-lookin'</h2> <p> - I got laid off! I have been unemployed for three (3) months. Drat! - So I am going through the terrible, no good process of job-search - and trying to survive. - </p> - </div> - - <div> - <h2>coriander</h2> - <p> - This is a relatively new-to-me server. It's a colocation I have - in a datacenter where an old coworker works. He has yet to charge - me for it, which is lovely~ - </p> - <p> - I am working on moving dreamy.place to coriander, as well as - the little services and things that support it/run with it. Which - means git.dreamy.place will move over, too. - </p> - <p> - I've taken the opportunity to learn some about Docker. I moved - amble.quest to coriander a few weeks ago. It was not without it's - problems, but it's table now and in Docker :) - </p> - <p> - I'm also playing with virtual machines. I'm learning about - Cloud Hypervisor, which I really like so far. I configured - the networking with <code>nftables</code> for the first time, - which was fun! I'm writing a little program called - <code>september</code> that is meant to manage instances of - Cloud Hypervisor. I'm excited :) + It's bad out there, folks. I'm working on it! I have a few solid leads~ </p> </div> <div> <h2>dreamy.place; ∞</h2> <p> - ∞ is the directory/git repository that contains this website - and the text on it <i>(but not the images/assets)</i>. - I want to change the design and feeling of this here website, - so I've put it here. It's an intention, and I'm starting on it - by creating this page <3 + Still working on changing things up for ∞. + I got distracted by splorm and quark, though :-) </p> </div> <div> - <h2>Heartbeat</h2> - <p> - I want to "finish" Heartbeat, whatever <i>finish</i> means :) - </p> + <h2>splorm & quark</h2> <p> - For now, finish means creating all the clients I set out - to write, the most important of which are macOS/iOS, web, - and Linux. Android and Windows are lower priority because - I do not use that platforms much. + I rewrote my webserver, awake, and the new rendition, splorm, is + much more maintanable <i>and</i> even has documentation! </p> <p> - I've had a good time learning Swift and SwiftUI while - working on the darwin apps <i>(macOS/iOS)</i>. They are - almost to a point where I would feel comfortable switching - to working on the Linux and CLI clients. I am scared of - GTK4, but it's what I plan to use on Linux, so we'll see - how I do~ + With that, I was able to get <a href="/quark">quark/</a> working! + It's a little digital garden that I can edit from my website, so I can + write from my phone now, too! </p> </div> </section> diff --git a/served/quark/create.html b/served/quark/create.html index 22cecb7..4da37ab 100644 --- a/served/quark/create.html +++ b/served/quark/create.html @@ -1,17 +1,35 @@ +<section id="cancel" class="box"> + <a href="?">cancel.</a> +</section> + +<section id="section-list" class="box"> + <h2>sections</h2> + <ul> +{%pattern sections-list}<li>{section}</li>{%end} + </ul> + <form id="create-section-form" action="/quark/api/create/section" method="POST" target="preview"> + <input type="text" name="name" placeholder="new section" spellcheck="true" autocomplete="off"> + <input type="submit" value="Create" name="create" id="submit-create-section"> + </form> +</section> + <section id="create" class="box"> - <h2>Quark: Page Creation</h2> - <form id="create-form" action="/api/quark/create" method="POST" enctype="multipart/form-data" target="preview"> - <input type="text" name="name" placeholder="Name" /> - <textarea name="content"></textarea> - <input type="submit" value="Preview" name="preview" id="submit-preview" /> - <input type="submit" value="Create Page" id="submit-create" /> - <input type="submit" value="Create Draft" name="draft" id="submit-draft" disabled /> + <h2>Page Creation</h2> + <form id="create-form" action="/quark/api/create" method="POST" enctype="multipart/form-data" target="preview"> + <datalist id="sections"> + {%pattern sections-data}<option value="{section}"></option>{%end} + </datalist> + <input type="text" name="name" placeholder="Name" spellcheck="true" list="sections"> + <textarea name="content" spellcheck="true"></textarea> + <input type="submit" value="Preview" name="preview" id="submit-preview"> + <input type="submit" value="Create Page" name="create" id="submit-create"> + <input type="submit" value="Create Draft" name="draft" id="submit-draft" disabled> </form> </section> -<section class="box"> +<section id="preview" class="box"> <h2>Page Preview</h2> - <iframe id="preview" name="preview"></iframe> + <iframe id="preview-frame" name="preview"></iframe> </section> <section class="box" style="display: none"> @@ -21,4 +39,4 @@ <li><a href="{draft.edit_link}">{draft.name}</a></li> {%end} </ol> -</section> \ No newline at end of file +</section> diff --git a/served/quark/delete.html b/served/quark/delete.html new file mode 100644 index 0000000..740abca --- /dev/null +++ b/served/quark/delete.html @@ -0,0 +1,8 @@ +<section> + <h2>Confirm deletion of '{page}'</h2> + <form id="edit-form" action="/quark/api/delete" method="POST"> + <input type="hidden" name="name" value="{page}"> + <input type="submit" value="Confirm" name="confirmation"> + <input type="submit" value="No, oops" name="rejection"> + </form> +</section> diff --git a/served/quark/edit-section.html b/served/quark/edit-section.html new file mode 100644 index 0000000..4d5e905 --- /dev/null +++ b/served/quark/edit-section.html @@ -0,0 +1,19 @@ +<section id="cancel" class="box"> + <a href="?">back</a> +</section> + +<section id="edit-section" class="box"> + <h2>Editing section '{section-editing}'</h2> + <form id="edit-section-form" action="/quark/api/edit/section" method="POST" target="result"> + <input type="hidden" name="name" value="{section-editing}"> + <label for="edit-home">Section Homepage Redirection</label> + <input type="text" id="edit-home" name="home" value="{section-home}"> + <input type="submit" value="Edit Section" name="edit"> + </form> + <!-- https://stackoverflow.com/a/16661115 --> +</section> + +<section id="preview" class="box"> + <h2>Form Result</h2> + <iframe name="result"></iframe> +</section> diff --git a/served/quark/edit.html b/served/quark/edit.html index aeb036f..10fdcf3 100644 --- a/served/quark/edit.html +++ b/served/quark/edit.html @@ -1,16 +1,30 @@ -<section> - <h2>Quark: Editing page '{page-editing}'</h2> - <form id="edit-form" action="/api/quark/edit" method="POST" target="preview" enctype="multipart/form-data"> - <input type="hidden" name="name" value="{page-editing}" /> - <textarea name="content">{page-content}</textarea> - <input type="text" name="commit" placeholder="Change Message" /> - <input type="submit" value="Edit Page" /> - <input type="submit" value="Preview Page" name="preview" /> +<section id="cancel" class="box"> + <a href="?">cancel.</a> +</section> + +<section id="frontmatter" class="box"> + <details> + <summary>Opengraph</summary> + <div> + <label for="og-description">Description</label> + <textarea id="og-description" name="og-description" form="edit-form">{og-description}</textarea> + </div> + </details> +</section> + +<section id="edit" class="box"> + <h2>Editing '{page-editing}'</h2> + <form id="edit-form" action="/quark/api/edit" method="POST" target="preview" enctype="multipart/form-data"> + <input type="hidden" name="name" value="{page-editing}"> + <textarea name="content" spellcheck="true">{page-content}</textarea> + <input type="text" name="commit" placeholder="Change Message (optional)" spellcheck="true" autocomplete="off"> + <input type="submit" value="Edit Page" name="edit"> + <input type="submit" value="Preview Page" name="preview"> </form> <!-- https://stackoverflow.com/a/16661115 --> </section> -<section> +<section id="preview" class="box"> <h2>Page Preview</h2> - <iframe id="preview" name="preview"></iframe> -</section> \ No newline at end of file + <iframe id="preview-frame" name="preview"></iframe> +</section> diff --git a/served/quark/move.html b/served/quark/move.html new file mode 100644 index 0000000..5399259 --- /dev/null +++ b/served/quark/move.html @@ -0,0 +1,19 @@ +<section id="cancel" class="box"> + <a href="?">back</a> +</section> + +<section id="move" class="box"> + <h2>Moving '{page-moving}'</h2> + <form id="edit-section-form" action="/quark/api/move" method="POST" target="result"> + <input type="hidden" name="from" value="{page-moving}"> + <label for="edit-home">New Page Location</label> + <input type="text" id="edit-home" name="to"> + <input type="submit" value="Move"> + </form> + <!-- https://stackoverflow.com/a/16661115 --> +</section> + +<section id="preview" class="box"> + <h2>Form Result</h2> + <iframe name="result"></iframe> +</section> diff --git a/served/starlight.html b/served/starlight.html index b4c50f3..2169dc8 100644 --- a/served/starlight.html +++ b/served/starlight.html @@ -18,6 +18,7 @@ corgi's stats page: <a href="https://git.dreamy.place/stats">git.dreamy.place/st Graphs are unanimated GIFs. Samples are taken every minute and graphs are generated every fifteen, so data should be reasonably current. +[@markup off] [@paragraphs off] <section id="stats"> <section class="stat"> diff --git a/served/styles/quark-forms.css b/served/styles/quark-forms.css index 891008b..8e08152 100644 --- a/served/styles/quark-forms.css +++ b/served/styles/quark-forms.css @@ -19,6 +19,7 @@ textarea { background-color: var(--background-dim); resize: vertical; min-height: 25vh; + font-size: inherit; font-family: inherit; border: 2px solid var(--background-dimmer); @@ -28,11 +29,18 @@ textarea { } } -iframe#preview { - width: var(--pwidth); - margin-top: 1rem; - border: none; - background-color: var(--background-dim); +#preview { + h2 { + margin-bottom: 0; + } + + iframe { + max-width: var(--pwidth); + width: 100%; + margin-top: 1rem; + border: none; + background-color: var(--background-dim); + } } /* MARK: Form Specific */ @@ -42,7 +50,7 @@ iframe#preview { row-gap: 1rem; } -#create { +#create, #edit, #edit-section { border-color: var(--box-border-alt); } @@ -70,6 +78,73 @@ iframe#preview { } } +#cancel { + width: min-content; +} + +#create-section-form { + margin-top: 0.5rem; + display: grid; + grid-template-columns: 1fr min-content; + gap: 0.5rem; +} + +#edit-section-form { + display: grid; + grid-template-columns: 1fr; + + input[type=submit] { + margin-top: 0.5rem; + } +} + +#frontmatter div { + display: grid; + grid-template-columns: 1fr; + column-gap: 0.5rem; + + border-top: 1px solid var(--text-dim); + margin-top: 0.25rem; + padding-top: 0.25rem; + + textarea { + resize: none; + min-height: 3rem; + max-height: 10vh; + } +} + +#section-list { + h2 { + font-size: 1.2rem; + margin: 0; + } + + ul { + display: flex; + flex-direction: row; + flex-wrap: wrap; + + margin: 0; + padding: 0; + + list-style: none; + + color: var(--text-dim); + font-size: 1rem; + } + + li::before { + content: '~'; + margin: 0 0.25rem; + } + + li:first-of-type::before { + content: none; + margin: 0; + } +} + /* MARK: Media */ @media (min-width: 50rem) { body { @@ -102,10 +177,8 @@ iframe#preview { height: 100%; } - iframe#preview { - max-width: var(--pwidth); - width: 100%; + #preview > iframe { height: 100%; margin-top: 0; } -} \ No newline at end of file +} diff --git a/served/styles/quark.css b/served/styles/quark.css index 6d69a2d..8f5450e 100644 --- a/served/styles/quark.css +++ b/served/styles/quark.css @@ -40,7 +40,8 @@ nav { width: fit-content; /* shove the tools box all the way left */ - margin: 0 0 0 auto; + /* give it a slight top-margin so on mobile it's not against nav */ + margin: 0.25rem 0 0 auto; a { color: var(--nav); @@ -65,9 +66,42 @@ nav, } main { - width: var(--pwidth); + width: min(96vw, var(--pwidth)); margin: 0 auto; - height: 100%; +} + +article { + line-height: 1.4; + + * { + margin: 0; + padding: 0; + } + + hr { + margin: 1rem 0; + } + + p, h1, ul { + margin-bottom: 1rem; + } + + h2 { + margin-bottom: 0.5rem; + } + + p { + line-height: inherit; + + &:has(+ ul) { + margin-bottom: 0; + } + } + + ul { + line-height: 1.1; + padding-left: 1em; + } } .box { @@ -83,8 +117,8 @@ main { margin-top: 0; } - /* main.box */ - &:where(main) { + /* article.box */ + &:where(article) { border: 1px solid var(--box-border-alt); background-color: var(--box-background-alt); } @@ -100,14 +134,14 @@ main { body#preview { padding: 1rem; - &>p:first-of-type { + &>:first-child { margin-top: 0; } } /* MARK: Wide//3 Boxes */ -@media (min-width: 50rem) { +@media (min-width: 55rem) { body { display: flex; flex-direction: row; @@ -146,6 +180,9 @@ body#preview { main.page { order: 2; flex: 0 0 35rem; + } + + article { min-height: 50vh; } @@ -158,4 +195,4 @@ body#preview { margin-top: 8rem; text-align: right; } -} \ No newline at end of file +} diff --git a/served/words/weeknotes/2026/a1.html b/served/words/weeknotes/2026/a1.html deleted file mode 100644 index 2dd4b21..0000000 --- a/served/words/weeknotes/2026/a1.html +++ /dev/null @@ -1,53 +0,0 @@ ---- -template=post -title=Intent a1 -style=/styles/post.css -style=../writing.css -path-offset=1 - -published=2026-09-23 21:50 - -description=Intent a1 ---- - -Hello! - -This is the first post in a series. It should be the second, but I want my -webserver to work more for that one. It's special! Hopefully I can get it -running well enough for next week. - -I did my unemployment last week! Horray, three-hundred-and-seventy more -dollars from the great (?) state of Wisconsin. Hopefully I only have to file -a few more, but we'll see. I should make a page like -<a href="/bits/time.html">time.html</a> that counts that days I've been -unemployed. I think it would make me sad and motivated, in a way. - -Speaking of unemployment, erm- Speaking of Trying To Have Employment: - -I applied to target (twice). It made me do an online assesment! The nerve! - -There was a section that had you compare yourself to two different-but-interlinked -statements and place yourself on a sliding scale. It felt like those online -personality tests, but for... for employment. Probably about as useful as a -Rorschach test. "Hmm, yes, I see a customer looking at a shelf of soups in this one". -Bleh. - -They also want me to do a "Recorded Interview" that will no doubt be some dumb -AI stuff that makes me Want To Do Things. - -<hr/> - -In more exciting news! I went to an All Time Low show yesterday. It was very good! I went -with my partner and we got band-related tattoos. They are different, -but they are on the same part of opposite arms and they feel connected. I love her -greatly, and I am very excited to finally have some ink on my skin. - -I'll show you next week when the second-skin is off. Then you can get the exact same and -commit crimes to frame me! - -That's it, bye. - -Yours,<br/> -Inann - -<i>also, the url on this will change in the near future. don't become too attached to it</i> |
