Nakama Flutter Client 🤩 🎮 🌍 🛰

Nakama is an open-source scalable game server. This is a Flutter client for Nakama written in pure dart and supports cross platform gaming on iOS, Android, Web and more.

GitHub issues GitHub last commit Pub Version


🚦 Current Status

Almost all basic functions which are necessary to start playing around with Nakama are ready to use. Please feel free to give your feedback with creating an issue. I am currently working on getting a 100 % coverage with this SDK.

🚀 Getting Started

1. Setup Nakama Server

You need a Nakama instance for developing. I suggest setting up Nakama with Docker Compose. You find a tutorial here: Install Nakama with Docker Compose and here Installation & Setup.

2. Add flutter_nakama to pubspec.yaml.

name: your_game
dependencies:
    flutter:
        sdk: flutter
    flutter_nakama: ^0.1.0

3. Create nakama base client

final client = getNakamaClient(
  host: '127.0.0.1',
  ssl: false,
  serverKey: 'defaultkey',
  grpcPort: 7349, // optional
  httpPort: 7350, // optional
);

4. Use the SDK

For example start with logging into an user account:

final session = await getNakamaClient().authenticateEmail(
    email: 'foo@bar.de',
    password: 'mySecurePassword!',
);

print('Hey, you are logged in! UserID: ${session.userId}');

Documentation

Flutter SDK Docs: https://flutter-nakama.gitbook.io

Nakama Docs: https://heroiclabs.com/docs

Libraries

