You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<h3class="anchored" data-anchor-id="preview-the-full-website">Preview the full website</h3>
402
-
<divclass="sourceCode" id="cb1"><preclass="sourceCode sh code-with-copy"><codeclass="sourceCode bash"><spanid="cb1-1"><ahref="#cb1-1" aria-hidden="true" tabindex="-1"></a><spanclass="ex">clojure</span><spanclass="at">-M:m</span></span></code><buttontitle="Copy to Clipboard" class="code-copy-button"><iclass="bi"></i></button></pre></div>
394
+
<divclass="sourceCode" id="cb1"><preclass="sourceCode sh code-with-copy"><codeclass="sourceCode bash"><spanid="cb1-1"><ahref="#cb1-1" aria-hidden="true" tabindex="-1"></a><spanclass="ex">clojure</span><spanclass="at">-M:clay</span><spanclass="at">-a</span><spanclass="pp">[</span><spanclass="ss">:markdown</span><spanclass="pp">]</span></span></code><buttontitle="Copy to Clipboard" class="code-copy-button"><iclass="bi"></i></button></pre></div>
403
395
<divclass="sourceCode" id="cb2"><preclass="sourceCode sh code-with-copy"><codeclass="sourceCode bash"><spanid="cb2-1"><ahref="#cb2-1" aria-hidden="true" tabindex="-1"></a><spanclass="ex">quarto</span> preview site</span></code><buttontitle="Copy to Clipboard" class="code-copy-button"><iclass="bi"></i></button></pre></div>
<p>Exploramus, Communicamus, Crescimus<br><smallstyle="font-size: 1rem; color: #555;">We explore, we share, we grow.</small></p>
414
406
</div>
407
+
<p>Civitas Clojure offers a hassle-free way to host and share your notebooks without the overhead of creating a new project each time. By providing a shared, well-organized platform, it lets you focus on your ideas and code while automatically publishing your work to GitHub Pages. This streamlines collaboration, increases visibility, and makes contributing simple and efficient—so you can spend less time on setup and more time creating.</p>
415
408
<p>Learning technical subjects involves navigating complex webs of concepts. Currently, resources for learning Clojure exist as isolated articles, unconnected tutorials, or flat lists that do not capture how ideas relate to each other. This makes it difficult for learners to determine logical next steps or see how topics connect. Teachers and curriculum designers face similar challenges when trying to organize material in ways that reflect actual dependencies and alternatives.</p>
416
409
<p>Civitas approaches this problem by implementing a structured knowledge base where resources are explicitly linked based on their conceptual relationships. The hexagonal grid interface provides a visual representation of these connections, allowing users to naturally discover related content. Each resource includes metadata to indicate prerequisites, alternatives, and deeper explorations.</p>
417
410
<p>This structure serves several practical purposes. Learners can see multiple valid paths through the material. Teachers can construct guided sequences while maintaining visibility of adjacent concepts. The community can improve resources incrementally by adding or refining connections. The system is designed to grow organically as new relationships are identified and documented.</p>
<td>The <code>idea</code> namespace hosts explorations, concepts and insights</td>
460
445
</tr>
461
446
<trclass="even">
462
-
<td><code>content/talks</code></td>
463
-
<td>Presentation slides and related materials</td>
447
+
<td><code>content/lib</code></td>
448
+
<td>The <code>lib</code> namespace is tied to libraries, tools, and projects</td>
464
449
</tr>
465
450
<trclass="odd">
466
-
<td><code>content/ideas</code></td>
467
-
<td>Drafts, experiments, and work-in-progress content</td>
468
-
</tr>
469
-
<trclass="even">
470
451
<td><code>site</code></td>
471
-
<td>Quarto configuration for the website</td>
452
+
<td>Temporary build target for the Quarto website</td>
472
453
</tr>
473
454
</tbody>
474
455
</table>
475
-
<p>Each of <code>posts</code>, <code>pages</code>, <code>tutorials</code>, <code>talks</code>, <code>ideas</code> is a source-root. These directories make it easier to distinguish blog posts from everything else.</p>
476
-
<p>Namespace selection for notebooks follow standard Clojure namespace conventions to avoid conflicts.</p>
477
-
<p>Library-related notebooks: Use the library’s namespace prefix (e.g., scicloj.clay.v2.guide.getting-started).</p>
478
-
<p>Disambiguation: If a topic exists, qualify with additional context (e.g., scicloj.clay.v2.guide.getting-started.intellij).</p>
479
-
<p>Dependent utils/modules: Nest under a parent namespace (e.g., …getting-started.index, …getting-started.utils).</p>
456
+
<p>Shared images can go in <code>content/images</code>, but prefer images and data files as siblings to your namespace.</p>
457
+
<p>The difference between a posts and a page is identified by the presence or absence of <code>date</code> metadata.</p>
458
+
<p>Namespace selection for notebooks follow standard Clojure namespace conventions to avoid conflicts. Choose namespaces that fit with the content-first hierarchy. Files are grouped by what they’re about (not who wrote them or where they were presented). Author, date, tags and categories are included in metadata and will be used for grouping, filter of views.</p>
459
+
<p>Disambiguation: If a topic exists, qualify with additional context.</p>
480
460
<p>Civitas invokes <ahref="https://github.com/scicloj/clay">Clay</a> to convert Clojure notebooks into Markdown files, placing them in the <code>site</code> directory. This <code>site</code> directory serves as a build folder for <ahref="https://quarto.org/">Quarto</a>. Avoid adding files directly to <code>site</code>.</p>
481
461
<p>Static assets (such as images or data files) should be placed in the <code>content</code> directory. During the build process, any files in the <code>content</code> directory that are not Clojure files, are copied into the <code>site</code> directory. Quarto then builds the Markdown in <code>site</code> into HTML, which is placed in <code>_site</code> before deploying it to GitHub Pages.</p>
482
462
<p>During development, Clay serves HTML from the <code>temp</code> directory, which is git ignored.</p>
483
463
<p>Goal: Align with Clojure’s code organization while allowing organic, practical growth.</p>
<p>Subtopics: Semi-open (e.g., :web/frontend implies :web). Expect these to evolve.</p>
490
-
<p>Topics are one tagging method; others may emerge.</p>
491
-
<p>Tags want to be free: https://gwern.net/doc/philosophy/ontology/2005-04-shirky-ontologyisoverratedcategorieslinksandtags.html</p>
492
-
<p>But also we can help curate the content with a good set of top-level topics.</p>
467
+
<p>Follow the Quarto convention of categories, tags, and keywords. Fixed categories; <code>community</code>, <code>clojure</code>, <code>data</code>, <code>system</code>, <code>tooling</code>, <code>web</code>. Tags; flexible, open-ended for finer-grained labeling (e.g. <code>frontend</code>, <code>reagent</code>). Keywords; for SEO or search indexing; typically fewer and focused on discoverability.</p>
468
+
<p>Tags and metadata are the preferred organization principle: <ahref="https://gwern.net/doc/philosophy/ontology/2005-04-shirky-ontologyisoverratedcategorieslinksandtags.html">Categories, Links, and Tags</a></p>
0 commit comments