-
Notifications
You must be signed in to change notification settings - Fork 88
/
example-projects.txt
230 lines (179 loc) · 11.3 KB
/
example-projects.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
.. meta::
:robots: noindex, nosnippet
.. _realm-examples:
=================================
Atlas Device SDK Example Projects
=================================
.. facet::
:name: genre
:values: reference
.. meta::
:description: Example projects for the Atlas Device SDKs, Atlas Device Sync, and Realm database.
.. contents:: On this page
:local:
:backlinks: none
:depth: 1
:class: singlecol
Explore engineering and expert-provided example projects to learn best
practices and common development patterns for the Atlas Device SDKs, Atlas
Device Sync, and Realm database.
Core Projects
-------------
Learn about the core features of the Atlas Device SDKs with Atlas Device Sync and Realm database.
.. list-table::
:header-rows: 1
:widths: 25 50 25
* - Project Name
- Description
- Source Code for Available SDKs
* - Template Apps
- A todo list mobile app that syncs data with App Services using Device Sync. See
the App Services :ref:`Getting Started page <app-services-get-started>` for more information
and detailed tutorials.
- - `C++ <https://github.com/mongodb/template-app-cpp-todo>`__
- `Flutter <https://github.com/mongodb/template-app-dart-flutter-todo>`__
- `Kotlin <https://github.com/mongodb/template-app-kotlin-todo>`__
- `.NET <https://github.com/mongodb/template-app-maui-todo>`__
- `React Native <https://github.com/mongodb/template-app-react-native-todo>`__
- `Swift <https://github.com/mongodb/template-app-swiftui-todo>`__
* - Connection State Change & Error Handling
- Learn best practices around handling Sync errors and client reset strategies.
- - `Flutter <https://github.com/realm/realm-dart-samples/tree/kilochat/kilochat>`__
- `Kotlin <https://github.com/realm/realm-kotlin-samples/tree/main/AppServicesUsageSamples/apps/error-handling>`__
- `.NET <https://github.com/realm/realm-dotnet-samples/tree/main/QuickJournalSync>`__
- `Node.js <https://github.com/realm/realm-js/tree/main/examples/node-connection-and-error>`__
- `React Native <https://github.com/realm/realm-js/tree/main/examples/rn-connection-and-error>`__
- `Swift <https://github.com/realm/realm-swift-samples/tree/main/SyncConnectionStateErrorReset>`__
* - Offline Support and Realm Access
- Log in a Device Sync user, open a synced realm, and perform local-first reads and writes, all while offline.
- - `Electron <https://github.com/realm/realm-js/tree/main/examples/electron-todo-list>`__
- `Flutter <https://github.com/realm/realm-dart-samples/tree/kilochat/kilochat>`__
- `Kotlin <https://github.com/realm/realm-kotlin-samples/tree/main/AppServicesUsageSamples/apps/property-encryption>`__
- `.NET <https://github.com/realm/realm-dotnet-samples/tree/main/QuickJournalSync>`__
- `Node.js <https://github.com/realm/realm-js/tree/main/examples/node-connection-and-error>`__
- `React Native <https://github.com/realm/realm-js/tree/main/examples/rn-todo-list>`__
- `Swift <https://github.com/realm/realm-swift-samples/tree/main/OfflineLoginRealmAccess>`__
- `Web <https://github.com/realm/realm-js/tree/nh/wasm/emscripten_target/examples/example-react-task>`__
* - Split Data into Multiple Realms
- Build a Netflix-like app for browsing movies from
MongoDB's `Mflix <https://www.mongodb.com/docs/atlas/sample-data/sample-mflix/#std-label-mflix-movies>`__ sample dataset.
Use multiple realms to allow registered users to sync and manage movies in their own private list.
- - `React Native <https://github.com/realm/realm-js/tree/main/examples/rn-multiple-realms>`__
.. _realm-example-projects-table:
Example Projects
----------------
Check out these supplementary projects to build on the power of the Atlas Device SDKs with Atlas Device Sync and Realm database.
.. list-table::
:header-rows: 1
:widths: 25 50 25
* - Project Name
- Description
- Source Code for Available SDKs
* - Analytics/Telemetrics Data
- Take sensor readings, push data to Atlas, and display the results in
Atlas Charts or a time series collection.
- - `.NET <https://github.com/realm/realm-dotnet-samples/tree/main/AnalyticsTelemetry>`__
- `Node.js <https://github.com/realm/realm-js/tree/main/examples/node-telemetry>`__
- `Swift <https://github.com/realm/realm-swift-samples/tree/main/AnalyticsTelemetricsData>`__
* - User's Online State
- Detect connectivity and activity of users and devices.
- - `All SDKs <https://github.com/realm/realm-kotlin-samples/tree/main/AppServicesUsageSamples/apps/presence-detection>`__
* - Coffee Machine
- Build a smart coffee machine app with Realm, C++, and Qt.
- - `C++ <https://github.com/realm/realm-cpp/tree/main/examples/Qt/coffee>`__
* - Kilochat
- Build a sample workplace chat app, built with Realm and Atlas Device Sync.
- - `Flutter <https://github.com/realm/realm-dart-samples/tree/kilochat/kilochat>`__
* - Provider Shopper
- Build a modified Flutter sample app that uses a local Realm instead of in-memory collection.
- - `Flutter <https://github.com/realm/realm-dart-samples/tree/main/provider_shopper>`__
* - Time Track
- Build a console app that shows how to subscribe for changes in a Realm collection.
- - `Flutter <https://github.com/realm/realm-dart-samples/tree/main/time_track>`__
* - Bundled Realm
- Build a Flutter app with a pre-initialized realm file that is shipped with the app.
- - `Flutter <https://github.com/realm/realm-dart-samples/tree/main/bundled_realm>`__
* - Realm Kotlin Multiplatform (KMP) Sample
- Build a simple multiplatform calculator app.
- - `Kotlin <https://github.com/realm/realm-kotlin-samples/tree/main/Intro>`__
* - Bookshelf
- Build a bookshelf app using a shared business logic in Ktor, Kotlinx.Serialization,
and Realm, combined with a platform specific UI using Jetpack Compose and SwiftUI.
- - `Kotlin <https://github.com/realm/realm-kotlin-samples/tree/main/Bookshelf>`__
* - Kotlin Multiplatform (KMP) Demo
- Build a multiplatform demo running on Android/iOS/macOS and JVM with Compose Desktop.
- - `Kotlin <https://github.com/realm/realm-kotlin-samples/tree/main/MultiplatformDemo>`__
* - JVM Console Application
- Build a simple Java Console Application using Realm Kotlin.
- - `Kotlin <https://github.com/realm/realm-kotlin-samples/tree/main/JVMConsole>`__
* - Property-level Encryption
- Enhance user data security with property-level encryption.
- - `Kotlin <https://github.com/realm/realm-kotlin-samples/tree/main/AppServicesUsageSamples/apps/property-encryption>`__
* - Atlas Search
- Run Atlas Search queries with autocomplete and compound search terms by using an aggregation pipeline.
- - `.NET <https://github.com/realm/realm-dotnet-samples/tree/main/AtlasSearch>`__
* - Intelligent Cache
- Build a MAUI application that uses Atlas as an intelligent cache against an external service.
Simplify data synchronization between the clients and external service using Atlas Device Sync and Triggers.
- - `.NET <https://github.com/realm/realm-dotnet-samples/tree/main/IntelligentCache>`__
* - Realm with REST APIs
- Use Realm for real-time operations together with REST APIs for
server-side business logic - all with a single ViewModel.
- - `.NET <https://github.com/realm/xamarin-examples-architecture>`__
* - Large File Storage
- Store large files, such as images, on a remote server. Use Triggers and
Functions to store the references. Leverage Realm's offline-first design
to store large images, even when offline.
- - `.NET <https://github.com/realm/realm-dotnet-lfs>`__
* - Quick Journal
- Build a synced journal app with Realm and Atlas Device Sync.
- - `.NET <https://github.com/realm/realm-dotnet-samples/tree/main/QuickJournalSync>`__
* - Desktop Apps with Avalonia
- Build a simple desktop todo app with Realm and Avalonia.
- - `.NET <https://github.com/realm/realm-dotnet/tree/main/examples/SimpleToDoAvalonia>`__
* - Game with Unity
- Build an infinite runner game with Unity and the .NET Realm SDK.
- - `.NET <https://github.com/mongodb-developer/unity-infinite-runner>`__
* - ObjectsAsAPI
- Create specific Realm objects representing API calls ("objects-as-api") instead of REST API calls to execute business logic.
- - `.NET <https://github.com/realm/realm-dotnet-samples/tree/main/ObjectsAsAPI>`__
* - Smart Factory Interface
- Build an interface to order and produce a product based on stock availability, using the digital representation of a physical factory and computer vision.
- - `.NET <https://github.com/mongodb-industry-solutions/smart-factory-computer-vision-inference>`__
* - Flexible Sync Playground
- Build a command line application to dynamically change sync subscriptions and fetch information about Realm database, including database schemas.
- - `Node.js <https://github.com/pmanna-tse-realm/flexisync-playground/tree/main>`__
* - Vehicle Simulator and Controller
- Build a connected platform to monitor vehicle analytics, using MongoDB Atlas and the AWS ecosystem.
- - `Node.js <https://github.com/mongodb-industry-solutions/Vehicle-Digital-Twin-Feedback-Loop>`__
* - Netflix-like Movie App
- Build a Netflix-like app for browsing movies from
MongoDB's `Mflix <https://www.mongodb.com/docs/atlas/sample-data/sample-mflix/#std-label-mflix-movies>`__ sample dataset.
Use multiple realms to allow registered users to sync and manage movies in their own private list.
- - `React Native <https://github.com/realm/realm-js/tree/main/examples/rn-multiple-realms>`__
* - Searchable Offline Collection
- Build an application that caches viewed collection items, so you can search and view them offline.
This demo app uses listings from the
`Sample AirBnB Listings Dataset <https://www.mongodb.com/docs/atlas/sample-data/sample-airbnb/>`__.
- - `React Native <https://github.com/realm/realm-js/tree/main/examples/rn-mbnb>`__
* - Shared Whiteboard
- Create a drawing app that demonstrates Realm mobile database and Atlas Device Sync.
- - `Swift <https://github.com/realm/Realm-Drawing>`__
* - Integrating In-App Purchases
- Use Device Sync's efficient data management and synchronization capabilities to build a recipes library with in-app purchases (IAP) using StoreKit.
- - `Swift <https://github.com/realm/realm-swift-samples/tree/main/InAppPurchasesAtlasAppServices>`__
* - RTicket
- Build a simple issue ticket system with Realm and SwiftUI.
- - `Swift <https://github.com/mongodb-developer/RTicket>`__
* - RCurrency
- Use Realm to cache data retrieved from an API and access the data offline.
- - `Swift <https://github.com/realm/RCurrency>`__
* - RChat
- Build a simple chat app with SwiftUI and Realm.
- - `Swift <https://github.com/realm/RChat>`__
* - Minesweeper in Realm
- Build a collaborative Mine Sweeper app using Atlas Device Sync and Realm mobile database.
- - `Swift <https://github.com/realm/Realm-Sweeper>`__
* - Apple Sign-in Authentication
- Implement Apple Sign-in Authentication to authenticate users in your Realm database.
- - `Swift <https://github.com/realm/realm-swift-samples/tree/main/AppleSignInAuthentication>`__