Welcome to the world of Cryogen! This blog will guide you through the process of setting up your very own blog using Cryogen, a static site generator built for Clojure. With features like Markdown support, code syntax highlighting, and Disqus integration, you’ll soon have a professional-looking blog at your fingertips. Let’s dive in!
Features of Cryogen
- Blog posts and pages styled with Markdown or AsciiDoc
- Tag management
- Automatic table of contents generation
- Configurability with plain HTML templates
- Syntax highlighting for code snippets
- Support for Disqus comments
- Efficient sitemap and RSS feed generation
- Pre-compilation support with Sass or SCSS
- Klipse integration for interactive code samples
Getting Started with Cryogen
Creating a New Site
To create a new blog site, you can opt for one of the following tools: Leiningen, clj-new, or deps-new.Creating a New Site with Leiningen
First, ensure you have Leiningen version 2.5.0 or above installed. Then run the following command to start your new site:lein new cryogen my-blog
Creating a New Site with clj-new
Alternatively, you can use clj-new:clojure -Ttools install com.github.seancorfield/clj-new :gittag v1.2.362 :as clj-new
clojure -Tclj-new create :template cryogen :name my-name-my-blog :force true
cd my-name-my-blog
Creating a New Site with deps-new
Another option is to use deps-new:clojure -Ttools install io.github.seancorfield/deps-new :gittag v0.4.0 :as new
clojure -Sdeps '{:deps {io.github.cryogen-project/cryogen {:gittag "0.6.6" :gitsha "fcb2833"}}}' -Tnew create :template org.cryogenweb/new :name my-name-my-blog
cd my-name-my-blog
Running Your Blog
Once your site is created, start the web server using one of the following commands:lein serve
# or for faster compilation
lein serve:fast
# or using tools-deps
clojure -X:serve
# or for faster compilation
clojure -X:serve:fast
The server will automatically watch for changes. It’s like having a personal assistant that quickly makes the necessary adjustments to your blog every time you make a change.
Site Configuration
Your blog’s configuration can be modified in the `content/config.edn` file. This file controls various settings such as site title, author name, and post layout. Here’s a snippet of what it might look like:
:site-title "My Awesome Blog"
:author "Bob Bobbert"
:description "This blog is awesome"
:site-url "http://blogawesome.com"
:post-root "posts"
Switching Between Markdown and AsciiDoc
Cryogen defaults to Markdown. If you wish to switch to AsciiDoc, modify the `project.clj` file to use `cryogen-asciidoc` and change the input files accordingly.
Selecting and Customizing Themes
Themes can be easily changed by editing the `config.edn` file. Cryogen comes with several built-in themes, and you can explore more by visiting this site.
Troubleshooting
Even with a carefully crafted setup, issues may arise. Here are some troubleshooting tips:- If your site doesn’t display as expected, ensure all dependencies in your project files are correct and up to date.
- Check server logs for errors during the build process.
- Consider cleaning your cache or rebuilding your project if changes do not appear.
- If issues persist, visit the Cryogen documentation for further assistance.
Deploying Your Site
The generated static content can be found in the `public` folder. You can deploy your site using a server like Nginx or Apache. Here is an example Nginx configuration:server {
listen 80 default_server;
server_name localhost yoursite.com www.yoursite.com;
location / {
alias /var/blog;
error_page 404 = 404.html;
}
}
This setup directs requests to the correct directory, ensuring your blog is served correctly.
At fxis.ai, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.

