Drupal 10 Plug in
Worldwide
Drupal 10 Module Development — Chat Widget Integration PROJECT OVERVIEW We are a live chat platform and need an experienced Drupal developer to build a custom Drupal 10 module that integrates the chat widget into a Drupal plug in the "Drupal way" — manageable through the admin UI rather than hardcoded into a theme template. We'd also like to offer it in the marketplace. SCOPE OF WORK 1. Module Scaffolding - Create a custom module (e.g., chat_widget) with proper .info.yml, .module, and (if needed) .routing.yml / .services.yml files following Drupal 10 coding standards. 2. Widget Integration - Attach the script via hook_page_attachments() and a defined library in libraries.yml — not a raw script dump in the theme. - Preserve the async loading behavior and the data-widget_code_id attribute exactly as required by us. - Ensure the script's id guard is respected so it never double-loads if Drupal's JS aggregation runs multiple times. 3. Admin Configuration Page - Settings form at /admin/config/system/chat allowing admins to: - Enable/disable the widget sitewide - Update the data-widget_code_id value without touching code (useful if you ever switch live chat accounts/environments) - Restrict the widget to specific pages, content types, or user roles (e.g., hide on checkout/admin pages, show only to logged-in users, etc.) 4. Performance & Compatibility - Confirm no conflicts with Drupal core/contrib JS aggregation or caching (Dynamic Page Cache, BigPipe, Varnish if applicable). - Verify no console errors and that the widget still fires correctly when loaded via Drupal's JS pipeline instead of a static HTML page. - Test with common contrib modules (GTM, cache modules) enabled. 5. Testing & Documentation - Test on staging across major browsers and mobile. - Provide a short README covering install, configuration, and uninstall/rollback steps. DELIVERABLES - Custom Drupal 10 module (all .module, .yml, config/schema files) - Admin settings form for managing the widget ID and display rules - Installation/configuration documentation - Code delivered via Git repo or zipped module folder REQUIREMENTS - Proven experience with Drupal 10 custom module development - Familiarity with Drupal's Form API, hook_page_attachments(), and libraries.yml - Experience integrating third-party JS widgets cleanly (no inline theme hacks) - Git version control experience NICE TO HAVE - Prior experience with similar live-chat platforms (Intercom, Drift, Tawk.to) - Familiarity with Drupal's render/cache pipeline to avoid cache poisoning issues CHAT SNIPPET - see attached as non-working, conceptual example. Real functional widget will be provided upon project start. BUDGET & TIMELINE - Budget: Fixed price / Hourly (specify) - Timeline: (e.g., 1 week) - Estimated hours: (if hourly) HOW TO APPLY Please share: - Examples of past Drupal 10 modules involving third-party JS/chat integrations - Your estimated timeline and cost - Any questions about our current site setup
$50.00
Fixed-price- ExpertExperience Level
- Remote Job
- One-time projectProject Type
Skills and Expertise
Activity on this job
- Proposals:5 to 10
- Last viewed by client:yesterday
- Hires:1
- Interviewing:0
- Invites sent:0
- Unanswered invites:0
About the client
- United StatesHouston2:42 PM
- $245K total spent75 hires, 14 active
- 5,500 hours
Explore similar jobs on Upwork
How it works
Create your free profileHighlight your skills and experience, show your portfolio, and set your ideal pay rate.
Work the way you wantApply for jobs, create easy-to-by projects, or access exclusive opportunities that come to you.
Get paid securelyFrom contract to payment, we help you work safely and get paid securely.
About Upwork
- 4.9/5(Average rating of clients by professionals)
- G2 2021#1 freelance platform
- 49,000+Signed contract every week
- $2.3BFreelancers earned on Upwork in 2020
Find the best freelance jobs
Growing your career is as easy as creating a free profile and finding work like this that fits your skills.
Trusted by