# TED **Repository Path**: mirrors_linagora/TED ## Basic Information - **Project Name**: TED - **Description**: Replicated, encrypted, scalable and realtime collections based database for Twake - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-03-16 - **Last Updated**: 2026-05-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # TED - The Extraordinary Database


This is Ted. Hello Ted! 👋


TED is a replicated, encrypted, scalable and realtime collections based database used in Twake. It works on top of Cassandra, Elastic-Search and RabbitMQ. Read more about Twake collaborative workspace by Linagora on [https://twake.app](https://twake.app) ## Get started Will start a MongoDB + RabbitMQ Ted server. If you want to configure Ted with Cassandra/Keyspaces or SQS, go to the complete documentation. #### 1. Go to the right directory ``` cd collections/server/ ``` #### 2. Create your config ``` # nano src/config/config.json { "mongodb": { "url": "mongodb://some-mongo:27017/ted" }, "rabbitmq": { "url": "amqp://some-rabbitmq" }, "ted": { "broker": "RabbitMQ", "dbCore": "mongodb" } } ``` #### 3. Run Ted ``` docker network create ted-network docker run -d --network ted-network -it --name ted-mongo mongo docker run -d --network ted-network -it --name ted-rabbitmq rabbitmq:3 # docker build -t twaketech/ted . #If you want to rebuild the code docker run --network ted-network -it -v "/$(pwd)/src/config/:/usr/src/app/src/config/" -p 7250:7250 -p 7251:7251 -p 7252:7252 twaketech/ted --config ./src/config/config.json ``` Ted will run on `localhost:7250`, port 7252 is used for websockets (browser to ted). #### 4. Test Ted using our demo framework ``` cd ../framework/typescript/ yarn install yarn start:demo ``` Then open Postman or anything and start creating / getting objects ! For instance: ``` # PUT http://localhost:9000/api/collections/company/0e44c200-c3ff-4a75-952e-d7e6130a70ed { "object": { "name": "ACME" } } ``` ## Scalability Ted is scalable, if you want to use Ted in multiple nodes, don't forget to add Redis for websockets distribution. Here is what you should add to the configuration: ``` "redis": { "host": "localhost", "port": 6379 }, ``` Ted will automatically connect to Redis and start using it to share work between nodes. ## License TED is licensed under [Affero GPL v3](http://www.gnu.org/licenses/agpl-3.0.html) TED logo was generated with https://getavataaars.com/ ❤️