This project uses the following key dependencies:
- Mailchimp Marketing PHP SDK: Used for integrating Mailchimp functionality into the CRM.
To install the Mailchimp Marketing PHP SDK, run:
composer require mailchimp/marketing
Make sure to set up your Mailchimp API key and server prefix in your environment configuration.
- https://github.com/liberu-accounting/accounting-laravel
- https://github.com/liberu-automation/automation-laravel
- https://github.com/liberu-billing/billing-laravel
- https://github.com/liberusoftware/boilerplate
- https://github.com/liberu-browser-game/browser-game-laravel
- https://github.com/liberu-cms/cms-laravel
- https://github.com/liberu-control-panel/control-panel-laravel
- https://github.com/liberu-crm/crm-laravel
- https://github.com/liberu-ecommerce/ecommerce-laravel
- https://github.com/liberu-genealogy/genealogy-laravel
- https://github.com/liberu-maintenance/maintenance-laravel
- https://github.com/liberu-real-estate/real-estate-laravel
- https://github.com/liberu-social-network/social-network-laravel
- Ensure your environment is set up with PHP 8.3 and Composer installed.
- Download the project files from this GitHub repository.
- Open a terminal in the project folder. If you are on Windows and have Git Bash installed, you can use it for the following steps.
- Run the following command:
./setup.sh
and everything should be installed automatically if you are using Linux you just run the script as you normally run scripts in the terminal.
NOTE 1: The script will ask you if you want to have your .env be overwritten by .env.example, in case you have already an .env configuration available please answer with "n" (No).
NOTE 2: This script will run seeders, please make sure you are aware of this and don't run this script if you don't want this to happen.
composer install
php artisan key:generate
php artisan migrate --seed
This will install the necessary dependencies, generate an application key, and set up your database with initial data.
NOTE 3: Ensure your .env
file is correctly configured with your database connection details before running migrations.
Alternatively, you can build and run the project using Docker. To build the Dockerfile, follow these steps:
- Ensure you have Docker installed on your system.
- Open a terminal in the project folder.
- Run the following command to build the Docker image:
docker build -t crm-laravel .
- Once the image is built, you can run the container with:
docker run -p 8000:8000 crm-laravel
NOTE 3: Ensure your .env
file is correctly configured with your database connection details before running migrations.
This project also includes support for Laravel Sail, which provides a Docker-based development environment. To use Laravel Sail, follow these steps:
- Ensure you have Docker installed on your system.
- Open a terminal in the project folder.
- Run the following command to start the Laravel Sail environment:
./vendor/bin/sail up
- Once the containers are running, you can access the application at
http://localhost
. - To stop the Sail environment, press
Ctrl+C
in the terminal.
For more information on using Laravel Sail, refer to the official documentation.
Welcome to Liberu CRM, our innovative open-source project that reimagines Contact Relationship Management with the power of Laravel 11, PHP 8.3, Livewire 3, and Filament 3. Liberu CRM isn't just a tool for managing contacts; it's a dynamic platform designed to foster meaningful connections, streamline interactions, and elevate the way relationships are nurtured and maintained.
Key Features:
-
Seamless Contact Management: Liberu CRM offers a user-friendly interface for efficient contact management. From customer profiles to lead tracking, our project ensures that every interaction is captured, organized, and easily accessible.
-
Dynamic Livewire Interactions: Built on Laravel 11 and PHP 8.3, Liberu CRM integrates Livewire 3 for dynamic and real-time interactions. Enhance your communication and collaboration by updating contact information, notes, and activities in real time.
-
Efficient Admin Panel: Filament 3, our admin panel built on Laravel, provides administrators with powerful tools to manage users, customize settings, and oversee the entire contact ecosystem. Ensure that your CRM operates seamlessly, adapting to your organization's evolving needs.
-
Customizable Forms: Tailor contact forms to capture specific information relevant to your business or industry. Liberu CRM empowers users to create custom forms that align with their unique requirements, ensuring comprehensive data collection.
-
Task and Activity Tracking: Stay organized with Liberu CRM's task and activity tracking features. Manage appointments, follow-ups, and deadlines efficiently, ensuring that important engagements are never overlooked.
-
RESTful API for Third-Party Integrations: Liberu CRM now includes a powerful RESTful API that allows seamless integration with third-party applications. This feature enables developers to build custom solutions and extend the functionality of the CRM system.
Liberu CRM is open source, released under the permissive MIT license. We invite businesses, developers, and organizations to contribute to the evolution of Contact Relationship Management. Together, let's redefine the standards of relationship-building and create a platform that adapts to the unique needs of every user.
Welcome to Liberu CRM – where innovation meets connection, and the management of meaningful relationships is at the forefront. Join us on this journey to transform the way we cultivate and nurture connections in the digital age.
We warmly welcome new contributions from the community! We believe in the power of collaboration and appreciate any involvement you'd like to have in improving our project. Whether you prefer submitting pull requests with code enhancements or raising issues to help us identify areas of improvement, we value your participation.
If you have code changes or feature enhancements to propose, pull requests are a fantastic way to share your ideas with us. We encourage you to fork the project, make the necessary modifications, and submit a pull request for our review. Our team will diligently review your changes and work together with you to ensure the highest quality outcome.
However, we understand that not everyone is comfortable with submitting code directly. If you come across any issues or have suggestions for improvement, we greatly appreciate your input. By raising an issue, you provide valuable insights that help us identify and address potential problems or opportunities for growth.
Whether through pull requests or issues, your contributions play a vital role in making our project even better. We believe in fostering an inclusive and collaborative environment where everyone's ideas are valued and respected.
We look forward to your involvement, and together, we can create a vibrant and thriving project. Thank you for considering contributing to our community!
Run php artisan test
to execute the test suite, including Twilio integration tests.
This project is licensed under the MIT license, granting you the freedom to utilize it for both personal and commercial projects. The MIT license ensures that you have the flexibility to adapt, modify, and distribute the project as per your needs. Feel free to incorporate it into your own ventures, whether they are personal endeavors or part of a larger commercial undertaking. The permissive nature of the MIT license empowers you to leverage this project without any unnecessary restrictions. Enjoy the benefits of this open and accessible license as you embark on your creative and entrepreneurial pursuits.
Liberu CRM now includes a RESTful API for third-party integrations. This API allows developers to interact with the CRM system programmatically, enabling seamless integration with other applications and services.
- Secure authentication using Laravel Sanctum
- CRUD operations for contacts, deals, and tasks
- Versioned API endpoints (currently at v1)
- Comprehensive documentation for easy integration
For detailed information on how to use the API, please refer to the API Documentation.
- Sign up for a Twilio account at https://www.twilio.com/
- Obtain your Twilio Account SID, Auth Token, and a Twilio phone number
- Add the following environment variables to your
.env
file:
TWILIO_SID=your_twilio_sid
TWILIO_AUTH_TOKEN=your_twilio_auth_token
TWILIO_PHONE_NUMBER=your_twilio_phone_number
TWILIO_TWIML_APP_SID=your_twiml_app_sid
TWILIO_WEBHOOK_URL=https://your-app-url.com/twilio/webhook
- Run
php artisan migrate
to create the necessary database tables for call logging
-
Make outbound calls directly from the CRM interface
-
Receive inbound calls and route them to the appropriate agent
-
Click-to-call functionality for contact phone numbers
-
Automatic call logging for all inbound and outbound calls
-
Call recording capabilities
-
Add notes to call logs for future reference
To use the Twilio integration:
- Navigate to a contact's profile
- Click on the "Call" button next to their phone number
- Use the call management interface to control the call, start/stop recording, and add notes
- After the call, view the call log in the contact's activity timeline
Liberu CRM now includes powerful tools for managing advertising accounts across multiple platforms.
- Google Ads
- Facebook Ads
- LinkedIn Ads
- Instagram Ads
- Connect and manage multiple advertising accounts
- View and manage campaigns across different platforms
- Track key performance metrics (impressions, clicks, conversions)
- Integrate ad performance data with CRM data for enhanced insights
- Configure the necessary API credentials for each platform in your
.env
file:
GOOGLE_ADS_CLIENT_ID=your_google_ads_client_id
GOOGLE_ADS_CLIENT_SECRET=your_google_ads_client_secret
GOOGLE_ADS_DEVELOPER_TOKEN=your_google_ads_developer_token
FACEBOOK_APP_ID=your_facebook_app_id
FACEBOOK_APP_SECRET=your_facebook_app_secret
LINKEDIN_CLIENT_ID=your_linkedin_client_id
LINKEDIN_CLIENT_SECRET=your_linkedin_client_secret
- Run
php artisan migrate
to create the necessary database tables for advertising accounts
- Navigate to the Advertising Accounts section in the CRM
- Add a new advertising account by selecting the platform and entering the required credentials
- Once connected, you can view and manage campaigns, ad sets, and ads directly from the CRM interface
- Use the Ad Performance dashboard to track key metrics across all your advertising accounts
For more detailed information on using the advertising account management features, please refer to the user guide in the docs
folder.
The CRM now includes a robust task management system that allows users to create, assign, and track tasks related to contacts and leads. Key features include:
- Create tasks associated with contacts or leads
- Assign tasks to users
- Set due dates and reminders for tasks
- Mark tasks as complete or incomplete
- Filter and search tasks
- Receive notifications for task reminders
- To create a new task, navigate to the Tasks page and click on "Create New Task".
- Fill in the task details, including name, description, due date, and optional reminder date.
- Associate the task with a contact or lead if applicable.
- Assign the task to a user.
- Tasks can be edited, marked as complete/incomplete, or deleted from the task list.
- Use the search and filter options to find specific tasks.
Task reminders are sent automatically based on the reminder date set for each task. Reminders are sent to:
- The assigned user
- The associated contact or lead (if applicable)
Ensure that your email settings are configured correctly to receive these notifications.
To set up the project for development:
- Clone the repository
- Install dependencies:
composer install
- Set up your
.env
file - Run migrations:
php artisan migrate
- Seed the database (if applicable):
php artisan db:seed
- Start the development server:
php artisan serve
To run the test suite:
php artisan test
This will run all feature and unit tests, including the new tests for the task management system.
Please refer to our contributing guidelines for information on how to propose changes and improvements to the CRM.