26 votes

Book writing self-hosted solutions?

I'm big into self-hosting and recently getting back into writing as an additional hobby, cuz one can never have too many, right? Anyway, I am looking for a writing organization tool like Manuskript, Dabble, or Scrivener that is both open source and self-hosted.

Essentially, I would just like something that I can organize my thoughts and occasionally write in, but be able to access it from all my devices - desktops, laptops, phones, tablets, etc. It seems like most of the solutions I've looked at are limited to a single device or cloud functionality is locked behind a paywall. Of course, I could just use a self-hosted wiki site for cloud editing/organization, but I'd like something more oriented toward writing if anybody has any ideas. Thanks!

26 comments

  1. [6]
    pum
    (edited )
    Link
    Obsidian with SyncThing has worked out fairly well for me. It also plays well with cloud storage services, including iCloud for Apple devices. There are plenty of plugins to adjust the workflow to...

    Obsidian with SyncThing has worked out fairly well for me. It also plays well with cloud storage services, including iCloud for Apple devices. There are plenty of plugins to adjust the workflow to your liking, although you may run into some rough edges. The Canvas feature can be pretty useful.

    edit: it's technically not open-source, but it does give you full ownership of your data, if that's an important point to you.

    13 votes
    1. [2]
      fidwell
      Link Parent
      I've been using Obsidian the last year or so and have really enjoyed it, so I'll second it; I use it for general notes, but since it's so flexible I bet it'll work great for long-form writing too....

      I've been using Obsidian the last year or so and have really enjoyed it, so I'll second it; I use it for general notes, but since it's so flexible I bet it'll work great for long-form writing too.

      Since OP mentioned self-hosting: you might not even need a sync tool like SyncThing, if you already have a central server. I have an Unraid server in my basement where I self-host a lot of apps, and it has file storage too. So for my devices that have Obsidian, I simply tell Obsidian to point to my Notes directory on the server itself, and there's no syncing to do at all; I always read from and write to the server directly. If your network speed isn't absolutely terrible, you won't even notice.

      (Of course this won't work if you leave your house, so then you will either need a tool to remote into your home network, like WireGuard, or sync when you get back. I use FreeFileSync but I guess SyncThing will probably do fine.)

      4 votes
      1. sparkle
        Link Parent
        Yep, I have a Proxmox server as my main host (running on my old gaming computer) and then I have TrueNAS running on an old workstation from work that acts as a backup server file host. I also have...

        Yep, I have a Proxmox server as my main host (running on my old gaming computer) and then I have TrueNAS running on an old workstation from work that acts as a backup server file host. I also have wireguard setup for VPN access. Obsidian sounds right up my alley, thanks!

        1 vote
    2. sLLiK
      Link Parent
      I've been a rabid fan of the canvas feature since it's introduction. Its capabilities aren't as diverse as solutions like Lucidchart, but it's an exemplary mind mapping tool, simply because it's...

      I've been a rabid fan of the canvas feature since it's introduction. Its capabilities aren't as diverse as solutions like Lucidchart, but it's an exemplary mind mapping tool, simply because it's so fast and easy that rapid prototyping becomes effortless.

      +1 for Obsidian. Don't subscribe and it all stays local. Sign up and a copy stays in the cloud, plus the desktop app and mobile app stay synced.

      2 votes
    3. [2]
      scarletink
      Link Parent
      I'm writing in obsidian and syncing via their built in tool plus I backup via Dropbox. While the tool itself isn't open source, the content is markup text files, which means you can always find a...

      I'm writing in obsidian and syncing via their built in tool plus I backup via Dropbox.

      While the tool itself isn't open source, the content is markup text files, which means you can always find a new tool to edit them in the future

      When choosing between open source tools and open content formats, I'd always choose my content to be open.

      1 vote
      1. pum
        Link Parent
        The two aren't mutually exclusive. ;) But I agree with your point. I don't mind proprietary tools as long as the format spec is open and practical to reimplement, especially for something as...

        When choosing between open source tools and open content formats, I'd always choose my content to be open.

        The two aren't mutually exclusive. ;) But I agree with your point. I don't mind proprietary tools as long as the format spec is open and practical to reimplement, especially for something as simple as Markdown files.

        1 vote
  2. [3]
    CosmicDefect
    Link
    Plain old Google Docs (or Word with OneDrive) can do this for you though I suspect you've already considered those. I do scientific writing mostly, so oddly enough Github has been my go to...

    Plain old Google Docs (or Word with OneDrive) can do this for you though I suspect you've already considered those.

    I do scientific writing mostly, so oddly enough Github has been my go to storage/cloud solution since the text itself is kept and maintained as an unprocessed .tex file which is compiled afterwards into a PDF. Git though is for code, so your writing would need to be parsable as plain text file rather than some complex file structure like .docx to benefit.

    8 votes
    1. JoshuaJ
      Link Parent
      Yeah I would just find a nice book template in latex, get it in git, with a Makefile for compiling and just write in my favourite text editor probably just vs code.

      Yeah I would just find a nice book template in latex, get it in git, with a Makefile for compiling and just write in my favourite text editor probably just vs code.

      4 votes
    2. sajoarn
      (edited )
      Link Parent
      I also use private GitHub repos, but for creative writing. I like being able to manually sync and merge across all of my devices, and I've even used branches when I want to explore different paths...

      I also use private GitHub repos, but for creative writing. I like being able to manually sync and merge across all of my devices, and I've even used branches when I want to explore different paths the story could take. The version history is nice, too. I've had times when I realized everything I just spent the last several weeks writing was garbage, and reverted back to a previous commit.

      I prefer writing in plain .txt files so I don't get bogged down by grammar, formatting, and spelling which takes me out of the flow. That makes it a little easier for me since pretty much every editor can handle plain text. For my android phone I use Termux and DroidEdit, on my Linux laptop I've got Kate and Konsole, and on my other windows computers I've got Notepad++ and good ol' git bash.

      Edit: as an aside, I've definitely put .docx and other Office files in git for version tracking. I don't recall whether it's easy to do compares and merges, but if you're the only one working on a repo and you remember to sync before you start working, it doesn't really matter.

      1 vote
  3. [6]
    Darthvadercake
    Link
    I'll be honest, I personally haven't really explored writing specific programs because I have never felt the need to. I write from my phone, tablet and desktop and just use google docs, nothing...

    I'll be honest, I personally haven't really explored writing specific programs because I have never felt the need to. I write from my phone, tablet and desktop and just use google docs, nothing else. Occasionally if I need a thesaurus I will just google it in my browser. It gives me everything I need.

    That said, my writing style so far has been to write chronologically, chapter my chapter. I am currently working on a second draft of half the book (it's a clear split between two defined sections so it made sense to edit from there). Occasionally I move one section from one chapter to the other but I just highlight and add a note to edit it later. But for the most part I just work chapter by chapter and know where I left off.

    I am quite curious how everyone else here works because I hear a lot of folks here use specific software. What benefits do those programs offer? Is it a lot more beneficial than just using word?

    4 votes
    1. MajorHoulihan
      Link Parent
      I have some published books under my belt and this is quite close to how I work. I've never seen the need for a writing specific program. I know that I would get hyper focused on learning the...

      I have some published books under my belt and this is quite close to how I work. I've never seen the need for a writing specific program. I know that I would get hyper focused on learning the options and specifics if I branched out from Google docs, therefore losing momentum on the piece du jour. If I need to write on my phone (yuck) I still can. Also Google docs is easily converted to Word and most others in the post-completion phase of the manuscript still are using Word. (in my sphere anyhow.)

      2 votes
    2. [2]
      sparkle
      Link Parent
      The last time I did some intense writing, I also tried to write chronologically at first. I thought it would naturally flow. Then I realized that my scatterbrained thought process bled over and I...

      The last time I did some intense writing, I also tried to write chronologically at first. I thought it would naturally flow. Then I realized that my scatterbrained thought process bled over and I needed something to help me organize because my book was all over the place, despite my attempts at planning. Since I'm already big into tech (I do infrastructure delivery and spend a good deal of time writing technical documentation), why not use some software to help?

      As for benefits, from what I've seen, you can do things like organize notes about specific chapters, create links to other scenes to show how things tie together, build character sheets, store reference material, etc. Surely not for everybody and some prefer to just use comments in Google docs, but I've found Scrivener in the past to be helpful for me.

      1 vote
      1. Darthvadercake
        Link Parent
        That makes sense! I will be honest, some of those benefits would be useful, but two of my priorities for the program I use are 1) I can sync phone with my desktop and 2) free to use Those are more...

        That makes sense! I will be honest, some of those benefits would be useful, but two of my priorities for the program I use are 1) I can sync phone with my desktop and 2) free to use

        Those are more important than any other benefits and I think a bit harder to achieve with other programs. But it does sound useful!;

    3. [2]
      riz
      Link Parent
      Do you simply use Google Docs to actually write in or, write the source in plain-text and have it compiled to a book format. If plain text, which markup do you use?

      I write from my phone, tablet and desktop

      Do you simply use Google Docs to actually write in or, write the source in plain-text and have it compiled to a book format. If plain text, which markup do you use?

      1 vote
      1. Darthvadercake
        Link Parent
        I use it to actually write in, to create the content of the book. As far as creating a book layout and format that can be used to print it out, I haven't gotten to that yet as it's not finished....

        I use it to actually write in, to create the content of the book.

        As far as creating a book layout and format that can be used to print it out, I haven't gotten to that yet as it's not finished. But I work as a designer, so my process to get it to printable format would likely be to do that in Indesign and really give a lot of thought to what fonts and what headers and which spacing etc. I wouldn't expect a program to create the final layout for me, I would want something custom because I love that aspect of making it look good

        1 vote
  4. [2]
    Barney
    Link
    Have a look at Hammer Editor. It's relatively early in development, but seems to tick most of your boxes!

    Have a look at Hammer Editor. It's relatively early in development, but seems to tick most of your boxes!

    2 votes
    1. sparkle
      Link Parent
      Hey yup this does! I will definitely give it a look, thanks!

      Hey yup this does! I will definitely give it a look, thanks!

  5. Eric_the_Cerise
    Link
    WriteFreely? It's more blog-oriented (and Fediverse-oriented), but you can lock it down so only you can access it, FOSS (on GitHub), and self-hosted is well-supported. I use it for a private...

    WriteFreely? It's more blog-oriented (and Fediverse-oriented), but you can lock it down so only you can access it, FOSS (on GitHub), and self-hosted is well-supported. I use it for a private blog/journal-thingy.

    2 votes
  6. jprich
    Link
    Ive been working on my series entirely in GDocs. I can access from any device and export to a desktop version if need be.

    Ive been working on my series entirely in GDocs. I can access from any device and export to a desktop version if need be.

    1 vote
  7. Landhund
    Link
    I use the same basic setup for my occasional creative writing at home that I use for technical documentation at my job: Main editor is VScode, where I'm using the official AsciiDoc extension to...

    I use the same basic setup for my occasional creative writing at home that I use for technical documentation at my job:
    Main editor is VScode, where I'm using the official AsciiDoc extension to write all the main content and notes. If you haven't heard of AsciiDoc, it's a lot like markdown with a whole lot of features natively integrated that you'd otherwise had to use various extensions for markdown. It also comes with some very usable style templates for both html and pdf export. I can wholeheartedly recommend you try it out.
    All the project files are then managed in a git repo that lives in my Google Drive account with a private GitHub repo as an additional remote, for which my home NAS has then deploy-key-access to automatically sync itself with GitHub. The only reason why the entire project doesn't live on the NAS is that I haven't bothered to setup external access properly and reliably.

    If you prefer more help with notetaking and -visualization, you could couple that approach with an Obsidian Vault that lives on the same file server as the project.

    1 vote
  8. adutchman
    Link
    Maybe a markdown editor like Zettlr is worth a try.

    Maybe a markdown editor like Zettlr is worth a try.

  9. pyeri
    Link
    You can write one trivially using something like PHP/CI3 and Sqlite database. For front-end too, there is a great number of open source components available like Bootstrap, jquery, fontawesome,...

    You can write one trivially using something like PHP/CI3 and Sqlite database. For front-end too, there is a great number of open source components available like Bootstrap, jquery, fontawesome, etc., it's pretty trivial to rig these together and build a mini CMS of sorts which you use to write some content in markdown and it is displayed in a book format.

  10. arctanh
    Link
    If you're interested in a wiki-style program, Tiddly Wiki is a great option, especially for non-linear or interlinked information. Plus, it has a mobile app as well! I can't remember if it has...

    If you're interested in a wiki-style program, Tiddly Wiki is a great option, especially for non-linear or interlinked information. Plus, it has a mobile app as well!

    I can't remember if it has built-in sync, but I believe I just used Syncthing (as others have recommended) to keep my docs up-to-date across all my instances.

  11. riz
    Link
    I was thinking of writing too and if I would start, I would try AsciiDoc for writing the book, and any cloud provider like Dropbox, Google Drive, Nextcloud, etc. I have a Nextcloud instance set up...

    I was thinking of writing too and if I would start, I would try AsciiDoc for writing the book, and any cloud provider like Dropbox, Google Drive, Nextcloud, etc. I have a Nextcloud instance set up in one of the servers I administer, so I would probably choose that.

    Using AsciiDoc allows me to use any text editor to write the content and that's a big plus for me. I can use a Makefile to compile the text document into almost any format, including ebook, pdf, or a webpage. Paired with the auto-sync feature from the cloud storage providers, I think would check all the boxes for me to start.

  12. Bullmaestro
    Link
    This is gonna sound like a blindingly obvious suggestion but Google Docs fits all of your needs. In fact, I cannot even think of a modern device that cannot access Google Docs. If you're willing...

    This is gonna sound like a blindingly obvious suggestion but Google Docs fits all of your needs. In fact, I cannot even think of a modern device that cannot access Google Docs.

    If you're willing to fork out $10 (or less per month) then there's also Microsoft 365.