-
Notifications
You must be signed in to change notification settings - Fork 0
Home
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 |
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 |
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 |
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.)