Contributions are welcome. This document describes how to set up, develop, and submit changes.
- PHP 8.2+
- Composer
- Node.js 22+
- npm 10+ (bundled with Node 22)
git clone https://github.com/felipesauer/safeaccess-inline.git
cd safeaccess-inlinecd packages/php
composer installRun the full test suite with Pest:
composer testInstall all workspace dependencies from the repo root:
npm installWork in the packages/js workspace:
cd packages/jsAvailable scripts:
| Script | Purpose |
|---|---|
npm run build |
Compile TypeScript |
npm test |
Run tests |
npm run typecheck |
Type-check without emit |
npm run lint |
Run ESLint |
This repo enforces Conventional Commits with commitlint. Every commit must include a scope from the allowed list:
<type>(<scope>): <description>
Allowed scopes: js, php, docs, ci, deps
Examples:
feat(php): implement safe_access() function
fix(js): handle null root object
docs: update quickstart commands
ci: add matrix build for PHP 8.3
deps: bump eslint to v10
- Fork the repository
- Create a feature branch:
git checkout -b feat/my-feature - Make your changes
- Ensure all tests pass
- Open a Pull Request against
main
For security issues, please follow our Security Policy.