any.pb
any.pbenum
any.pbjson
any.pbserver
any_test.pb
any_test.pbenum
any_test.pbjson
any_test.pbserver
api.pb
api.pb
api.pbenum
api.pbenum
api.pbjson
api.pbjson
api.pbserver
apigrpc.enums.swagger
apigrpc.pb
apigrpc.pbenum
apigrpc.pbgrpc
apigrpc.pbjson
apigrpc.swagger
client_index
client_mapping
descriptor.pb
descriptor.pbenum
descriptor.pbjson
descriptor.pbserver
duration.pb
duration.pbenum
duration.pbjson
duration.pbserver
empty.pb
empty.pbenum
empty.pbjson
empty.pbserver
field_mask.pb
field_mask.pbenum
field_mask.pbjson
field_mask.pbserver
flutter_nakama
map_lite_unittest.pb
map_lite_unittest.pbenum
map_lite_unittest.pbjson
map_lite_unittest.pbserver
map_proto2_unittest.pb
map_proto2_unittest.pbenum
map_proto2_unittest.pbjson
map_proto2_unittest.pbserver
map_unittest.pb
map_unittest.pbenum
map_unittest.pbjson
map_unittest.pbserver
realtime.pb
realtime.pbenum
realtime.pbjson
source_context.pb
source_context.pbenum
source_context.pbjson
source_context.pbserver
struct.pb
struct.pbenum
struct.pbjson
struct.pbserver
test_messages_proto2.pb
test_messages_proto2.pbenum
test_messages_proto2.pbjson
test_messages_proto2.pbserver
test_messages_proto3.pb
test_messages_proto3.pbenum
test_messages_proto3.pbjson
test_messages_proto3.pbserver
timestamp.pb
timestamp.pbenum
timestamp.pbjson
timestamp.pbserver
type.pb
type.pbenum
type.pbjson
type.pbserver
unittest.pb
unittest.pbenum
unittest.pbjson
unittest.pbserver
unittest_arena.pb
unittest_arena.pbenum
unittest_arena.pbjson
unittest_arena.pbserver
unittest_custom_options.pb
unittest_custom_options.pbenum
unittest_custom_options.pbjson
unittest_custom_options.pbserver
unittest_drop_unknown_fields.pb
unittest_drop_unknown_fields.pbenum
unittest_drop_unknown_fields.pbjson
unittest_drop_unknown_fields.pbserver
unittest_embed_optimize_for.pb
unittest_embed_optimize_for.pbenum
unittest_embed_optimize_for.pbjson
unittest_embed_optimize_for.pbserver
unittest_empty.pb
unittest_empty.pbenum
unittest_empty.pbjson
unittest_empty.pbserver
unittest_enormous_descriptor.pb
unittest_enormous_descriptor.pbenum
unittest_enormous_descriptor.pbjson
unittest_enormous_descriptor.pbserver
unittest_import.pb
unittest_import.pbenum
unittest_import.pbjson
unittest_import.pbserver
unittest_import_lite.pb
unittest_import_lite.pbenum
unittest_import_lite.pbjson
unittest_import_lite.pbserver
unittest_import_public.pb
unittest_import_public.pbenum
unittest_import_public.pbjson
unittest_import_public.pbserver
unittest_import_public_lite.pb
unittest_import_public_lite.pbenum
unittest_import_public_lite.pbjson
unittest_import_public_lite.pbserver
unittest_lazy_dependencies.pb
unittest_lazy_dependencies.pbenum
unittest_lazy_dependencies.pbjson
unittest_lazy_dependencies.pbserver
unittest_lazy_dependencies_custom_option.pb
unittest_lazy_dependencies_custom_option.pbenum
unittest_lazy_dependencies_custom_option.pbjson
unittest_lazy_dependencies_custom_option.pbserver
unittest_lazy_dependencies_enum.pb
unittest_lazy_dependencies_enum.pbenum
unittest_lazy_dependencies_enum.pbjson
unittest_lazy_dependencies_enum.pbserver
unittest_lite.pb
unittest_lite.pbenum
unittest_lite.pbjson
unittest_lite.pbserver
unittest_lite_imports_nonlite.pb
unittest_lite_imports_nonlite.pbenum
unittest_lite_imports_nonlite.pbjson
unittest_lite_imports_nonlite.pbserver
unittest_mset.pb
unittest_mset.pbenum
unittest_mset.pbjson
unittest_mset.pbserver
unittest_mset_wire_format.pb
unittest_mset_wire_format.pbenum
unittest_mset_wire_format.pbjson
unittest_mset_wire_format.pbserver
unittest_no_field_presence.pb
unittest_no_field_presence.pbenum
unittest_no_field_presence.pbjson
unittest_no_field_presence.pbserver
unittest_no_generic_services.pb
unittest_no_generic_services.pbenum
unittest_no_generic_services.pbjson
unittest_no_generic_services.pbserver
unittest_optimize_for.pb
unittest_optimize_for.pbenum
unittest_optimize_for.pbjson
unittest_optimize_for.pbserver
unittest_preserve_unknown_enum.pb
unittest_preserve_unknown_enum.pbenum
unittest_preserve_unknown_enum.pbjson
unittest_preserve_unknown_enum.pbserver
unittest_preserve_unknown_enum2.pb
unittest_preserve_unknown_enum2.pbenum
unittest_preserve_unknown_enum2.pbjson
unittest_preserve_unknown_enum2.pbserver
unittest_proto3.pb
unittest_proto3.pbenum
unittest_proto3.pbjson
unittest_proto3.pbserver
unittest_proto3_arena.pb
unittest_proto3_arena.pbenum
unittest_proto3_arena.pbjson
unittest_proto3_arena.pbserver
unittest_proto3_arena_lite.pb
unittest_proto3_arena_lite.pbenum
unittest_proto3_arena_lite.pbjson
unittest_proto3_arena_lite.pbserver
unittest_proto3_lite.pb
unittest_proto3_lite.pbenum
unittest_proto3_lite.pbjson
unittest_proto3_lite.pbserver
unittest_proto3_optional.pb
unittest_proto3_optional.pbenum
unittest_proto3_optional.pbjson
unittest_proto3_optional.pbserver
unittest_well_known_types.pb
unittest_well_known_types.pbenum
unittest_well_known_types.pbjson
unittest_well_known_types.pbserver
wrappers.pb
wrappers.pbenum
wrappers.pbjson
wrappers.pbserver