Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Relic web #92

Open
wants to merge 10 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
93 changes: 93 additions & 0 deletions GLOBAL RELIC/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@

# ⚡ Hackathon Project Template ⚡

_This is a sample submission repository.
Please [__fork this repo__](https://help.github.com/articles/fork-a-repo/) and use this as a starting point for your hackathon project._

## Project Name

### Team name

Global Relic

#### Hackathon Track

SocialFi

##### Region location

Nairobi, Kenya

##### Team Members

- Jordan Muthemba, Smart Contract Developer
- Martha Mwangi, Software developer
- Rachael Chege,Product designer
- Velma C Krop, Project Manager

#### Project Description

Introduction

Empowering conservation Land fragmentation in the Maasai Mara landscape manifested in the closure of wildlife corridors is one of the significant challenges fronting the conservation efforts of some of the world's endangered species.

This problem has translated to reduced ranges and increased human-wildlife conflict in the Massai Mara.

Consequently, to coexist in harmony with nature, the pastoralist community in the Mara-Siana Conservancy, courtesy of WWF-Kenya, has taken up conservation as their responsibility.

This community has progressively changed the negative perception of wildlife as problematic animals through owning the change process. This has further translated to reduced retaliatory killings of nature, especially elephants and lions.

BACKGROUND

A community uniting to secure habitats for wildlife has led to several social-economic benefits and the mitigation of human-wildlife conflict within the iconic Maasai Mara. The Mara-Siana is a critical migratory corridor for the African Elephant. It hosts the big 5 as well as other spectacular wildlife that draws tourists from near and far.

Unfortunately, the Maasai Mara is also home to the iconic Maasai community, who roam this vast land grazing their livestock. Over time, poor land management, unplanned settlement, and fencing led to the disappearance of critical wildlife habitats. As a result, the human-wildlife conflict became familiar with the loss of livestock, wildlife, and even human life. More than 8,000 acres of land within the Mara Siana was initially a group ranch but later converted to private land, with each of the 1,251 land owners being allocated 42 acres of land.

Previously, some homesteads were inside the Siana valley in the year 2013. Some of the community landowners approached a donor with the intention of leasing and establishing Siana Conservancy to make it a success. They were informed from the case studies which are now thriving, like Naboisho, Mara North and Olare, and other conservancies in the Maasai Mara. To develop grass banks for their livestock during the drought season To benefit financially To get employment opportunities in the conservancies and camps that are operating in the conservancies From learnings of other neighbouring conservancies, the land owners soon came to realize how they could benefit and earn income from conservation efforts.

The primary motivation factors that compelled the communities to form the conservancies include; 1. 2. 3. Each land owner contributed 6.5 acres. Landowners within the identified core conservation area also agreed to relocate to the earmarked human settlement zones. Key to the conservancy was the partnership between the land owners and the tourism investors.

The discussions materialised when the tourist partners and camp directors came together and raised money to pay the leases. That has been really key and has been cemented by the community by giving camp directors a 15-year lease. The communities receive annual land rents, and then 20 dollars per guest per night goes to the kitty of the land owners' account.

The land owners would create the space for wildlife to thrive in suitable habitats, while the tourism investors would attract business to the camps. Since the community moved from the valley, there has been a significant impact. There is more wildlife coming in. In terms of livelihood, communities realized the benefits of the conservancies.

The landowners started receiving cash benefits, and the value of conservations began to get slowly into them. And that is why they were willing to give part of their land to go into the conservancy. After a while, hundreds of landowners started staging demonstrations over poor management by conservancy officials. Management agreements become a double-edged sword where money donated by donors was abused by the private conservancies hence low returns to the land owners.

Not only were these private conservancies not transparent, but also heavily flawed. These flaws included poor management, lack of accountability, taking land without permission, issuing threats, and locking money for landowners. These issues have been faced by landowners in Maasai Mara up to date. The Problem in a nutshell Lack of transparency and visibility in the disbursement process and usage of donor funds. Repeat players and in-person interactions.

Funding does not reach the intended parties, posing a threat to the Maasai Mara ecosystem and the economic stability of stakeholders. Centralized control and access to information by certain personnel e.g. the conservancies' management. Low public accountability and participation in the decision-making process and conservation processes.



Provide a clear statement of the challenges/issues/problems/gaps your project engages as well as a brief, high-level description of how your project engages the areas you've identified. What is the value of your approach? Who are the intended users?

#### Summary

Describe the basic functionality of your project.

What are the features you were able to implement?

What features would you like to implement?

#### URLs

List any URLs relevant to demonstrating your prototype

Figma Link: https://www.figma.com/file/4PtO5dlMxGOpB5RoEUNoI2/RELIC-MAIN?node-id=23%3A145
Relic Web:
Relic USSD:

#### Presentation

List any links to your presentation or any related visuals you want to share.

Pitch Deck: https://docs.google.com/presentation/d/1zt-cUSM8h-W02mt10iPz8Lu8xOW7FgTtsnlqEWTBt4Q/edit#slide=id.g17a9491a21c_0_79
Video Demo:

#### Next Steps

What do you need to do next to turn this prototype into a working solution?

#### License

This repository includes an [unlicensed](http://unlicense.org/) statement though you may want to [choose a different license](https://choosealicense.com/).
23 changes: 23 additions & 0 deletions GLOBAL RELIC/relic-web/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# dependencies
/node_modules
/.pnp
.pnp.js

# testing
/coverage

# production
/build

# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local

npm-debug.log*
yarn-debug.log*
yarn-error.log*
70 changes: 70 additions & 0 deletions GLOBAL RELIC/relic-web/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
# Getting Started with Create React App

This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).

## Available Scripts

In the project directory, you can run:

### `npm start`

Runs the app in the development mode.\
Open [http://localhost:3000](http://localhost:3000) to view it in your browser.

The page will reload when you make changes.\
You may also see any lint errors in the console.

### `npm test`

Launches the test runner in the interactive watch mode.\
See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information.

### `npm run build`

Builds the app for production to the `build` folder.\
It correctly bundles React in production mode and optimizes the build for the best performance.

The build is minified and the filenames include the hashes.\
Your app is ready to be deployed!

See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information.

### `npm run eject`

**Note: this is a one-way operation. Once you `eject`, you can't go back!**

If you aren't satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project.

Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you're on your own.

You don't have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn't feel obligated to use this feature. However we understand that this tool wouldn't be useful if you couldn't customize it when you are ready for it.

## Learn More

You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started).

To learn React, check out the [React documentation](https://reactjs.org/).

### Code Splitting

This section has moved here: [https://facebook.github.io/create-react-app/docs/code-splitting](https://facebook.github.io/create-react-app/docs/code-splitting)

### Analyzing the Bundle Size

This section has moved here: [https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size](https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size)

### Making a Progressive Web App

This section has moved here: [https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app](https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app)

### Advanced Configuration

This section has moved here: [https://facebook.github.io/create-react-app/docs/advanced-configuration](https://facebook.github.io/create-react-app/docs/advanced-configuration)

### Deployment

This section has moved here: [https://facebook.github.io/create-react-app/docs/deployment](https://facebook.github.io/create-react-app/docs/deployment)

### `npm run build` fails to minify

This section has moved here: [https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify](https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify)
34 changes: 34 additions & 0 deletions GLOBAL RELIC/relic-web/config-overrides.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
// This file is included to deal with issues regarding react-scripts v5.0.0 and web3
// Provided from Web3 documentation -> https://github.com/ChainSafe/web3.js#troubleshooting-and-known-issues

const webpack = require('webpack');

module.exports = function override(config) {
const fallback = config.resolve.fallback || {};
Object.assign(fallback, {
"fs": false,
"path": require.resolve("path-browserify"),
"os": require.resolve("os-browserify/browser"),
"crypto": require.resolve("crypto-browserify"),
"stream": require.resolve("stream-browserify"),
"assert": require.resolve("assert"),
"http": require.resolve("stream-http"),
"https": require.resolve("https-browserify"),
"os": require.resolve("os-browserify"),
"url": require.resolve("url")
})
config.resolve.fallback = fallback;
config.module.rules.push({
test: /\.m?js/,
resolve: {
fullySpecified: false
}
})
config.plugins = (config.plugins || []).concat([
new webpack.ProvidePlugin({
process: 'process/browser',
Buffer: ['buffer', 'Buffer']
})
])
return config;
}
67 changes: 67 additions & 0 deletions GLOBAL RELIC/relic-web/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
{
"name": "relic-web",
"version": "0.1.0",
"private": true,
"dependencies": {
"@celo-tools/celo-ethers-wrapper": "^0.3.0",
"@celo/contractkit": "^2.3.0",
"@celo/react-celo": "^4.2.1",
"@testing-library/jest-dom": "^5.16.5",
"@testing-library/react": "^13.4.0",
"@testing-library/user-event": "^13.5.0",
"bignumber.js": "^9.1.0",
"ethers": "5.6.9",
"moment": "^2.29.4",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-hooks-global-state": "^2.0.0",
"react-icons": "^4.6.0",
"react-identicons": "^1.2.5",
"react-moment": "^1.1.2",
"react-router-dom": "6",
"react-scripts": "5.0.1",
"web-vitals": "^2.1.4",
"web3": "^1.8.0"
},
"devDependencies": {
"@tailwindcss/forms": "^0.5.3",
"assert": "^2.0.0",
"buffer": "^6.0.3",
"crypto-browserify": "^3.12.0",
"fs": "^0.0.1-security",
"https-browserify": "^1.0.0",
"os-browserify": "^0.3.0",
"path-browserify": "^1.0.1",
"process": "^0.11.10",
"react-app-rewired": "^2.2.1",
"stream-browserify": "^3.0.0",
"stream-http": "^3.2.0",
"tailwindcss": "^3.2.2",
"url": "^0.11.0"
},
"scripts": {
"start": "react-app-rewired start",
"build": "react-app-rewired build",
"test": "react-app-rewired test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": [
"react-app",
"react-app/jest"
]
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
},
"main": "config-overrides.js"
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Binary file added GLOBAL RELIC/relic-web/public/favicon.ico
Binary file not shown.
43 changes: 43 additions & 0 deletions GLOBAL RELIC/relic-web/public/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<link rel="icon" href="%PUBLIC_URL%/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="theme-color" content="#000000" />
<meta
name="description"
content="Web site created using create-react-app"
/>
<link rel="apple-touch-icon" href="%PUBLIC_URL%/logo192.png" />
<!--
manifest.json provides metadata used when your web app is installed on a
user's mobile device or desktop. See https://developers.google.com/web/fundamentals/web-app-manifest/
-->
<link rel="manifest" href="%PUBLIC_URL%/manifest.json" />
<!--
Notice the use of %PUBLIC_URL% in the tags above.
It will be replaced with the URL of the `public` folder during the build.
Only files inside the `public` folder can be referenced from the HTML.
Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
work correctly both with client-side routing and a non-root public URL.
Learn how to configure a non-root public URL by running `npm run build`.
-->
<title>React App</title>
</head>
<body>
<noscript>You need to enable JavaScript to run this app.</noscript>
<div id="root"></div>
<!--
This HTML file is a template.
If you open it directly in the browser, you will see an empty page.
You can add webfonts, meta tags, or analytics to this file.
The build step will place the bundled scripts into the <body> tag.
To begin the development, run `npm start` or `yarn start`.
To create a production bundle, use `npm run build` or `yarn build`.
-->
</body>
</html>
Binary file added GLOBAL RELIC/relic-web/public/logo192.png
Binary file added GLOBAL RELIC/relic-web/public/logo512.png
25 changes: 25 additions & 0 deletions GLOBAL RELIC/relic-web/public/manifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"short_name": "React App",
"name": "Create React App Sample",
"icons": [
{
"src": "favicon.ico",
"sizes": "64x64 32x32 24x24 16x16",
"type": "image/x-icon"
},
{
"src": "logo192.png",
"type": "image/png",
"sizes": "192x192"
},
{
"src": "logo512.png",
"type": "image/png",
"sizes": "512x512"
}
],
"start_url": ".",
"display": "standalone",
"theme_color": "#000000",
"background_color": "#ffffff"
}
3 changes: 3 additions & 0 deletions GLOBAL RELIC/relic-web/public/robots.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# https://www.robotstxt.org/robotstxt.html
User-agent: *
Disallow:
Loading