Skip to main content

Developers Guide

Outline

Orientation Communication: Writing a stand up Code base: Architecture Migrations ...

Roles & Badges

Developers will have the following roles (badges): Developer Architect UI Developer DB Desi...

Our SCRUM

No Partial Credit Items move to the next sprint with the same estimate Scrum Points Ta...

Core Architecture

Overview

Data Layer The data layer of an app contains the business logic. The business logic is what give...

Basic UI Elements

Kunafa provides components for all basic views such as textView, ImageView, ButtonView, Table, Fo...

Routing

Like many RPC systems, our routing is based around the idea of defining an endpoint, specifying t...

Controllers and CRUDs

Controllers and CRUD operations are important concepts in software development that we utilize in...

DAOs and Repositories

To manipulate data, we use abstractions around the details for readability and to lessen boilerpl...

Components and view models

Components and view models are two fundamental concepts that we use day to day. So let's talk abo...

Databases and Migrations

Database The PEKK stack used by Narbase uses Postgresql for database management. Ensure that Pos...

Prebuild UI Elements and Utilities

Custom UI Elements More complex custom views were created that can be plugged in and fit many co...

Show Errors

Input Errors When prompting the user for input, the errors in the input can be shown on the scre...

Network Calls and DTOs

Communication between a server and a client over a network is an important topic that is worth to...

Authorization, Authentication and Routing endpoints

Basic Definitions: Let's start this off with basic definitions Authorization: is when determine...

Events, Data and State flow

As you may already know, Kunafa relies heavily on observables and events to handle data manipulat...

E2E Testing

For End-to-end testing we use Selenium.   Before building and running the test, for running test...

Drafts

The Narbase Development Methodology