https://github.com/datazip-inc/olake-ui
Frontend & BFF (Backend for frontend) for Olake. This includes the UI code and backend code for storing the configuration of sync and orchestrating it.
https://github.com/datazip-inc/olake-ui
apache-iceberg change-data-capture data-engineering database elt elt-pipeline etl etl-pipeline hacktoberfest ui
Last synced: about 2 months ago
JSON representation
Frontend & BFF (Backend for frontend) for Olake. This includes the UI code and backend code for storing the configuration of sync and orchestrating it.
- Host: GitHub
- URL: https://github.com/datazip-inc/olake-ui
- Owner: datazip-inc
- License: apache-2.0
- Created: 2025-03-06T13:04:57.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2026-04-22T05:16:43.000Z (about 2 months ago)
- Last Synced: 2026-04-22T07:28:44.031Z (about 2 months ago)
- Topics: apache-iceberg, change-data-capture, data-engineering, database, elt, elt-pipeline, etl, etl-pipeline, hacktoberfest, ui
- Language: TypeScript
- Homepage:
- Size: 170 MB
- Stars: 30
- Watchers: 1
- Forks: 39
- Open Issues: 64
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# Olake-UI
OLake
Fastest open-source tool for replicating Databases to Apache Iceberg or Data Lakehouse. ⚡ Efficient, quick and scalable data ingestion for real-time analytics. Starting with MongoDB. Visit olake.io/docs for the full documentation, and benchmarks
## Overview
Olake-UI offers an intuitive web interface to configure, monitor, and manage your data replication jobs.
- [UI Readme](/olake_frontend/README.md)
- [Server Readme](/server/README.md)
- [UI Figma Design](https://www.figma.com/design/FwLnU97I8LjtYNREPyYofc/Olake-Design-Community?node-id=1-46&p=f&t=y3BIsLTUaXhHwYLG-0)
- [API Contracts](/api-contract.md)
## Running with Docker Compose
This Docker Compose setup provides a comprehensive environment(OLake UI, Temporal worker, Temporal service, and dependencies) for demonstrating and exploring Olake's capabilities. This is the recommended way to get started for local development or evaluation.
### Prerequisites
- [Docker](https://docs.docker.com/get-docker/) installed and running (Docker Desktop recommended for Mac/Windows)
- [Docker Compose](https://docs.docker.com/compose/) (comes with Docker Desktop)
- Make sure port `8000` is available, as OLake UI is exposed on that port.
### Quick Start
1. **One-Command Setup:**
```sh
curl -sSL https://raw.githubusercontent.com/datazip-inc/olake-ui/master/docker-compose-v1.yml | docker compose -f - up -d
```
2. **Access the services:**
- **OLake UI:** [http://localhost:8000](http://localhost:8000)
- **Default login:** Username: `admin`, Password: `password`
### Optional Configuration
**Custom Admin User:**
The stack automatically creates an initial admin user on first startup. To change the default credentials, edit the `x-signup-defaults` section in `docker-compose-v1.yml`:
```yaml
x-signup-defaults:
username: &defaultUsername "your-custom-username"
password: &defaultPassword "your-secure-password"
email: &defaultEmail "your-email@example.com"
```
**Custom Data Directory:**
By default, data is stored in `${PWD}/olake-data` directory. To use a different location, edit the `x-app-defaults` section in `docker-compose-v1.yml`:
```yaml
x-app-defaults:
host_persistence_path: &hostPersistencePath /your/host/path
```
Make sure the directory exists and is writable.
**Encryption Modes:**
Configure encryption in `docker-compose-v1.yml`:
```yaml
x-encryption:
# 1. For AWS KMS (starts with 'arn:aws:kms:'):
key: &encryptionKey "arn:aws:kms:..."
# 2. For local AES-256 (any other non-empty string):
# key: &encryptionKey "secret-key" # Auto-hashed to 256-bit key
# 3. For no encryption (not recommended for production):
# key: &encryptionKey ""
```
- KMS: Uses AWS Key Management Service for encryption/decryption
- Local: Uses AES-256-GCM with key derived from your passphrase
- Empty: No encryption (for development only)
### Troubleshooting
- If there are any file permission error, ensure the host persistence/config directory is writable by Docker.
- For complete logs, use:
```bash
docker-compose logs -f
```
- For logs specific to a service, use:
```bash
docker compose logs -f
```
### Updating OLake UI Version
To update OLake UI to the latest version, use the following command:
```bash
curl -sSL https://raw.githubusercontent.com/datazip-inc/olake-ui/master/docker-compose-v1.yml | docker compose -f - down && \
curl -sSL https://raw.githubusercontent.com/datazip-inc/olake-ui/master/docker-compose-v1.yml | docker compose -f - up -d
```
**Note**: Your data and configurations will be preserved as they are stored in persistent volumes and the `olake-data` directory.
### Upgrading from legacy `docker-compose.yml`
To upgrade from legacy `docker-compose.yml` that was used before **Jan 30th 2026** , follow this [documentation](https://olake.io/docs/install/olake-ui/#:~:text=To%20move%20from,Legacy%20Setup.).
## Contributing
We ❤️ contributions big or small check our [Bounty Program](https://olake.io/docs/community/issues-and-prs#goodies). As always, thanks to our amazing contributors!.
- To contribute to Olake-UI visit [CONTRIBUTING.md](CONTRIBUTING.md)
- To contribute to Olake Main Repo, visit [OLake Main Repository](https://github.com/datazip-inc/olake).
- To contribute to OLake website and [documentation](https://olake.io/docs), visit [Olake Docs Repository](https://github.com/datazip-inc/olake-docs/).