Skip to content

Mach Database NoSQL examples

Every example here is an ordinary application written for the original database with its official, latest stable driver. Moving it to MachNoSQL changes only the connection address, which every example reads from an environment variable. No line of application code changes.

Protocol Directory Languages
MongoDB mongodb/ Python (PyMongo, Motor), Node.js (driver, Mongoose), Go, Java, C#, PHP, Ruby, Rust
Redis / Valkey redis/ Python, Node.js (ioredis, node-redis), Go, Java (Jedis, Lettuce), C#, PHP (Predis, phpredis), Ruby, Rust
Cassandra cassandra/ Python, Java, Go, C#, Node.js
DynamoDB dynamodb/ Python (boto3), Node.js (SDK v3), Go (SDK v2), Java (SDK 2.x)
Elasticsearch / OpenSearch elasticsearch/ Python, Node.js, Go, Java, C#
Neo4j neo4j/ Python, Node.js, Go, Java, C#
original tools TOOLS.md mongosh, mongodump, redis-cli, cqlsh, AWS CLI, Kibana, cypher-shell

Each directory has a README with the connection string before and after.

  • Examples are not run on developer machines. They run in the e2e campaign against the original and against MachNoSQL on the test server, and their output is compared (EXM-0008).
  • Driver versions are the latest stable releases at the time of writing (2026-10-30) and are bumped monthly (EXM-0009).
  • Secrets in the examples (secret) are placeholders; real deployments pass credentials through the environment.
Protocol Language Example
Cassandra (CQL) C# / .NET Cassandra with the C# driver
Cassandra (CQL) Go (gocql) Cassandra with gocql (Go)
Cassandra (CQL) Java Cassandra with the Java driver
Cassandra (CQL) Node.js / TypeScript Cassandra with the Node.js driver
Cassandra (CQL) Python Cassandra with the Python driver
DynamoDB Go (sdk-v2) DynamoDB with the AWS SDK for Go v2
DynamoDB Java (sdk-v2) DynamoDB with the AWS SDK for Java 2.x
DynamoDB Node.js / TypeScript (sdk-v3) DynamoDB with the AWS SDK for JavaScript v3
DynamoDB Python (boto3) DynamoDB with boto3 (Python)
Elasticsearch / OpenSearch C# / .NET Elasticsearch with the .NET client
Elasticsearch / OpenSearch Go Elasticsearch with go-elasticsearch (Go)
Elasticsearch / OpenSearch Java Elasticsearch with the Java API client
Elasticsearch / OpenSearch Node.js / TypeScript Elasticsearch with the JavaScript client
Elasticsearch / OpenSearch Python Elasticsearch with elasticsearch-py (Python)
MongoDB C# / .NET MongoDB with the C# driver
MongoDB Go MongoDB with the Go driver
MongoDB Java MongoDB with the Java sync driver
MongoDB Node.js / TypeScript (driver) MongoDB with the Node.js driver
MongoDB Node.js / TypeScript (mongoose) MongoDB with Mongoose (Node.js)
MongoDB PHP MongoDB with the PHP library
MongoDB Python (motor) MongoDB with Motor (Python asyncio)
MongoDB Python (pymongo) MongoDB with PyMongo (Python)
MongoDB Ruby MongoDB with the Ruby driver
MongoDB Rust MongoDB with the Rust driver
Neo4j (Bolt, Cypher) C# / .NET Neo4j with the .NET driver
Neo4j (Bolt, Cypher) Go Neo4j with the Go driver
Neo4j (Bolt, Cypher) Java Neo4j with the Java driver
Neo4j (Bolt, Cypher) Node.js / TypeScript Neo4j with the JavaScript driver
Neo4j (Bolt, Cypher) Python Neo4j with the Python driver
Redis / Valkey C# / .NET (stackexchange) Redis with StackExchange.Redis (C#)
Redis / Valkey Go (redis) Redis with go-redis (Go)
Redis / Valkey Java (jedis) Redis with Jedis (Java)
Redis / Valkey Java (lettuce) Redis with Lettuce (Java)
Redis / Valkey Node.js / TypeScript (ioredis) Redis with ioredis (Node.js)
Redis / Valkey Node.js / TypeScript (redis) Redis with node-redis (Node.js)
Redis / Valkey PHP (phpredis) Redis with phpredis (PHP extension)
Redis / Valkey PHP (predis) Redis with Predis (PHP)
Redis / Valkey Python (redis-py) Redis with redis-py (Python)
Redis / Valkey Ruby (redis) Redis with redis-rb (Ruby)
Redis / Valkey Rust (redis) Redis with redis-rs (Rust)