Skip to content
Russell Maier edited this page Dec 4, 2024 · 10 revisions

Welcome to the Gobrik 3.1 wiki!

Here we document the way our app's code works in order to maintain and develop GoBrik into the future according to our 2024 road map.

GoBrik 3.1 is built upon our GoBrik database and our own Buwana account credential system using the earthenAuth database. For the moment, the core functionality of the system is included here in the GoBrik 3 repository.

Here is a breakdown of the repository's directories:

Directory Purpose Status
api These are public-facing PHP files that provide functionality for apps. Active
en / es / id / fr These directories contain the active languages of the app. Active
files Where we keep PDFs and text files (e.g., terms of use) used on the app. Active
translations JavaScript const files containing the language scripts for every page. Active
scripts Various PHP and JavaScript files used by our pages. Active
stylesheets The various stylesheets used by the app. Active
includes Unique code segments used by specific content pages at the start of the page. Active
briks Not listed in GitHub; contains all the brikchain photos on the server. Active
meta Contains page and language-specific meta tags for our content pages. Active
fonts GoBrik typographic files. Active
pdfs Contains GEA documents on the server. Active
webp Content page webp graphics. Active
svgs Content page SVG graphics. Active
dials Images for the G2 plastic transition score meter (not yet implemented in G3). Active
Icons GoBrik core icons. Active

Buwana Login

The Buwana system is inspired by the unique challenges of serving our global movement and maintaining our principles. After six years of operating our own social action platform, it is clear that moving forward, we need our own account system for login access to our websites and apps so that we're not dependent on corporate services.

Our vision is that Buwana accounts will be an open, non-proprietary credentials to login to regenerative apps. A Buwana account will hold core community, geographical and ecological data that are transfereable between such apps. Buwana accounts will not just be breach-secure but also secure from data-minining as the platform will be presided over by a not-for-profit, for-earth enterprise.

Buwana accounts are stored and managed in a database separate from GoBrik. Our vision is that this account system will be useable by other regenerative apps as a credential management system independent of GoBrik-- yet will allow connectivity along community and ecological core user data between these apps.

  • Nomenclature note *: In the GoBrik table we write table names with tb_ at the start of the table name (using a plural noun i.e. ecobricks, ecobrickers, etc) if it is only used on GoBrik. On the buwana database we add the _tb at the end of the name (using a plural nound i.e. users, countries, watershed, etc.). On the GoBrik database, if a table is mirrored on Buwana, we name it the same as on the Buwana database (i.e. communities_tb, languages_tb, countries_tb etc.)

Buwana accounts use a database seperate from GoBrik. This is the EarthenAuth Database which holds the accounts for users to use GoBrik (and in the future our other apps!).

Table Name Purpose Status
apps_tb Stores information about applications registered in the system, including registration date and login activity. Pending Dev
ayyew_score_tb Holds data related to users' Ayyew scores, including their consumption and plastic usage metrics. Pending Dev
communities_tb Stores details of communities, such as their name, country, type, and other metadata. Active
continents_tb Contains information about continents, including their codes, names in different languages, and geographical data. Active
conversations_tb Manages conversation data, including creation and update timestamps and associated message data. Active
countries_tb Contains data about countries, including population, consumption rates, and geographical information. Active
credentials_tb Stores user credentials, including keys, types, and login-related data for authentication purposes. Active
languages_tb Contains information about languages, including their names in various languages, codes, and locale data. Active
messages_tb Holds the content of messages, their associated conversation ID, and media information. Active
message_status_tb Tracks the status of messages, including whether they are sent, delivered, or read. Active
participants_tb Manages participants in conversations, including their membership status and activity in specific conversations. Active
users_tb Stores user information, such as personal details, login credentials, and geographical data. Active
watersheds_countries Links watersheds to the countries they span. Paused
watersheds_tb Contains information about watersheds, including their names, geographical data, and related environmental information. Paused

GoBrik Ecobricker Database

The core of the goBrik app.

Table Name Rows Type Collation Status
communities_tb 2,945 MyISAM utf8mb4_general_ci Active
continents_tb 8 InnoDB latin1_swedish_ci Active
countries_tb 149 InnoDB utf8mb4_unicode_ci Active
load_brk_transaction 150,726 MyISAM utf8mb4_general_ci ??
load_cash_transaction 1,389 MyISAM utf8mb4_general_ci ??
tb_brik_transaction 164,328 MyISAM utf8mb4_general_ci Used. Innactive
tb_cash_transaction 1,389 MyISAM utf8mb4_general_ci Used. Innactive
tb_ecobrickers 24,969 InnoDB utf8mb4_general_ci Active
tb_ecobrickers_zero 5,163 MyISAM utf8mb4_general_ci ???
tb_ecobricks ~122,105 InnoDB utf8mb4_general_ci Active
tb_projects 63 MyISAM utf8mb4_general_ci Not Active
tb_static_calc_data 1 MyISAM utf8mb4_general_ci ???
tb_temp_YMDT 136 MyISAM utf8mb4_general_ci Not Active
tb_trainings 73 MyISAM utf8mb4_general_ci Not Active

Nomenclature note

In the GoBrik table we write table names with tb_ at the start of the table name (using a plural noun i.e. ecobricks, ecobrickers, etc) if it is only used on GoBrik. On the buwana database we add the _tb at the end of the name (using a plural nound i.e. users, countries, watershed, etc.). On the GoBrik database, if a table is mirrored on Buwana, we name it the same as on the Buwana database (i.e. communities_tb, languages_tb, countries_tb etc.)

Clone this wiki locally