67 lines
1.1 KiB
Markdown
67 lines
1.1 KiB
Markdown
|
|
# Contributing to ChainID 138 Explorer Platform
|
||
|
|
|
||
|
|
Thank you for your interest in contributing!
|
||
|
|
|
||
|
|
## Development Setup
|
||
|
|
|
||
|
|
1. **Prerequisites**
|
||
|
|
- Go 1.21+
|
||
|
|
- Node.js 20+
|
||
|
|
- Docker and Docker Compose
|
||
|
|
- PostgreSQL 16+ (or use Docker)
|
||
|
|
- Elasticsearch/OpenSearch
|
||
|
|
|
||
|
|
2. **Initial Setup**
|
||
|
|
```bash
|
||
|
|
./scripts/setup.sh
|
||
|
|
```
|
||
|
|
|
||
|
|
3. **Start Development Environment**
|
||
|
|
```bash
|
||
|
|
./scripts/run-dev.sh
|
||
|
|
```
|
||
|
|
|
||
|
|
## Code Style
|
||
|
|
|
||
|
|
### Go
|
||
|
|
- Follow standard Go formatting (`go fmt`)
|
||
|
|
- Run `go vet` before committing
|
||
|
|
- Add tests for new features
|
||
|
|
|
||
|
|
### TypeScript/React
|
||
|
|
- Use TypeScript for all new code
|
||
|
|
- Follow Next.js conventions
|
||
|
|
- Use functional components with hooks
|
||
|
|
- Run `npm run lint` before committing
|
||
|
|
|
||
|
|
## Testing
|
||
|
|
|
||
|
|
### Backend
|
||
|
|
```bash
|
||
|
|
cd backend
|
||
|
|
go test ./...
|
||
|
|
```
|
||
|
|
|
||
|
|
### Frontend
|
||
|
|
```bash
|
||
|
|
cd frontend
|
||
|
|
npm test
|
||
|
|
```
|
||
|
|
|
||
|
|
## Pull Requests
|
||
|
|
|
||
|
|
1. Create a feature branch from `main`
|
||
|
|
2. Make your changes
|
||
|
|
3. Add tests
|
||
|
|
4. Ensure all tests pass
|
||
|
|
5. Submit a pull request
|
||
|
|
|
||
|
|
## Architecture
|
||
|
|
|
||
|
|
See `docs/specs/` for detailed technical specifications.
|
||
|
|
|
||
|
|
## Questions?
|
||
|
|
|
||
|
|
Open an issue or contact the maintainers.
|
||
|
|
|