Skip to content
Merged
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
26 changes: 26 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
---
name: Bug Report
about: Report a bug in the PerpCity SDK
title: ''
labels: bug
assignees: ''
---

**Describe the bug**
A clear and concise description of what the bug is.

**To reproduce**
Steps to reproduce the behavior:
1. Code snippet or minimal reproduction
2. Expected output vs actual output

**Expected behavior**
What you expected to happen.

**Environment**
- SDK version: [e.g. 0.4.3]
- Runtime: [e.g. Bun 1.2, Node 22]
- OS: [e.g. macOS 15, Ubuntu 24.04]

**Additional context**
Any other context, stack traces, or error messages.
19 changes: 19 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
name: Feature Request
about: Suggest a new feature for the PerpCity SDK
title: ''
labels: enhancement
assignees: ''
---

**What problem does this solve?**
A clear description of the use case or pain point.

**Proposed solution**
How you think this could be implemented.

**Alternatives considered**
Any alternative solutions or workarounds you've considered.

**Additional context**
Any other context or examples.
61 changes: 61 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# Contributing to PerpCity SDK

Thanks for your interest in contributing! This document covers everything you need to get started.

## Prerequisites

- [Bun](https://bun.sh/) (recommended) or Node.js >= 18
- [pnpm](https://pnpm.io/)

## Getting Started

```bash
git clone https://github.com/StrobeLabs/perpcity-sdk.git
cd perpcity-sdk
pnpm install
```

## Development

```bash
# Build
pnpm build

# Run unit tests
pnpm test:unit

# Run integration tests (requires Base Sepolia RPC)
pnpm test:integration

# Lint
pnpm lint

# Format
pnpm format

# Full CI check (build + test + typecheck + lint)
pnpm ci
```

## Pull Requests

1. Fork the repo and create a branch from `main`
2. Write your code and add tests for new functionality
3. Run `pnpm ci` to verify everything passes
4. Open a PR against `main`

## Code Style

- Follow [Biome](https://biomejs.dev/) formatting and linting rules (enforced by CI)
- Use TypeScript strict mode
- Write tests for new functionality using [Vitest](https://vitest.dev/)

## Reporting Issues

- Use the bug report template for bugs
- Use the feature request template for new features
- Include SDK version, Node/Bun version, and steps to reproduce

## License

By contributing, you agree that your contributions will be licensed under the MIT License.