Nanogram is made for the privacy conscious enthusiast who wants total control of their data. Create a small scale private social media platform for family and friends.

The onion service and web server are hosted directly on your phone via termux.

User access can be granted by generating a magic invite link in the server manger. These are one time use links that allow registration to the service.

Application Demo here

Install Demo here

Source code here

  • utopiah@lemmy.ml
    link
    fedilink
    arrow-up
    3
    ·
    1 day ago

    much procesing could it handle though? If it is only a handful of friends then what makes it better than Signal?

    I don’t actually know the project but I think your mindset here is (and correct me if I’m wrong) “Does it scale?” whereas the mindset of this project, based on the name itself and the “small scale” in the description, is “no, it does not scale and that’s A-OK”.

    • hereforawhile@lemmy.mlOP
      link
      fedilink
      arrow-up
      5
      ·
      1 day ago

      The server backbone gunicorn is set with 2 workers and 8 threads ( this can be modified to more or less )

      But it should handle around 15 - 20 simultaneous connections smoothly. Now, if everyone is uploading all at once would definitely make it sweat.

      Once the server recieves the photo is compresses is down to 100-200kb so all retrievals are pretty light weight.

      Pagination really lightens the load as well. By limiting it to 10 photos per page, the server only needs to send about 1.5 mb - 2.0mb to load in a whole page of photos.

      • Helix 🧬@feddit.org
        link
        fedilink
        English
        arrow-up
        2
        ·
        1 day ago

        You could also generate thumbnails with much smaller sizes and only load hi-res images on click. Did you consider using more JPEG or another algorithm?

        • hereforawhile@lemmy.mlOP
          link
          fedilink
          arrow-up
          3
          ·
          edit-2
          22 hours ago

          This is only possible because of the sandbox of the termux app. Unfortunately iOS has no comparable alternative to termux so it will likely never happen.

          In fact, it would even be pretty difficult to develop this into a standalone app on either platform with the way application review is. There is alot of unneeded fluff that would need to be added to be compliant with policies. A self hosted service like this goes against app store policies and google play policies in a few ways.

          So while IOS users can easily access the application on a onion browser, they won’t be able to host their own instance.

      • utopiah@lemmy.ml
        link
        fedilink
        arrow-up
        1
        ·
        1 day ago

        Thanks for sharing and the clarifications. I do think both the philosophy behind this and the technological choices are right but it’s also true that “How many people?” can it handle is important for people who want to actually try and onboard others. It’s one thing to try alone but as long as we ask others to join, knowing what the limits are makes everybody more understanding.

      • sqgl@sh.itjust.works
        link
        fedilink
        arrow-up
        1
        ·
        1 day ago

        Sounds good. I would love to get an activist group I run off Facebook. There are hundreds of members but traffic is less than what you describe.

        The problem for me is that most of the members are technically illiterate so my next question is: how sophisticated do the clients need to be?

        • hereforawhile@lemmy.mlOP
          link
          fedilink
          arrow-up
          1
          ·
          1 day ago

          As far as literacy, all the client needs is a Tor browser and a invite link generated by the server operator.

          For Android just use the official Tor browser

          For Iphone, TOR recommends this app. https://onionbrowser.com/.

          I would love to see how far I can push a single instance with hundreds of users but realistically I think this is probably best suited for a circle of close friends and family.