Skip to content

Commit

Permalink
chore: august 3rd release (#344)
Browse files Browse the repository at this point in the history
* chore: add @types/uuid

* chore: add @types/uuid

* fix(app-lib): tsconfig pkg extends

* fix: missing encoding dep

* feat: sitemap (#290)

* feat: add sitemap

* fix: error handling

* fix: move common types

* fix: update base url in sitemap

* Update apps/webapp/app/(routes)/[lang]/blog/[category]/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/wallet/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* Update apps/webapp/app/(routes)/[lang]/whitepaper/sitemap.ts

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: build error

* fix: remove unnecessary async declarative

* vendor: add @types/uuid

* fix: remove console log for debug

* fix: add 'async' to all sitemaps

* fix: make ProjectPageParams extends CommonPageParams

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix(webapp): UI/UX tweaks and upts from final v1 landing designs (#291)

* (webapp)fix:FAQ border radi + muted color

* (webapp)fix:newsletter spacing

* (webapp)fix:participate spacing and font family

* (webapp)fix:header spacing + bitlauncher logo size

* (webapp)fix:blog section 4 per row + purple link + gap

* (webapp)fix:hero-card spacing

* (webapp)fix:auction-card spaces

* (webapp)fix:Upcoming grid gap

* (webapp)fix:article card - text-left

* (webapp)fix:media-card text-start

* (webapp)fix:media-section purple link + space

* (webapp)fix:participate gap + section font and padding

* (webapp)fix:footer links padding + other spacing fix

* (webapp)fix:upcoming background circle

* (webapp)fix:footer margin-10

* (webapp)fix:upcoming bg shape

* (webapp)-andler-changes-request

* (webapp)-debug-toggle navigation icon

* (webapp)-create-mobile-navigation-context

* (webapp)-create-mobile-navigation-context

* (webapp)-fix navigation bug - add key

* (webapp)-Andler-changes

* (webapp)-responsive - upcoming

* (webapp)-fix-responsive-whychooseUs

* (webapp)-fix-responsive-participate

* (webapp)-fix-responsive-media

* (webapp)-fix-responsive-articles

* (webapp)-responsive-project-header+info+sharebtn

* (webapp)-feat-about-base

* (webapp)-feat-about-landing-complete

* (webapp)-feat-security-updated

* (webapp)-fix-steps-padding

* fix typo

* fix bgHeader type

* fix bgHeader type

* impr(webapp): layout tweaks

* impr(webapp): info pages img asset + css class

* fix: bun.lockb

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: multichain indexer ( part 1 ) (#293)

* chore: update app-contracts

* feat: multichain indexer

* feat: prod chains

* feat: presale wallet

* feat: blpl token

* feat: blpl token

* chore: update bunlock

* feat: blpl token

* feat: presale evm contribs

* feat: blpl token

* wip: presale indexer

* chore(indexer): fix dockerfile

* feat: presale transaction indexing (#296)

* feat: report transaction id

* feat: save deposits data

* feat: save deposits data

* feat: read presale transactions

* chore: disable view all

* feat: update presale deposits ui

* feat: display amount raised and contributors

* chore: environment chains and tokens

* fix(webapp): desktop padding (#297)

* feat: multichain presale deposits (#298)

* chore: environment chains and tokens

* fix: chain switch

* fix: chain switch

* feat: update nav links (#299)

* chore: environment chains and tokens

* feat: update nav links

* chore: renable swaps service, index token from latest block

* feat(webapp): wallet ui updates (#300)

* fix: wagmi config

* feat(webapp): presale contribution report

* feat: realtime presale data

* feat: realtime presale data

* feat: update dropdown menu

* feat(supabase): update schema and types

* chore: debug presale token issuance

* feat: show issuance trx link on table

* impr(webapp): upt mob ver of more info cards (#294) (#305)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>

* chore: august 2nd release [at TEST]  (#315)

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix: merge typo

* fix: tailwind font config

* chore: august 3rd release [pre-prod] (#334)

* impr(webapp): upt mob ver of more info cards (#294)

* styles: update mobile version for information cards of home page

* styles: use tailwind css variables

* styles: add font family futura pt

* styles, config: add cornflowerblue variables on tailwind config and update information cards' background

* config: update font importation

* chore: replace BC with BL

* chore: replace bc files with bl files

* chore: replace bc files with bl files

---------

Co-authored-by: Roberto Lucas <[email protected]>

* fix(impr): verify font-style and text wording across landing (#309)

* fix(impr): verify font-style across landing

* fix(webapp): lufga bold font config

* fix(webapp): investor wording to contributor on texts

* fix(webapp): investors wording to contributors on texts (plural)

* chore(webapp): text, invest wording upt to contribute

* config: add multibase custom hook (#310)

* config: add multibase custom hook

* chore: update multibase hook and session hook

* chore: change inverted params

* impr(fix): multibase init call

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: referral section ui - ver 0.1a (#311)

* chore(webapp): update gitignore

* chore: update cursor agent rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* fix: action example on cursor rules

* feat(webapp): use dynamic loading in homepage (#313)

* feat: token issuance with trigger.dev and alchemy hooks - part 1 (#312)

* feat: alchemy transfer hooks

* feat(trigger): listen token transfers

* feat(app-lib): add pino logger

* feat(trigger): address activity handler

* feat(indexer): security updates and alchemy proxy

* fix(webapp): logger bug

* chore(indexer): sentry middleware and app config

* chore(indexer): cleanup

* chore: update bunlock

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* feat(indexer): trigger address activity job (#316)

* impr(webapp): check short link gen (#301)

* fix(webapp): desktop padding

* wip(imp): check user share link

* fix(webapp): error var name scope

* chore: updating supabase schema & types

* feat(webapp): user table short link + session upsert

* chore: use biome 🚀 (#317)

* chore: use biome

* chore: use biome

* chore(indexer): verify call with alchemy signing key (#318)

* devops(indexer): update dockerfile

* chore(indexer): cleanup

* chore: update gitignore

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* debug(indexer): gcloud deployment

* fix(trigger): install right trigger.dev dep

* fix(indexer): trust proxy

* feat: token issuance trigger part 2 (#321)

* chore(alchemy): use gcloud endpoint

* docs(alchemy): update readme file

* docs(indexer): update readme file

* debug(indexer): gcloud automated deployment

* chore(alchemy): env values validation

* chore(indexer): improve logging

* chore(indexer): improve logging

* chore(indexer): stringify all logs

* debug(indexer): disable alchemy signature validation

* debug(indexer): disable alchemy signature validation

* chore(indexer): validate env and use trigger secret

* debug(faucet): save dist/ empty folder in git

* chore: update deps

* chore: improve env validations

* fix(alchemy): wrong import

* chore(indexer): improve logging

* debug(indexer): alchemy webhook handler

* debug(indexer): disable helmet

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* debug(indexer): alchemy hook handler

* feat(indexer): alchemy signature middleware

* feat(indexer): validate alchemy signature

* chore(indexer): security improvements (#323)

* chore(indexer): disable alchemy validation

* feat: presale token issuance part 3 (#325)

* chore(alchemy): export types

* chore(indexer): log process event id

* chore(indexer): log process event id

* chore: prod network conig, validate networks

* wip(indexer): validate before triggering

* chore: add try catch

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* chore: clean up

* devops(indexer): update dockerfile

* chore: format code

* devops: remove lhci reports

* fix(indexer): wrong import

* feat(trigger): transfer blpl token (#327)

* feat(trigger): transfer blpl token

* docs(trigger): token issuance jsdocs

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* devops(indexer): update dockerfile

* chore: remove type:module (#329)

* chore: remove type:module

* chore: remove type:module

* devops(indexer): test deployment

* devops(indexer): test deployment

* chore(supabase): use module

* feat(trigger): presale token issuance

* chore: format

* chore: use type:module for monorepo

* impr(webapp): add multibase provider (#326)

* config: create multibase provider

* chore: update multibase env variable

* impr(webapp): UI Update (#314)

* (wepapp)impr:landing distribution + filenames

* (wepapp)impr:auction card badge

* (wepapp)impr:steps pading + new text-size

* (wepapp)impr:text-size

* (wepapp)impr:refactored about us section

* (wepapp)impr:new tittles learning section

* (wepapp)impr:security section

* (wepapp)impr:tittle style and fonts

* (wepapp)impr:responsive impr

* fix:about section text-18 instead of text-sm

* fix:security responsive

* fix:hero padding

* fix:Final Mobil Tweaks

* impr(webapp): landing heros + mob-nav spacing

* impr(webapp): landing learn section updated blog links

* fix(webapp): info text foreground color

* impr(webapp): landing responsiveness

* imp(webapp): 3 steps needed responsiveness

* chore(webapp): rm duplicate component

---------

Co-authored-by: Roberto Lucas <[email protected]>

* feat: security updates (#331)

* feat(indexer): validate right usdt,usdc address

* feat(indexer): wait for finality and trx log

* fix(indexer): wrong import

* chore(indexer): fix build

* chore(webapp): format

* feat(webapp): bitlauncher blog category + blog tweaks (#324)

* wip: static blog files upt

* fix(webapp): blog article file gen + article ui tweaks

* chore(webapp): app ver upt + cms gen script

* docs: upt cms-ql.sh

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* impr(webapp): upt /services/datocms/datocms-blog.service.ts

coderabbitai suggestion.

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* fix(webapp): app build, missing file

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* chore: format files

* fix(webapp): cached files error catch

* impr(webapp): static blog file error catch

* fix(webapp): static cached file chk

* feat: supabase schema and webapp updates  (#335)

* feat(indexer): add address registration validation

* feat: update database schema to support presales

* feat: repo/tokens (#336)

* chore: update repo packages (#338)

* feat: stable coin selector

* feat: presale ux ui

* chore: repo/contracts pkg

* chore: repo/utils pkg

* chore: repo/tsconfig pkg

* chore: repo/alchemy pkg

* chore: repo/jobs pkg

* chore: repo/supabase pkg

* docs: update readme

* chore: update bunlock

* chore(indexer): alchemy webhook

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* docs: update readme

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore(alchemy): invert ternary

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* chore: not nullable values, format code

* chore: update node:crypto

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* feat(indexer): alchemy signature validation

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* chore: fix build (#339)

* feat: validate user registration on event proxy (#340)

* chore: fix imports

* feat(indexer): validate user is registered

* feat: add presale deposit checks (#341)

* feat(indexer): is registered address

* feat(indexer): validate amount and timing

* wip(webapp): update project, presale and auction pages

* chore(webapp): improve error handling

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* feat: realtime presale data (#342)

* feat: real time presale data

* feat: real time presale data

* fix(webapp): header margin (#343)

* webapp:fix margin top

* webapp:add header tag

* webapp:fix margin top

* webapp:add md top

* webapp:add md top

* webapp:fix project tittle + pills responsive

---------

Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Brandon Fernández <[email protected]>

* chore(fix): update apps/trigger package.json dep

* fix: cms gen merged files + use-session table upt + trigger/tsconfig upt

---------

Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: Nathanael Liu <[email protected]>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Co-authored-by: Brandon Fernández <[email protected]>
Co-authored-by: Leandro Gavidia Santamaria <[email protected]>
Co-authored-by: Gabo Esquivel <[email protected]>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
  • Loading branch information
8 people committed Aug 27, 2024
1 parent 7e1c9ad commit 217760f
Show file tree
Hide file tree
Showing 226 changed files with 8,658 additions and 2,721 deletions.
27 changes: 0 additions & 27 deletions .github/lighthouse/budget.json

This file was deleted.

85 changes: 0 additions & 85 deletions .github/workflows/lighthouse.yml

This file was deleted.

4 changes: 3 additions & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,7 @@
},
"editor.codeActionsOnSave": {
"source.organizeImports.biome": "explicit"
}
},
"editor.insertSpaces": true,
"editor.tabSize": 2
}
34 changes: 18 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,12 +41,6 @@ The Faucet application serves as a utility for distributing test tokens or curre

The Indexer application is responsible for indexing blockchain data. It listens to the blockchain network, extracts relevant data from blocks, transactions, and events, and stores it in a structured format for easy querying and analysis.

#### Supabase (`/apps/supabase`)

This application integrates with Supabase, a scalable and open-source Firebase alternative, providing real-time database functionality, authentication, storage, and more. It's designed to leverage Supabase services for backend functionalities.

For more database schema details, refer to the [Database Schema](/apps/supabase/README.md) diagram.

#### Webapp (`/apps/webapp`)

The Webapp is a front-end application that provides a user interface for interacting with the project's services. It includes features such as displaying blockchain data, interacting with smart contracts, and utilizing the Faucet for test tokens.
Expand All @@ -55,25 +49,33 @@ Please refer to the [webapp README.md](/apps/webapp/README.md) for more details

### Packages

#### Config TypeScript (`/packages/config-typescript`)
#### Alchemy (`/packages/alchemy`)

This package integrates with the Alchemy SDK, providing a robust interface for interacting with Ethereum and other blockchain networks. It includes utilities for creating and managing blockchain interactions, leveraging Alchemy's powerful API services.

#### Config TypeScript (`/packages/tsconfig`)

This package offers a shared TypeScript configuration to standardize TypeScript compilation options across the project.
This package offers shared TypeScript configurations to standardize TypeScript compilation options across the project. It includes specific configurations for different environments and Node.js versions.

#### Smartsale Contracts (`/packages/app-contracts`)
#### Jobs (`/packages/jobs`)

Contains smart contracts for the Smartsale platform, including auction contracts, ERC20 tokens, and other blockchain-based contracts. These are essential for the project's blockchain functionalities.
The Jobs package contains background tasks and scheduled processes for the SmartSale platform. It utilizes Trigger.dev for managing and deploying these jobs, ensuring efficient handling of asynchronous operations and scheduled tasks.

#### Smartsale Env (`/packages/app-env`)
#### Supabase (`/packages/supabase`)

Provides environment configurations and utilities for the Smartsale platform, ensuring that different environments (development, testing, production) can be managed and configured efficiently.
This package integrates with Supabase, providing real-time database functionality, authentication, and storage services. It includes type generation and schema validation tools to ensure type safety when interacting with the Supabase backend.

#### Smartsale Lib (`/packages/app-lib`)
#### Tokens (`/packages/tokens`)

A library of reusable code for the Smartsale platform, including utility functions, blockchain interaction helpers, and common components used across the project.
The Tokens package contains definitions, interfaces, and utilities related to the various tokens used within the SmartSale ecosystem. This includes ERC20 token implementations, token standards, and related blockchain interactions.

#### TSConfig (`/packages/tsconfig`)
For more details on specific packages, refer to their respective README files:

Houses TypeScript configuration files used to compile TypeScript projects within the monorepo. It ensures consistency in TypeScript compilation settings.
- [Alchemy](./packages/alchemy/README.md)
- [Jobs](./packages/jobs/README.md)
- [Supabase](./packages/supabase/README.md)
- [Tokens](./packages/tokens/README.md)
You can also check their package.json configurations for additional information.

### Hardhat (`/hardhat`)

Expand Down
3 changes: 2 additions & 1 deletion apps/faucet/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,8 @@ pnpm-debug.log*
lerna-debug.log*

node_modules
dist
dist/**
!dist/.keep
dist-ssr
*.local

Expand Down
2 changes: 1 addition & 1 deletion apps/faucet/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
"react": "18.x",
"react-dom": "18.x",
"app-env": "workspace:*",
"app-contracts": "workspace:*",
"@repo/contracts": "workspace:*",
"tailwind-merge": "^2.4.0",
"tailwindcss": "^3.4.6",
"tailwindcss-animate": "^1.0.7",
Expand Down
2 changes: 1 addition & 1 deletion apps/faucet/src/components/add-token-to-metamask.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import type { EVMTokenContractData } from 'app-contracts'
import type { EVMTokenContractData } from '@repo/contracts'
import { useSwitchChain } from 'wagmi'
import { Button } from './ui/button'

Expand Down
2 changes: 1 addition & 1 deletion apps/faucet/src/components/faucet-form.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import {
TestnetMBOTSPL,
TestnetUSDCred,
TestnetUSDT,
} from 'app-contracts'
} from '@repo/contracts'
import { useEffect, useState } from 'react'
import { parseUnits } from 'viem'
import { useAccount, useSwitchChain, useWriteContract } from 'wagmi'
Expand Down
2 changes: 1 addition & 1 deletion apps/faucet/src/components/token-select.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import {
SelectValue,
} from '@/components/ui/select'
import type { SelectProps } from '@radix-ui/react-select'
import type { TokenContractData } from 'app-contracts'
import type { TokenContractData } from '@repo/contracts'

export function TokenSelect({ options, ...props }: TokenSelectParams) {
return (
Expand Down
2 changes: 1 addition & 1 deletion apps/faucet/src/hooks/use-usdt-balance.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { TestnetUSDCred } from 'app-contracts'
import { TestnetUSDCred } from '@repo/contracts'
import { formatUnits } from 'viem'
import { useAccount, useReadContract } from 'wagmi'

Expand Down
4 changes: 3 additions & 1 deletion apps/indexer/.env-sample
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,6 @@ SEPOLIA_RPC=https://eth-sepolia.g.alchemy.com/v2/xxx
ISSUER_KEY=xxx
ISSUER_ADDRESS=0x
DFUSE_API_KEY=server_xxx
ALCHEMY_ACTIVITY_SIGNING_KEY=xxx
ALCHEMY_ACTIVITY_SIGNING_KEY=xxx
TRIGGER_SECRET_KEY=1234567890
PRESALE_ADDRESS=0x
17 changes: 9 additions & 8 deletions apps/indexer/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,24 +6,25 @@ WORKDIR /app

# Copy the package.json files for the workspaces
COPY package.json .
COPY apps/supabase/package.json ./apps/supabase/package.json
COPY apps/indexer/package.json ./apps/indexer/package.json
COPY apps/trigger/package.json ./apps/trigger/package.json
COPY packages/jobs/package.json ./packages/jobs/package.json
COPY packages/supabase/package.json ./packages/supabase/package.json
COPY packages/alchemy/package.json ./packages/alchemy/package.json
COPY packages/app-env/package.json ./packages/app-env/package.json
COPY packages/app-contracts/package.json ./packages/app-contracts/package.json
COPY packages/app-lib/package.json ./packages/app-lib/package.json
COPY packages/config-typescript/package.json ./packages/config-typescript/package.json

COPY packages/contracts/package.json ./packages/contracts/package.json
COPY packages/utils/package.json ./packages/utils/package.json
COPY packages/tsconfig/package.json ./packages/tsconfig/package.json
COPY packages/tokens/package.json ./packages/tokens/package.json
# Copy the lock file
COPY bun.lockb .

# Install dependencies for the entire monorepo
RUN mkdir hardhat
RUN npm install -g bun ts-node tsconfig-paths
RUN npm install -g bun
RUN bun install -g ts-node tsconfig-paths ts-node-dev
RUN bun install

# Copy the specific workspaces
COPY apps/supabase ./apps/supabase
COPY apps/indexer ./apps/indexer
COPY apps/trigger ./apps/trigger
COPY packages/ ./packages/
Expand Down
15 changes: 15 additions & 0 deletions apps/indexer/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,20 @@
# Bitlauncher Indexer

The Bitlauncher Indexer is a critical component of our blockchain data processing ecosystem. It's an advanced, high-performance system designed to efficiently capture, process, and store blockchain events in real-time. By continuously monitoring the blockchain, the indexer ensures that the Bitlauncher platform always has access to the most up-to-date and accurate on-chain data.

Key responsibilities of the Bitlauncher Indexer include:

- Real-time event monitoring: Continuously listens for new blocks and transactions on the blockchain.
- Smart contract interaction tracking: Indexes and processes events related to specific smart contracts.
- Token transfer tracking: Monitors and records all token transfer activities.
- Data normalization: Transforms raw blockchain data into a structured format for easy querying and analysis.
- Historical data management: Maintains a comprehensive historical record of blockchain activities.
- API integration: Provides a robust API for other components of the Bitlauncher platform to access indexed data.
- Performance optimization: Ensures high throughput and low latency in data processing and retrieval.
- Scalability: Designed to handle increasing blockchain activity and data volume.

## Getting Started§

```bash
# Copy environment variables. Put your dfuse credentials on it
cp .env-sample .env
Expand Down
12 changes: 8 additions & 4 deletions apps/indexer/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,16 +15,19 @@
"dependencies": {
"@dfuse/client": "^0.3.21",
"@repo/supabase": "workspace:*",
"@repo/jobs": "workspace:*",
"@repo/alchemy": "workspace:*",
"@repo/tokens": "workspace:*",
"@repo/trigger": "workspace:*",
"@sentry/integrations": "^7.114.0",
"@sentry/node": "^8.19.0",
"@sentry/profiling-node": "^8.26.0",
"@supabase/supabase-js": "^2.44.4",
"@trigger.dev/sdk": "^2.3.19",
"@types/pino-http": "^5.8.4",
"app-contracts": "workspace:*",
"@repo/contracts": "workspace:*",
"app-env": "workspace:*",
"app-lib": "workspace:*",
"@repo/utils": "workspace:*",
"axios": "^1.7.2",
"bn.js": "^5.2.1",
"express": "^4.19.2",
Expand All @@ -35,7 +38,8 @@
"pino-http": "^10.2.0",
"resend": "^3.5.0",
"viem": "latest",
"ws": "^8.18.0"
"ws": "^8.18.0",
"zod": "^3.23.8"
},
"devDependencies": {
"@types/express": "^4.17.21",
Expand All @@ -46,7 +50,7 @@
"rimraf": "^6.0.1",
"ts-node": "^10.9.2",
"ts-node-dev": "^2.0.0",
"@repo/typescript-config": "workspace:*",
"@repo/tsconfig": "workspace:*",
"tsconfig-paths": "^4.2.0",
"typescript": "^5.5.4"
}
Expand Down
Loading

0 comments on commit 217760f

Please sign in to comment.