Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/summitshare/dapp-template
This repository is a monorepo setup for a decentralized application (DApp) that leverages a modern stack including Next.js, Hardhat, and The Graph. Managed using PNPM, this monorepo facilitates modular development across different aspects of the DApp ecosystem—from the frontend interface to smart contracts and data indexing via subgraphs.
https://github.com/summitshare/dapp-template
dapp template
Last synced: 6 days ago
JSON representation
This repository is a monorepo setup for a decentralized application (DApp) that leverages a modern stack including Next.js, Hardhat, and The Graph. Managed using PNPM, this monorepo facilitates modular development across different aspects of the DApp ecosystem—from the frontend interface to smart contracts and data indexing via subgraphs.
- Host: GitHub
- URL: https://github.com/summitshare/dapp-template
- Owner: SummitShare
- License: mit
- Created: 2024-04-29T11:05:41.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2024-08-12T14:47:00.000Z (5 months ago)
- Last Synced: 2024-11-16T22:29:45.566Z (2 months ago)
- Topics: dapp, template
- Language: TypeScript
- Size: 3.43 MB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# DApp Template Monorepo
## Overview
This repository is a comprehensive monorepo setup for developing a decentralized application using Next.js, Hardhat, and The Graph. Each part of the application is housed in its dedicated subdirectory within this monorepo. The repository uses pnpm as a workspace and package manager.
## Structure
- `/packages/dapp`: Contains the Next.js frontend application.
- `/packages/hardhat`: Houses the Hardhat environment for smart contract development.
- `/packages/subgraph`: Setup for The Graph to handle indexing and querying blockchain data.## Getting Started
To get started with this monorepo, clone this repository and run the following command to install all dependencies:
```bash
pnpm install
```## Dev Dependencies
This project includes the following development dependencies:
- **Husky**: For managing Git hooks.
- **Lerna**: For managing multi-package repositories.
- **TypeScript**: For static type checking.
- **ESLint**: For linting and maintaining code quality.
- **@typescript-eslint/parser**: TypeScript parser for ESLint.
- **@typescript-eslint/eslint-plugin**: ESLint plugin with TypeScript specific rules.## Customizing Husky Pre-Commit Hooks
Husky is set up to run pre-commit hooks to ensure code quality. By default, it runs ESLint. You can customize the pre-commit hook to run additional scripts or checks.
1. Open the `.husky/pre-commit` file.
2. Modify the file to include additional commands as needed. For example, to run tests before committing, you can add:```bash
pnpm run lint
pnpm run test
```3. Save the file and commit your changes.
## Contribution
Contributions are welcome! Please refer to each package's README for more detailed guidelines on how to contribute effectively.
## Give Us a Star
If you find this project helpful, please give it a star on GitHub!⭐
---
This project template is maintained by SummitShare.