cross-posted from: https://lemmy.zip/post/34733394

Snac (AKA Snac2) is a minimal microblogging ActivityPub instance written in C.

Features (from its Codeberg repo):

  • Lightweight, minimal dependencies
  • Extensive support of ActivityPub operations, e.g. write public notes, follow users, be followed, reply to the notes of others, admire wonderful content (like or boost), write private messages…
  • Multiuser
  • Mastodon API support, so Mastodon-compatible apps can be used
  • Simple but effective web interface
  • Easily-accessed MUTE button to silence morons
  • Tested interoperability with related software
  • No database needed
  • Totally JavaScript-free
  • No cookies either
  • Not much bullshit
  • atzanteol@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    15
    arrow-down
    18
    ·
    5 days ago

    Bonkers that anyone would start a social media app in C in 2025. “No JavaScript” but you’re just one buffer overflow from arbitrary code execution.

    • sugoidogo@discuss.online
      link
      fedilink
      English
      arrow-up
      11
      arrow-down
      1
      ·
      4 days ago

      C is also faster than JavaScript, uses less memory, and memory safety isn’t impossible in C either. I wouldn’t consider a scripting language to even be a choice for writing a backend server if I can use a compiled language instead.

      • atzanteol@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        5
        arrow-down
        2
        ·
        4 days ago

        memory safety isn’t impossible in C

        In practice it is.

        C is also faster than JavaScript, uses less memory, I wouldn’t consider a scripting language to even be a choice for writing a backend server if I can use a compiled language instead.

        Neat.

      • jewbies@lemmynsfw.com
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        4 days ago

        I do get your point and agree.

        But Id just like to point out that there is no such thing as “compiled” languages. The compiler or interpretor is the implementation of the spec. Did you know that there are interpreted versions of c?

    • 56!@lemmy.ml
      link
      fedilink
      English
      arrow-up
      9
      ·
      5 days ago

      I feel like snac is social media made specifically for people who like C though. I’m sure most users of it are well aware of the implications.

    • eutampieri
      link
      fedilink
      English
      arrow-up
      8
      arrow-down
      8
      ·
      5 days ago

      I’m a rust fan, but may I remind you that the Linux kernel is mostly C?