Open Source Synthetic Data Orchestration
Neosync is a developer-first way to create anonymized or synthetic data and sync it across all environments.
Companies use Neosync to:
- Unblock local development - Give developers the ability to self-serve de-identified and synthetic data whenever they need it
- Fix broken staging environments - Catch bugs before they hit production when you hydrate your staging and QA environments with production-like data
- Keep environments in sync - Keep your environments in sync with the latest synthetic data so you never hear "it works for me locally" again
- Get frictionless security, privacy and compliance - Easily comply with laws like HIPAA, GDPR, and DPDP with de-identified and synthetic
- Seed development databases - Easily seed development databases with synthetic data for unit testing, demos and more
- Generate synthetic data based on your schema
- Anonymize existing production-data to protect data
- Subset your production database for local and CI testing by filtering on an object, id or custom query
- Complete async pipeline that automatically handles job retries, failures and playback using an event-sourcing model
- Referential integrity for your data automatically - never worry about broken foreign keys again
- Declarative, GitOps based configs as a step in your CI pipeline to hydrate your CI DB
- Pre-built data transformers for all major data types
- Custom data transformers
- Pre-built integrations with Postgres, Mysql, S3
Neosync is a fully dockerized setup which makes it easy to get up and running.
We provide a compose.yml
file that contains production image references that allow you to get up and running with just a few commands without having to build anything on your system.
To start Neosync, clone the repo into a local directory and then run:
make compose-up
To stop, run:
make compose-down
Neosync will now be available on http://localhost:3000.
For more in-depth details on environment variables, Kubernetes deployments, and a production-ready guide, check out the Deploy Neosync section of our Docs.
Some resources to help you along the way:
- Docs for comprehensive documentation and guides: Note these are still a work in progress.
- Discord for discussion with the community and Neosync team
- X for the latest updates
We love contributions big and small. Here are just a few ways that you can contribute to Neosync.
- Join our Discord channel and ask us any questions there
- Open a PR (see our instructions on developing with Neosync locally)
- Submit a feature request or bug report
Our mission is to help developers build better, more resilient applications while protecting sensitive data. To do that, we built Neosync to give teams three things:
- A world-class developer experience that fits into any workflow and follows modern developer best practices such as GitOps
- A platform that can anonymize sensitive data or automatically generate synthetic data from a schema and sync that across all environments
- An open source approach that allows you to keep your most sensitive data in your infrastructure
We strongly believe in free and open source software and make this repo is available under the MIT expat license.