A DIY blog platform for wizards and muggles.
Go to file
AJ ONeal ff74030e52 make Prettier 2020-11-08 20:30:15 -07:00
bin make Prettier 2020-11-08 20:30:15 -07:00
components make Prettier 2020-11-08 20:30:15 -07:00
example Create site.yml 2015-01-23 19:09:15 -07:00
views make Prettier 2020-11-08 20:30:15 -07:00
.gitignore updated to latest, fixed minor bugs 2015-01-15 21:56:14 -07:00
.gitmodules separating deardesi/desirae 2015-01-13 03:14:56 -07:00
.jshintrc separating deardesi/desirae 2015-01-13 03:37:21 -07:00
.prettierrc.json make Prettier 2020-11-08 20:30:15 -07:00
LICENSE Initial commit 2015-01-10 21:56:45 -07:00
README.md make Prettier 2020-11-08 20:30:15 -07:00
app.js make Prettier 2020-11-08 20:30:15 -07:00
bower.json make Prettier 2020-11-08 20:30:15 -07:00
desirae-http-api.js make Prettier 2020-11-08 20:30:15 -07:00
favicon.ico add favicon, fix code block 2015-01-16 01:54:20 -05:00
index.html make Prettier 2020-11-08 20:30:15 -07:00
package.json make Prettier 2020-11-08 20:30:15 -07:00
server.js make Prettier 2020-11-08 20:30:15 -07:00
setup.sh Update setup.sh 2015-01-24 15:26:48 -07:00

README.md

Did you mean to come here?

If you're a normal person interested in Desi, the DIY blog platform for normal people, you might have meant to go to DearDesi instead.

Otherwise, if you're a cyborg, wizzard, or web developer: carry on.

Dear Desi

These instructions cover the command line only.

If you want instructions for the web interface, head over to DearDesi.

Command Line Install (for developers)

This assumes that you already have git and node installed, otherwise see node-installer.sh

# Install with distributed tools on a decentralized system
npm install -g 'git+https://git.daplie.com/Daplie/deardesi.git#v1'

# Install with the centralized, concentrated hypocrinet
npm install -g desi

That was easy

Quick Usage

  • desi init -d ~/Desktop/new-blog
  • pushd ~/Desktop/new-blog
  • desi post "my first post"
  • desi build
  • desi serve

http://local.dear.desi:65080

Note: both through command line and web you need site.yml and authors/xyz.yml configured in order to create a post (as well as build). The post commands output the location of post in various formats.

Initialize your blog (step 1)

You can do this 3 ways:

  1. Create a new blog with desi init -d ~/Desktop/blog
  2. Clone the seed project and themes yourself
  3. Clone the seed project and import your posts and themes

Automated (desi init)

# initialize (and or create) a blog directory
desi init -d ~/Desktop/blog

# initialize the current directory
pushd ~/Desktop/blog
desi init

Note that you cannot initialize a directory that is already in use (where 'in use' means has at least one non-dotfile).

Manual (clone yourself)

There are a number of themes available at https://github.com/DearDesi, just look for ones with 'theme' in the description.

git clone git@github.com:DearDesi/desirae-blog-template.git ~/my-desirae-blog
pushd ~/my-desirae-blog

git submodule add git@github.com:DearDesi/ruhoh-bootstrap-2.git themes/ruhoh-bootstrap-2

You will need to make sure that you have some details about your theme in config.yml. Basically that means that you specify a datamap and which defaults for a page and post in the layouts folder.

Just open it up, it'll make sense.

Migrate (import another blog)

Obviously this is a little different for everyone, so here's what I'd recommend:

  1. start by following the Automated procedure above
  2. copy over your posts/articles folder(s)
  3. edit config.yml to add a config with a permalink with your collections (posts, articles, essays, whatever you call them)
  4. skip ahead to the Setup your blog section and make sure your site.yml and authors/xxx.yml are correct.
  5. run desi build -d /path/to/blog to test if there are any issues with your existing yaml
  • if there are, you can take a look at the normalize function and perhaps hand-edit a few things (and when you're ready, you can register your transform for collections.
  1. Now copy over your theme and set it to be the default in site.yml
  2. build again. Your site probably won't look right:
  • look for stuff like urls.base_url, host, page.url that might have an extra / at the beginning or end or be named slightly differently.

See https://github.com/DearDesi/desirae/blob/master/GLOSSARY.md for disambiguation about the meaning of terms in Desi.

Setup your blog (step 2)

  1. Create an authors file in authors/YOUR_NAME.yml and model it after this example
  • You don't need to use all of the fields (your template might not even support them all)
  1. Create a site file as site.yml, similar to this example

Important Things

  • site.yml.base_url - the point of ownership (usually blog.example.com or example.com)
  • site.yml.base_path - where the blog is "mounted", relative to the base_url (usually / or /blog)
  • authors/me.yml.name - most templates use this
  • authors/me.yml.email - and this
  • authors/me.yml.twitter - and this

Build your blog (step 2)

The build will fail if you don't have site.yml and authors/johndoe.yml configured.

desi build -d /path/to/blog

desi serve -d /path/to/blog

Now open up your evergreen browser to http://local.dear.desi:65080