Skip to content

nojsja/anytype-ts

 
 

Repository files navigation

Anytype

Official Anytype client for MacOS, Linux, and Windows.

Building the source

Dependencies

Debian-based (Ubuntu / Pop! OS / Mint / ... ):

apt install libsecret-1-dev

Fedora:

dnf install libsecret

Arch-based (Manjaro / EndeavourOS / ... ):

pacman -S libsecret

Alpine (usually for docker-related stuff):

apk add libsecret

Installation

git clone https://github.com/anyproto/anytype-ts
cd anytype-ts
npm install -D

Also, install gitleaks to ensure proper work of pre-commit hooks.

Install middleware library and protobuf bindings

Fetch the latest binary from the github releases.

Warning When building client from source be aware that middleware version in latest release may diverge from current client version, so it is highly recommended to build middleware from source as well.

./update.sh <macos-latest|ubuntu-latest|windows-latest> <arm|amd> # arm/amd only for macos/ubuntu

Or compile from the source code. Follow instructions at anytype-heart.

After ./update.sh downloaded the binary or after compiling it from source, you need to move anytypeHelper into the dist Folder.

OS CPU Type move command
Windows already copied to the dist folder
MacOS <arm | amd> mv darwin-*/anytypeHelper dist/
Linux <arm | amd> mv linux-*/anytypeHelper dist/

Building

Build anytype-heart first.

npm run update:locale
npm run dist:(mac|win|linux)

Options (these options allow building locally and bypass CI-only hooks):

  • ELECTRON_SKIP_NOTARIZE=1 — skip MacOS|Windows notarization and signature process
  • ELECTRON_SKIP_SENTRY=1 - skip source map upload to Sentry

Running

Before running Anytype locally, you need to build anytype-heart.

MacOS, Linux

SERVER_PORT=<PORT> ANYPROF=:<PROFILER_PORT> npm run start:dev

Windows

SERVER_PORT=<PORT> ANYPROF=:<PROFILER_PORT> npm run start:dev-win

Options:

  • SERVER_PORT — NPM variable, local server port
  • ANYPROF — Go variable, profiler port, access http://localhost:<PORT>/debug/pprof/profile?seconds=30 for profiling

Localisation

Project localisation is managed via Crowdin

npm run update:locale - Update localisation files

Contribution

Thank you for your desire to develop Anytype together!

❤️ This project and everyone involved in it is governed by the Code of Conduct.

🧑‍💻 Check out our contributing guide to learn about asking questions, creating issues, or submitting pull requests.

🫢 For security findings, please email security@anytype.io and refer to our security guide for more information.

🤝 Follow us on Github and join the Contributors Community.


Made by Any — a Swiss association 🇨🇭

Licensed under Any Source Available License 1.0.

About

Official Anytype client for MacOS, Linux, and Windows

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 83.2%
  • SCSS 14.4%
  • JavaScript 2.2%
  • Other 0.2%