AtAuth
Contributing to ATAuth#
Development Setup#
cd gateway
npm install
cp .env.example .env # Fill in required secrets
npm run dev # Hot reload with tsx watch
Verify Your Changes#
npm run typecheck # Type checking
npm run lint # ESLint
npm run test:run # 394 tests across 22 files
Client Libraries#
Rust (src/) and TypeScript (ts/) client libraries for token verification:
cargo test # Rust library
cd ts && npm test # TypeScript library
Code Style#
- TypeScript strict mode, ESLint rules enforced
- Express 5 async error handling (
throwpattern, no try/catch wrappers) - Tests live alongside source:
foo.ts->foo.test.ts - In-memory SQLite for test isolation
Pull Requests#
- One feature or fix per PR
- Add tests for new functionality
- All CI checks must pass (typecheck, lint, vitest)
Security#
Report vulnerabilities privately -- see SECURITY.md.
License#
Contributions are licensed under MIT.