The wait for a Capella perpetual free tier is over! Now the Couchbase DBaaS is available to all: students, hobbyists, startups, and enterprises alike. For those brand new to the Couchbase ecosystem, here are 10 resources you should check out that will help you get the most out of Capella.
1. IDE plugins for VSCode and JetBrains
Capella has a web UI for running queries, setting up buckets, managing credentials, and more. But for day-to-day coding work, you may benefit from an IDE plugin.
These plugins provide syntax highlighting, CRUD operations, visualizations, data migration, Couchbase Lite integration, and more.
These plugins are open source, and you can contribute to them on GitHub:
2. Sample projects
There are a variety of sample projects, in a variety of languages that range from “Hello, World” to complete applications.
Conduit
Conduit (from the RealWorld project) is a spec of a basic Medium (social blog platform) clone, with implementation in a variety of frontend and backend platforms and languages. Here are some that use Couchbase:
-
- ASP.NET Core (C#)
- Express (Node.js)
- Express + Ottoman.js (Node.js)
- Spring Data Couchbase + Spring Boot (Java)
- For more on Conduit, check out this summary video from a Twitch live coding series: Kickstarting a Real-World ASP.NET Project with Couchbase
What is this thing?
What is this thing? Is a demo project of an ecommerce application that uses the hybrid search capabilities of Couchbase: SQL, key/value, vector, geospatial. See the overview video:
RAG demos
RAG (retrieval-augmented generation) is a technique that uses a large language model (LLM) to generate a response to a user query. The LLM is augmented with information from a database (usually retrieved via vector search).
Try CB
“Try CB” is a series of sample projects that demonstrate how to use Couchbase with a variety of SDKs (e.g., try-cb-ruby, try-cb-dotnet, etc.)
Hello World
If you just want to get started with a bare minimum console app, the Couchbase documentation for each SDK has a “Start Using” page that can help you through installation, connect, and execution: Java, Go, PHP, and more. Click on the SDK of your choice and then “Getting Started”.
3. Framework integrations
Couchbase has a growing ecosystem of framework integrations, both official and community-contributed. Here are some of the most notable:
-
- Spring Data: for the popular Spring framework for Java
- Ottoman.js: an ODM for Node.js with a similar interface to Mongoose
- Ruby/Rails: a cache store for Rails and an OR/M for Ruby
- ASP.NET: dependency injection, caching, session, and Linq
- Vercel: a serverless platform for Node.js
- Netlify: a serverless platform for Node.js
- Langchain: a framework for building RAG applications with Python: Couchbase can act as a vector store, a document loader, a semantic cache, and chat message history
- LlamaIndex: a framework for building RAG applications with Python: Couchbase can act as a reader and a vector store
- Laravel: a popular PHP web framework
4. Playground
You can get started coding with Couchbase in a browser without having to install anything. Capella has a built-in playground that allows you to use SDKs and/or SQL to try out code samples through interactive tutorials.
5. Capella iQ
Seems like AI is everywhere. Capella iQ is a built-in AI chat that can help you create sample data, construct queries, indexes, generate code for using SDKs, and more.
6. Community Discord and forums
Got questions about Couchbase, technical or otherwise? You can interact with the Couchbase community on Discord.
You can also ask questions, browse previous posts, and get help on the Couchbase forums. (Before posting your question, you may want to check out #10 in this blog post).
7. Couchbase Shell
Couchbase Shell is a command-line interface that allows you to interact with Capella and/or Couchbase Server. It provides a way to execute commands and queries against Couchbase Server, as well as manage data, perform administrative tasks, and even interact with LLMs for RAG use cases.
It’s built on NuShell, an open source shell that enables pipelines, treats everything as data, and has a plugin ecosystem.
8. Documentation
Documentation is the treasure map that everyone ignores until they’re hopelessly lost. The Couchbase documentation is a great resource for learning about Couchbase and its features.
Based on my interactions with developers over the years, here are a few pages to highlight frequently asked questions (once you get past the basics):
-
- Scan Consistency: If your query isn’t returning your latest documents, you probably need to review scan consistency.
- ACID Transactions are available in Couchbase SQL, as well as C++, .NET, Java, Go, Node.js, PHP, and Python.
- CAP Theorem: Review the guarantees that Couchbase makes. The short answer is that Couchbase is CP (or AP over multiple data centers).
- JOINs: Yes, Couchbase supports SQL++; yes it supports JOINs.
- Indexing is important to understand.
- Time series: Couchbase is not a time series database, but it has time series functionality.
- CTE (Common Table Expressions): Couchbase supports CTEs (WITH …) and recursive CTEs (WITH RECURSIVE …)
- Subdocument: SDKs (like .NET) support partial reads/writes, to avoid sending large documents over the network for small changes.
Want to know more? The Couchbase documentation has an experimental AI tool that allows you to have a conversation with the documentation. Just click the Couchbase logo at the bottom right on the docs site and ask a natural language to help you write SQL++ queries, script an app, get generals answers, and more.
And finally, the docs are open source! You can submit a pull request to fix a typo or contribute a new page.
9. Test containers
Automated testing is important, and when you’re testing your application, you’ll want to test it against a real database, not a mock. The popular Test Containers project supports Couchbase for Java, Go, .NET, and Node.js.
With Test Containers, you can create a “disposable” Couchbase container for use with integration tests in code:
1 2 3 4 |
var couchbaseContainer = new CouchbaseBuilder() .WithImage("couchbase:enterprise-7.6.2") .Build(); await couchbaseContainer.StartAsync(); |
Another project that can be useful for testing is CouchbaseFakeIt, a Docker image that can initialize Couchbase with indexes and fake data.
10. Advanced SDK tooling
When you’re ready to tackle more advanced functionality and/or troubleshoot networking issues, here are some more advanced integrations for Couchbase:
-
- SDK doctor – A tool to diagnose application-server-side connectivity issues with your Couchbase or Capella Cluster. If you are having connection issues, definitely try this tool first.
- Field-level encryption – Fields within a JSON document can be securely encrypted by the SDK to support FIPS 140-2 compliance.
- Response time observability – Tracing and Metrics provide fine-grained insight into how a distributed application is performing, and helps to diagnose when it is not.
Summary
Now that you’re armed with all of these tools, it’s time to build something amazing with Couchbase Capella. Sign up today for the forever free tier. Explore the endless possibilities Capella has to offer. We can’t wait to see what you create—be sure to share your projects and join the growing Couchbase community!