Abdullah Atta a56ef1fe11 sync: reduce chunk size to 3MB
this will increase the number of round trips but will make the sync
more reliable on slow devices that take longer to process 7MB
chunks.
2026-04-11 10:55:05 +05:00
2025-12-15 22:58:25 +05:00
2026-03-25 20:46:54 +05:00
2025-04-10 11:09:28 +05:00
2025-04-10 11:09:28 +05:00
2025-04-10 11:09:28 +05:00
2025-04-10 11:09:28 +05:00
2025-04-10 11:09:28 +05:00
2022-12-28 17:24:47 +05:00
2024-09-26 18:53:17 +05:00

Notesnook Sync Server

This repo contains the full source code of the Notesnook Sync Server licensed under AGPLv3.

Building

From source

Requirements:

  1. .NET 8
  2. git

The first step is to clone the repository:

git clone https://github.com/streetwriters/notesnook-sync-server.git

# change directory
cd notesnook-sync-server

Once you are inside the ./notesnook-sync-server directory, run:

# this might take a while to complete
dotnet restore Notesnook.sln

Then build all projects:

dotnet build Notesnook.sln

To run the Notesnook.API project:

dotnet run --project Notesnook.API/Notesnook.API.csproj

To run the Streetwriters.Messenger project:

dotnet run --project Streetwriters.Messenger/Streetwriters.Messenger.csproj

To run the Streetwriters.Identity project:

dotnet run --project Streetwriters.Identity/Streetwriters.Identity.csproj

Using docker

The sync server can easily be started using Docker.

wget https://raw.githubusercontent.com/streetwriters/notesnook-sync-server/master/docker-compose.yml

And then use Docker Compose to start the servers:

docker compose up

This takes care of setting up everything including MongoDB, Minio etc.

TODO Self-hosting

Note: Self-hosting the Notesnook Sync Server is now possible, but without support. Documentation will be provided at a later date. We are working to enable full on-premise self-hosting, so stay tuned!

  • Open source the Sync server
  • Open source the Identity server
  • Open source the SSE Messaging infrastructure
  • Fully Dockerize all services
  • Use self-hosted Minio for S3 storage
  • Publish on DockerHub
  • Add settings to change server URLs in Notesnook client apps (starting from v3.0.18)
  • Write self hosting docs

License

This file is part of the Notesnook Sync Server project (https://notesnook.com/)

Copyright (C) 2023 Streetwriters (Private) Limited

This program is free software: you can redistribute it and/or modify
it under the terms of the Affero GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
Affero GNU General Public License for more details.

You should have received a copy of the Affero GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.
S
Description
No description provided
Readme AGPL-3.0 1.2 MiB
Languages
C# 76.1%
HTML 21.2%
TypeScript 1.9%
Dockerfile 0.7%
Shell 0.1%