mancala/apps/mobile
Halit Aksoy f5dcf930fa feat(frontend): log in with Keycloak, as a guest or with an account
- First visit logs in as a new guest through Keycloak without a form;
  the session, including an offline refresh token, is kept in local storage
- Account menu on the home page: guests can log in or sign up, users can
  log out (which starts a new guest session)
- The WebSocket client in core authenticates with the access token after
  connecting, reports "connected" once the server accepts it, and re-sends
  renewed tokens on the open connection
- Game page shows player names; guests appear as "Guest 4F2A"
- Auth channels, AuthUser and player names in UserConnectionInfo move to
  core and the backend uses them from there
- Mobile keeps using userKey login for now
2026-10-14 02:22:13 +03:00
..
__tests__ feat(mobile): upgrade react native version 2025-11-17 00:25:41 +03:00
.bundle (refactor) change folder structure 2024-06-18 01:11:26 +03:00
android feat(mobile): upgrade react native version 2025-11-17 00:25:41 +03:00
ios feat(mobile): upgrade react native version 2025-11-17 00:25:41 +03:00
play-store (refactor) change folder structure 2024-06-18 01:11:26 +03:00
src feat(frontend): log in with Keycloak, as a guest or with an account 2026-10-14 02:22:13 +03:00
.eslintrc.js (refactor) change folder structure 2024-06-18 01:11:26 +03:00
.gitignore feat(mobile): upgrade react native version 2025-11-17 00:25:41 +03:00
.prettierrc.js (refactor) change folder structure 2024-06-18 01:11:26 +03:00
.watchmanconfig (refactor) change folder structure 2024-06-18 01:11:26 +03:00
app.json (refactor) change folder structure 2024-06-18 01:11:26 +03:00
babel.config.js (refactor) change folder structure 2024-06-18 01:11:26 +03:00
Gemfile feat(mobile): upgrade react native version 2025-11-17 00:25:41 +03:00
index.js (refactor) change folder structure 2024-06-18 01:11:26 +03:00
jest.config.js (refactor) change folder structure 2024-06-18 01:11:26 +03:00
metro.config.js build: use local mancala.js and @mancala/core packages 2026-10-14 02:09:05 +03:00
package-lock.json feat(mobile): upgrade react native version 2025-11-17 00:25:41 +03:00
package.json build: use local mancala.js and @mancala/core packages 2026-10-14 02:09:05 +03:00
README.md (refactor) change folder structure 2024-06-18 01:11:26 +03:00
release_android.sh feat(mobile): upgrade react native version 2025-11-17 00:25:41 +03:00
tsconfig.json feat(mobile): upgrade react native version 2025-11-17 00:25:41 +03:00
yarn.lock build: use local mancala.js and @mancala/core packages 2026-10-14 02:09:05 +03:00

Mancala Mobile

The mobile user interface for the Mancala project, written in React Native.

Getting Started

Note

: Make sure you have completed the React Native - Environment Setup instructions till "Creating a new application" step, before proceeding.

Step 1: Start the Metro Server

First, you will need to start Metro, the JavaScript bundler that ships with React Native.

To start Metro, run the following command from the root of your React Native project:

# using npm
npm start

# OR using Yarn
yarn start

Step 2: Start your Application

Let Metro Bundler run in its own terminal. Open a new terminal from the root of your React Native project. Run the following command to start your Android or iOS app:

For Android

# using npm
npm run android

# OR using Yarn
yarn android

For iOS

# using npm
npm run ios

# OR using Yarn
yarn ios

If everything is set up correctly, you should see your new app running in your Android Emulator or iOS Simulator shortly provided you have set up your emulator/simulator correctly.

This is one way to run your app — you can also run it directly from within Android Studio and Xcode respectively.

Development Dependencies

This package depends on the local packages @mancala/core and mancala.js. Refer to their documentation for further instructions.