{"id":14483614,"url":"https://github.com/etesync/etebase-js","last_synced_at":"2025-08-20T12:32:16.551Z","repository":{"id":38838746,"uuid":"221076891","full_name":"etesync/etebase-js","owner":"etesync","description":"Etebase TypeScript API for the web, node and react-native!","archived":false,"fork":false,"pushed_at":"2023-03-14T15:17:39.000Z","size":1075,"stargazers_count":162,"open_issues_count":25,"forks_count":13,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-12-14T09:34:32.110Z","etag":null,"topics":["encryption","end-to-end-encryption","etebase","etesync","synchronization","typescript"],"latest_commit_sha":null,"homepage":"https://www.etebase.com","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/etesync.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"etesync","custom":"https://www.etesync.com/contribute/#donate"}},"created_at":"2019-11-11T21:52:47.000Z","updated_at":"2024-12-12T20:34:43.000Z","dependencies_parsed_at":"2024-06-19T01:53:26.443Z","dependency_job_id":"49e45ca5-25c5-44bb-9662-8323e2603367","html_url":"https://github.com/etesync/etebase-js","commit_stats":{"total_commits":430,"total_committers":7,"mean_commits":61.42857142857143,"dds":0.06511627906976747,"last_synced_commit":"24e5dd20aab63528b4494d0f48682bfa2053a435"},"previous_names":["etesync/etesync-js"],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etesync%2Fetebase-js","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etesync%2Fetebase-js/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etesync%2Fetebase-js/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/etesync%2Fetebase-js/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/etesync","download_url":"https://codeload.github.com/etesync/etebase-js/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230423564,"owners_count":18223435,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["encryption","end-to-end-encryption","etebase","etesync","synchronization","typescript"],"created_at":"2024-09-03T00:01:54.661Z","updated_at":"2024-12-19T11:13:12.273Z","avatar_url":"https://github.com/etesync.png","language":"TypeScript","funding_links":["https://github.com/sponsors/etesync","https://www.etesync.com/contribute/#donate"],"categories":["TypeScript"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg width=\"120\" src=\"https://raw.githubusercontent.com/etesync/etesync-web/master/src/images/logo.svg\" /\u003e\n  \u003ch1 align=\"center\"\u003eEtebase - your end-to-end encrypted backend\u003c/h1\u003e\n\u003c/p\u003e\n\nThe Etebase TypeScript client API for the web, node and react-native!\n\n\n[![GitHub tag](https://img.shields.io/github/tag/etesync/etebase-js.svg)](https://github.com/etesync/etebase-js/tags)\n[![NPM version](https://img.shields.io/npm/v/etebase.svg)](https://www.npmjs.com/package/etebase)\n[![Build Status](https://travis-ci.com/etesync/etebase-js.svg?branch=master)](https://travis-ci.com/etesync/etebase-js)\n[![Chat with us](https://img.shields.io/badge/chat-IRC%20|%20Matrix%20|%20Web-blue.svg)](https://www.etebase.com/community-chat/)\n\n# What is it?\n\nEtebase is an end-to-end encrypted backend as a service. Think Firebase,\nbut encrypted in a way that only your users can access their data.\n\nEtebase makes it easy to build end-to-end encrypted applications by taking\ncare of the encryption and its related challenges. It is fully\n[open-source](./LICENSE) (clients and server) so anyone can review,\naudit or contribute to its development!\n\n# Using Etebase in your project\n\nThis repository is the JavaScript/TypeScript library for communication with\nan [Etebase server](https://github.com/etesync/server) (there also exists\nlibraries for Python, Java, Kotlin, C/C++ and Rust).\nSee https://docs.etebase.com/installation for details on how to install the\nlibrary and dependencies.\n\nThe following is a minimal example of how to change the Etebase password.\n\n```typescript\nimport * as Etebase from 'etebase';\nconst etebase = await Etebase.Account.login(\"username\", \"password\");\nawait etebase.changePassword(\"new password\");\nawait etebase.logout();\n```\n\nThere are more examples in the Guides section at https://docs.etebase.com/.\n\n## Known issues\n\nIf you get build errors complaining about `export = URI;` from urijs then\nyou need to set `compilerOptions.allowSyntheticDefaultImports` to true in\n`tsconfig.json`.\n\n# Examples of projects that use Etebase\n\n* [EteSync Notes](https://github.com/etesync/etesync-notes) - A secure,\n  end-to-end encrypted, and privacy-respecting notes mobile application.\n* [EteSync Web](https://github.com/etesync/etesync-web) - A secure,\n  end-to-end encrypted, and privacy-respecting notes web frontend application.\n* [EteSync DAV](https://github.com/etesync/etesync-dav) - Provides a local\n  CalDAV and CardDAV server that acts as an EteSync compatibility layer/adapter\n  for clients such as Thunderbird, Outlook and Apple Contacts to connect with\n  EteSync.\n\n# Building Etebase\n\n```shell\ngit clone https://github.com/etesync/etebase-js\ncd etebase-js\nyarn install\nyarn run build\n```\n\nRunning tests requires a (test) [Etebase server](https://github.com/etesync/server)\nrunning, defaulting to `http://localhost:8033`, but can be overridden with the\nenvironment variable `ETEBASE_TEST_API_URL`.\n\n```shell\ncd ..\ngit clone https://github.com/etesync/server\ncd server\n\n... # Follow README.md install instructions\n... # Build and start a server\n\ncd ../etebase-js\nenv ETEBASE_TEST_API_URL=http://localhost:8033 yarn run test\n```\n## Known issues\n\nYarn is required for building this project, attempting to use npm will fail.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fetesync%2Fetebase-js","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fetesync%2Fetebase-js","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fetesync%2Fetebase-js/lists"}