Skip to content

AllanGallop/Huddle

Repository files navigation

Huddle

License: GPL v3 PHP 8.2+ Laravel 12 Livewire 4 Docker ready Documentation

Huddle

Huddle is a community management platform for organizations that run projects, events, and member programs. It provides a single place to coordinate volunteers, share knowledge, collect form responses, and manage membership.

Features

Projects Status tracking, volunteers, images, comments, quotes, and invoices
Events Scheduling, public/private visibility, and volunteer rosters
Forms Surveys and scored exams with submission review
Wiki Markdown knowledge base with version history
Members Searchable directory with membership and tags
Mentors Accreditation management and member assignments
Reports Filtered project status reports with PDF export
Admin Users, tags, membership, branding, and bank details

Huddle also includes a community digest, privacy & GDPR tools, two-factor authentication, and a web-based installer.

Project detail page Event detail page

See the features guide for a full walkthrough with screenshots.

Quick start (Docker)

The fastest way to run Huddle locally is with Docker. A web-based setup wizard handles database configuration and admin account creation.

Fresh install (resets .env and database volume on each start — useful for testing the installer):

# Linux / macOS
./scripts/fresh-install.sh

# Windows (PowerShell)
.\scripts\fresh-install.ps1

Or manually:

docker compose -f DockerCompose.yaml up --build

Open http://localhost:8000. When prompted for a database host, use db.

Day-to-day development (keeps your .env and database between restarts):

docker compose -f DockerCompose.dev.yaml up --build

See the Docker install guide for details.

Hosting without Docker

Huddle can be deployed on any server with PHP 8.2+, a web server (Apache recommended), and SQLite or MySQL/MariaDB. The built-in installer at /setup.php walks through requirements, database setup, and admin account creation.

See the hosting guide.

Local development (without Docker)

For active development on the host machine:

cd huddle
composer install
cp .env.example .env
php artisan key:generate
touch database/database.sqlite   # if using SQLite
php artisan migrate
npm install
npm run build
composer run dev                 # PHP server, queue worker, and Vite

Flux UI is a licensed dependency. Configure Composer authentication before composer install:

composer config http-basic.composer.fluxui.dev <username> <license-key>

See the development guide for the full workflow, testing, and troubleshooting.

Documentation

Guide Description
Features guide Platform overview, permissions, and feature walkthrough
Deployment build GitHub Actions release package and FTP deploy (Ionos, etc.)
Docker install guide Running Huddle in Docker, fresh install vs dev mode
Hosting guide Deploying on Apache/PHP with the web installer
Development guide Local setup, testing, linting, and common tasks

Requirements

Component Version
PHP 8.2+ (8.4 recommended)
Database SQLite, MySQL, or MariaDB
Node.js 22+ (for building frontend assets)
Composer 2.x

PHP extensions: pdo, mbstring, openssl, tokenizer, xml, ctype, json, fileinfo, curl, gd, intl

Testing

cd huddle
composer test

This runs Laravel Pint lint checks and the PHPUnit test suite.

License

Huddle is free software licensed under the GNU General Public License v3.0 or later.

Third-party dependencies (including Laravel and Flux UI) are subject to their own licenses.

About

Huddle is a community management platform for organizations that run projects, events, and member programs. It provides a single place to coordinate volunteers, share knowledge, collect form responses, and manage membership.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors