Sitix is a modern SSG (Static Site Generator) that allows you total control over how your project is assembled, without sacrificing ease. It uses an object/scope model with efficient file includes, conditional branching, looping, and command-line configuration to make stunning websites without the mess.
+
+
+
+
Imagine an SSG
that's FAST
that's project agnostic
that Keeps It Simple, Stupid
that Just Makes Sense
that makes no assumptions
Sitix
Sitix is a modern SSG (Static Site Generator) that allows you total control over how your project is assembled, without sacrificing ease. It uses an object/scope model with efficient file includes, conditional branching, looping, and command-line configuration to make stunning websites without the mess.
-
Template all the things. Any Sitix file can be a template; the [?] opening phrase indicates that (for whatever reason) the file shouldn't be rendered normally, but still may be included in other files - for configuration, templating, or even modular elements!
+
Template all the things. Any Sitix file can be a template; the [?] opening phrase indicates that (for whatever reason) the file shouldn't be rendered normally, but still may be included in other files - for configuration, templating, or even modular elements!
-
Sitix by Tyler Clarke
Links
More Links
Information
Site designed by Tyler Clarke and built with Sitix.
\ No newline at end of file
+
+
+
Sitix is a universal preprocessor. HTML? Of course. CSS? Yep! JavaScript? Certainly! Sitix will template and preprocess anything, whether it be a nice simple HTML file or a hand-edited GIF from 1998. Say goodbye to annoying configuration discrepancies between CSS and HTML and JavaScript - just throw your shared config in a config.stx file and let Sitix do the rest!
+
+
+
No more restrictive project structures, irritating configuration files, or magic. Goodbye Ruby, "blog-awareness", difficult configuration, and bulky outputs. Sitix renders what you want, when you want it, and doesn't ask questions.
Like what you see? install Sitix and start building modern websites now!
Information Sitix (including this website) is open-sourceFree Software protected by GNU GPLv3. Looking to contribute? The source code for this website is hosted on Github, as is Sitix itself. Sitix is still young and probably buggy; if you have issues, submit a bug report at the issues page or contact me at plupy44@gmail.com (github issue preferred). If you want to contribute, but don't know where to start, see The Todo List.
Site designed by Tyler Clarke and built with Sitix. This page uses the Lato fonts.
\ No newline at end of file
diff --git a/output/pages/about.html b/output/pages/about.html
index 5c716bb..ef39eb9 100644
--- a/output/pages/about.html
+++ b/output/pages/about.html
@@ -1,7 +1,8 @@
-
- Sitix | About
Information Sitix (including this website) is open-sourceFree Software protected by GNU GPLv3. Looking to contribute? The source code for this website is hosted on Github, as is Sitix itself. Sitix is still young and probably buggy; if you have issues, submit a bug report at the issues page or contact me at plupy44@gmail.com (github issue preferred). If you want to contribute, but don't know where to start, see The Todo List.
Site designed by Tyler Clarke and built with Sitix. This page uses the Lato fonts.
\ No newline at end of file
diff --git a/output/pages/install.html b/output/pages/install.html
new file mode 100644
index 0000000..f2c0c1e
--- /dev/null
+++ b/output/pages/install.html
@@ -0,0 +1,14 @@
+
+
+
+ Sitix | Install Sitix
+ At the moment, Sitix has no prebuilt binaries; I hope to include RPM/DEB packages in the next release. To install it, you'll need to clone
+ the Github repository, run ./build.sh, and (assuming the build completes successfully)
+ copy the generated sitix binary to some PATH-accessible location (/usr/bin is a good bet). Sitix requires a C++20-compatible
+ G++ installation; it has no other dependencies. Sitix is theoretically cross-compilable to Windows, but I have no intention of ever officially supporting Windows.
+
Information Sitix (including this website) is open-sourceFree Software protected by GNU GPLv3. Looking to contribute? The source code for this website is hosted on Github, as is Sitix itself. Sitix is still young and probably buggy; if you have issues, submit a bug report at the issues page or contact me at plupy44@gmail.com (github issue preferred). If you want to contribute, but don't know where to start, see The Todo List.
Site designed by Tyler Clarke and built with Sitix. This page uses the Lato fonts.
\ No newline at end of file
diff --git a/output/pages/todo.html b/output/pages/todo.html
new file mode 100644
index 0000000..7a70a82
--- /dev/null
+++ b/output/pages/todo.html
@@ -0,0 +1,17 @@
+
+
+
+ Sitix | Todo
+ Sitix is still a pretty young piece of software, so if there's a missing feature that isn't on this list, don't hesitate to submit a feature request on the issues page.
+ Alternatively, you could just write it yourself! This TODO list is mostly for my memory, but I would love codebase contributions to get some things crossed off.
+
+
+
+
Markdown support with an @-directive
+
Code cleaning (need to fix memory management especially)
+
Make config less hack (move from [i config] to [i exists], and create empty objects on global with -c)
+
Add an unpack/ghost operator so setting objects to other objects works (something like [=ghostingName-] [%ghostedObject] [/])
Information Sitix (including this website) is open-sourceFree Software protected by GNU GPLv3. Looking to contribute? The source code for this website is hosted on Github, as is Sitix itself. Sitix is still young and probably buggy; if you have issues, submit a bug report at the issues page or contact me at plupy44@gmail.com (github issue preferred). If you want to contribute, but don't know where to start, see The Todo List.
Site designed by Tyler Clarke and built with Sitix. This page uses the Lato fonts.
\ No newline at end of file
diff --git a/output/res/forloop-example.png b/output/res/forloop-example.png
new file mode 100644
index 0000000..3d93a54
Binary files /dev/null and b/output/res/forloop-example.png differ
diff --git a/output/res/lato.css.png b/output/res/lato.css.png
new file mode 100644
index 0000000..07b124b
Binary files /dev/null and b/output/res/lato.css.png differ
diff --git a/output/res/lato/lato.css b/output/res/lato/lato.css
index 2bd502e..ea2309e 100644
--- a/output/res/lato/lato.css
+++ b/output/res/lato/lato.css
@@ -1 +1 @@
- /* Sitix script for the Lato font-face declarations. My editor shows numerous syntax errors; this is because it does not support Sitix scripting. */ @font-face { font-family: Lato; src: url("http://localhost:8080/res/lato/Lato-Italic.ttf"); font-weight: normal; font-style: italic, oblique; } @font-face { font-family: Lato; src: url("http://localhost:8080/res/lato/Lato-Bold.ttf"); font-weight: bold; font-style: normal; } @font-face { font-family: Lato; src: url("http://localhost:8080/res/lato/Lato-BoldItalic.ttf"); font-weight: bold; font-style: italic, oblique; } @font-face { font-family: Lato; src: url("http://localhost:8080/res/lato/Lato-Regular.ttf"); font-weight: normal; font-style: normal; }
\ No newline at end of file
+/* Sitix script for the Lato font-face declarations. My editor shows numerous syntax errors; this is because it does not support Sitix scripting. */ @font-face { font-family: Lato; src: url("http://localhost:8080/res/lato/Lato-Bold.ttf"); font-weight: bold; font-style: normal; } @font-face { font-family: Lato; src: url("http://localhost:8080/res/lato/Lato-BoldItalic.ttf"); font-weight: bold; font-style: italic; } @font-face { font-family: Lato; src: url("http://localhost:8080/res/lato/Lato-Italic.ttf"); font-weight: normal; font-style: italic; } @font-face { font-family: Lato; src: url("http://localhost:8080/res/lato/Lato-Regular.ttf"); font-weight: normal; font-style: normal; }
\ No newline at end of file
diff --git a/output/res/main.css b/output/res/main.css
index a978679..f6626ce 100644
--- a/output/res/main.css
+++ b/output/res/main.css
@@ -25,6 +25,11 @@ img {
text-align: center;
}
+#nav > div > a {
+ margin-left: 20px;
+ margin-right: 20px;
+}
+
#nav > a {
top: 0px;
position: absolute;
@@ -50,6 +55,7 @@ div.text {
grid-template-areas: 'top top top'
'line1 line2 line3';
margin-top: 50px;
+ grid-template-columns: 1fr 1fr 1fr;
}
#bottom > div:first-child {
@@ -58,12 +64,12 @@ div.text {
}
#bottom > div:first-child > a {
- display: inline-block;
height: 2em;
-}
-
-#bottom > div:first-child > span {
- transform: translateY(-1em);
+ margin-left: auto;
+ margin-right: 0px;
+ display: inline-block;
+ width: 2em;
+ transform: translateY(0.5em);
}
#bottom > div:first-child > a > img {
@@ -71,7 +77,11 @@ div.text {
}
#bottom > div:first-child > * {
- margin: 10px;
+ margin-bottom: 20px;
+ margin-top: 20px;
+}
+
+#bottom > div:first-child > span {
}
a {
@@ -83,8 +93,14 @@ a:hover {
color: #999999;
}
-#main {
+body {
min-height: 100vh;
+ display: flex;
+ flex-direction: column;
+}
+
+#bottom {
+ margin-top: auto;
}
.text.scrolly {
@@ -174,6 +190,7 @@ div.toptext {
display: flex;
padding-left: 10vw;
padding-right: 10vw;
+ align-items: center;
}
.textimage > .textimage-text {
@@ -186,15 +203,32 @@ div.toptext {
flex-direction: row-reverse;
}
+.textimage.scrolly:nth-child(2n + 1) {
+ transform: translateX(100vw);
+}
+
.textimage.scrolly {
- justify-content: space-between;
- width: 200vw;
- transform: translate(-50vw);
+ width: 0px;
overflow: hidden;
- transition: width 5s, transform 5s;
+ transition: width 2s, transform 2s, padding 2s;
+ box-sizing: border-box;
+ padding: 0px;
}
.textimage.scrolly.scrolly-entered {
- width: auto;
+ width: 100vw;
transform: none;
-}
\ No newline at end of file
+ padding-left: 10vw;
+ padding-right: 10vw;
+}
+
+.plug {
+ text-align: center;
+ font-size: 3em;
+}
+
+code {
+ background-color: #000044;
+ color: white;
+ font-family: monospace;
+}
diff --git a/site/index.html b/site/index.html
index 32e456a..77d76b6 100644
--- a/site/index.html
+++ b/site/index.html
@@ -30,8 +30,17 @@
[=textimage_text-]
Template all the things. Any Sitix file can be a template; the \[?] opening phrase indicates that (for whatever reason) the file shouldn't be rendered normally,
but still may be included in other files - for configuration, templating, or even modular elements!
-[/]
-[=textimage_source-][^baseurl]/res/default.html.png[/]
-[^textimage]
+[/][=textimage_source-][^baseurl]/res/default.html.png[/][^textimage]
+[=textimage_text-]
+ Sitix is a universal preprocessor. HTML? Of course. CSS? Yep! JavaScript? Certainly! Sitix will template and preprocess anything, whether it be a nice simple HTML file or a hand-edited GIF
+ from 1998. Say goodbye to annoying configuration discrepancies between CSS and HTML and JavaScript - just throw your shared config in a config.stx file and let Sitix do the rest!
+[/][=textimage_source-][^baseurl]/res/lato.css.png[/][^textimage]
+
+ No more restrictive project structures, irritating configuration files, or magic. Goodbye Ruby, "blog-awareness", difficult configuration, and bulky outputs.
+ Sitix renders what you want, when you want it, and doesn't ask questions.
+
+
+ Like what you see? install Sitix and start building modern websites now!
+
[/]
[#templates/default.html]
\ No newline at end of file
diff --git a/site/modules/textimage.stx b/site/modules/textimage.stx
index 2435131..53649e1 100644
--- a/site/modules/textimage.stx
+++ b/site/modules/textimage.stx
@@ -1,5 +1,8 @@
[?]
+[=textimage-text ]
+[=textimage-image ]
+
[=textimage-]
[/]
[#templates/default.html]
\ No newline at end of file
diff --git a/site/pages/install.html b/site/pages/install.html
new file mode 100644
index 0000000..1846493
--- /dev/null
+++ b/site/pages/install.html
@@ -0,0 +1,14 @@
+[!]
+[=title Install Sitix]
+[=content-]
+
+ At the moment, Sitix has no prebuilt binaries; I hope to include RPM/DEB packages in the next release. To install it, you'll need to clone
+ the Github repository, run ./build.sh, and (assuming the build completes successfully)
+ copy the generated sitix binary to some PATH-accessible location (/usr/bin is a good bet). Sitix requires a C++20-compatible
+ G++ installation; it has no other dependencies. Sitix is theoretically cross-compilable to Windows, but I have no intention of ever officially supporting Windows.
+
+[/]
+[#templates/default.html]
\ No newline at end of file
diff --git a/site/pages/todo.html b/site/pages/todo.html
new file mode 100644
index 0000000..a51e027
--- /dev/null
+++ b/site/pages/todo.html
@@ -0,0 +1,17 @@
+[!]
+[=title Todo]
+[=content-]
+
+ Sitix is still a pretty young piece of software, so if there's a missing feature that isn't on this list, don't hesitate to submit a feature request on the issues page.
+ Alternatively, you could just write it yourself! This TODO list is mostly for my memory, but I would love codebase contributions to get some things crossed off.
+
+
+
+
Markdown support with an @-directive
+
Code cleaning (need to fix memory management especially)
+
Make config less hack (move from \[i config] to \[i exists], and create empty objects on global with -c)
+
Add an unpack/ghost operator so setting objects to other objects works (something like \[=ghostingName-] \[%ghostedObject] \[/])
- More Links
+ Places in This Site
+ Home
+ [f pages i]
+ [^i.title]
+ [/]
- Information
+ Information
+ Sitix (including this website) is open-sourceFree Software protected by GNU GPLv3.
+ Looking to contribute? The source code for this website is hosted on Github, as is
+ Sitix itself.
+ Sitix is still young and probably buggy; if you have issues, submit a bug report at
+ the issues page
+ or contact me at plupy44@gmail.com (github issue preferred).
+ If you want to contribute, but don't know where to start, see The Todo List.
-
Site designed by Tyler Clarke and built with Sitix.
+
Site designed by Tyler Clarke and built with Sitix. This page uses the Lato fonts.