martechmagicians / referhub
ReferHub is a modular and composable referral system, designed to seamlessly generate and track referral codes for users. With support for various identification methods and a flexible event-tracking system, ReferHub provides an extensible solution for managing referrals across different platforms.
Installs: 0
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Type:project
Requires
- php: >=8.2
- ext-ctype: *
- ext-iconv: *
- doctrine/doctrine-bundle: ^2.10
- doctrine/doctrine-migrations-bundle: ^3.2
- doctrine/orm: ^2.15
- phpdocumentor/reflection-docblock: ^5.3
- phpstan/phpdoc-parser: ^1.23
- symfony/console: 6.3.*
- symfony/dotenv: 6.3.*
- symfony/flex: ^2
- symfony/framework-bundle: 6.3.*
- symfony/http-client: 6.3.*
- symfony/property-access: 6.3.*
- symfony/property-info: 6.3.*
- symfony/runtime: 6.3.*
- symfony/serializer: 6.3.*
- symfony/yaml: 6.3.*
Requires (Dev)
- phpstan/extension-installer: ^1.3
- phpstan/phpstan: ^1.10
- phpstan/phpstan-symfony: ^1.3
- phpunit/phpunit: ^9.5
- symfony/browser-kit: 6.3.*
- symfony/css-selector: 6.3.*
- symfony/maker-bundle: ^1.50
- symfony/phpunit-bridge: ^6.3
Conflicts
This package is auto-updated.
Last update: 2024-04-04 23:33:14 UTC
README
ReferHub is a modular and composable referral software designed to generate and manage referral codes, track events, and handle webhooks. Built with Symfony and following DDD and TDD principles, ReferHub offers a flexible and maintainable solution for developers and businesses.
Features
- Referral Code Generation: Generate referral codes for users identified by email, username, or userId.
- Event Tracking: Track generic events like Sign Up, Purchase, and more.
- Webhook Integration: Trigger webhooks when tracked events occur.
- CLI, REST, and Batch API Support: Flexible API interfaces for various integration needs.
- Open Source: Contribute and customize to fit your unique requirements.
Installation
Requirements
- Docker (required to run the project)
Steps
-
Clone the Repository:
git clone https://github.com/yourusername/referhub.git
-
Navigate to the Project Directory:
cd referhub
-
Configure Environment Variables: Copy the
.env
file to the.env.local
file with your database and other configurations. -
Build the Project:
make build
-
Run the containers :
make up
-
Create the db:
make db-create
-
Run db migrations:
make db-migrate
Usage
Refer to the API documentation for details on interacting with ReferHub via REST API.
Contributing
We welcome contributions!
Support
For support, please open an issue on GitHub or contact the maintainers.
License
ReferHub is released under the GNU License.
Acknowledgments
Special thanks to the community and everyone who has contributed to this project.