An open API service indexing awesome lists of open source software.

https://github.com/mathdebate09/believescreener

A React Native app for Android and iOS, built for believescreener.com—part of the believe.app project
https://github.com/mathdebate09/believescreener

apple-ui bounty react-native superteam-earn

Last synced: 4 months ago
JSON representation

A React Native app for Android and iOS, built for believescreener.com—part of the believe.app project

Awesome Lists containing this project

README

          

# BelieveScreener React Native (Android/iOS)

A React Native app for Android and iOS, built for [believescreener.com](https://believescreener.com) — part of the [believe.app](https://believe.app) project
> Bounty for [CrackedDevs@SuperteamEarn](https://earn.superteam.fun/listing/build-react-native-mobile-app/)

## Previews

### Demo Video

[believescreener-bounty-demo @ veed.io](https://www.veed.io/view/e378e461-80bf-4fee-b0fe-a52577a5f72f?panel=share)

### Mockups





Home Page






Token - Info






Token - Chart








Token - Holders (loading)






Token - Holders






Search - Portfolio








Portfolio






Search - Token






Favourites (empty)








Favourites



## Tech Stack

[![React Native](https://img.shields.io/badge/react_native-%2320232a.svg?style=for-the-badge&logo=react&logoColor=%2361DAFB)](https://reactnative.dev/docs/getting-started)
[![Expo](https://img.shields.io/badge/expo-1C1E24?style=for-the-badge&logo=expo&logoColor=#D04A37)](https://docs.expo.dev/)
[![TypeScript](https://img.shields.io/badge/typescript-%23007ACC.svg?style=for-the-badge&logo=typescript&logoColor=white)](https://www.typescriptlang.org/docs/)
[![Nativeflow](https://img.shields.io/badge/Nativeflow-%2320232a.svg?style=for-the-badge&logo=react&logoColor=%2361DAFB)](https://nativeflow.js.org/docs/intro)

## Architecture

```mermaid
flowchart TD
Start["Fetch Believe tokens & values from DEX"] --> App["Believe Screener App"]
App --> Home["Home"] & Search["Search"] & Favourite["Favourite"]
Search --> Wallet["Wallet (CA)"] & TokenKW["Token (keyword)"]
Home --> TokenPg["token/{mintAddress}"]
Favourite --> TokenPg
TokenPg --> Info["Info (favourite, trade, CA copy)"] & Charts["Charts"] & Holdings["Holdings (holder list)"]
Holdings --> Portfolio["portfolio/{walletAddress}"]
TokenKW --> TokenPg
Wallet --> Portfolio
```

## Approach

### How did I fetch the list of Believe Tokens?

I've mocked the list of tokens at [believe-dummy-app](https://github.com/mathdebate09/believeapp-dummy) ([deployed-link](https://believeapp-dummy.vercel.app/)), which gets the data of tokens from the [believe.app/explore](https://believe.app/api/tokens/explore) & the metrics dashboard is updated manually

### External APIs

- [Dexscreener API](https://docs.dexscreener.com/api/reference) for token prices
- [Moralis API](https://docs.moralis.com/web3-data-api/solana/reference/get-token-top-holders?network=mainnet&address=EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v&limit=100) for token holder list
- [Helius API](https://www.helius.dev/docs/api-reference/das/getassetsbyowner) for portfolio of an address

> All necessary API keys have been mentioned in `.env.template`

## Get started

- Make sure you have [Node 20.xx.x](https://nodejs.org/en/download/package-manager) or higher and [Git](https://git-scm.com/downloads) downloaded

1. Clone the repository
```bash
git clone git@github.com:mathdebate09/believescreener.git
cd believescreener
```

1. Set up `.env`
- COPY `.env.template` to `.env`
- Moralis API key from [moralis/register](https://admin.moralis.com/register)
- Helius API key from [helius/signup](https://dashboard.helius.dev/signup) -> [helius/endpoints](https://dashboard.helius.dev/endpoints)
- *Only paste the alphanumeric string after `https://mainnet.helius-rpc.com/?api-key=` in the `.env` as Helius API key

1. Install dependencies

```bash
npm install
```

1. Start the app

```bash
npm run start
```

In the output, you'll find options to open the app in a

- [Expo Go](https://expo.dev/go) is the fastest way, but requires an Android/iOS device for their OS specific preview
- [Android emulator](https://docs.expo.dev/workflow/android-studio-emulator/)
- [iOS simulator](https://docs.expo.dev/workflow/ios-simulator/)

## Contact

For any issue related to setup, don't hesitate to ask me!
[Telegram](https://t.me/jayowiee) || [X.COM](https://x.com/jaywoiee)