Simple forum software for building great communities.

Overview

Build Status Total Downloads Latest Stable Version License

About Flarum

Flarum is a delightfully simple discussion platform for your website. It's fast and easy to use, with all the features you need to run a successful community. It is designed to be:

  • Fast and simple. No clutter, no bloat, no complex dependencies. Flarum is built with PHP so it’s quick and easy to deploy. The interface is powered by Mithril, a performant JavaScript framework with a tiny footprint.

  • Beautiful and responsive. This is forum software for humans. Flarum is carefully designed to be consistent and intuitive across platforms, out-of-the-box.

  • Powerful and extensible. Customize, extend, and integrate Flarum to suit your community. Flarum’s architecture is amazingly flexible, with a powerful Extension API.

screenshot

Installation

Read the Installation guide to get started. For support, refer to the documentation, and ask questions on the community forum or Discord chat.

Contributing

Thank you for considering contributing to Flarum! Please read the Contributing guide to learn how you can help.

This repository only holds the Flarum skeleton application. Most development happens in flarum/core.

Security Vulnerabilities

If you discover a security vulnerability within Flarum, please follow our security policy so we can address it promptly.

License

Flarum is open-source software licensed under the MIT License.

Comments
  • [proof of concept] run composer install without the need of ssh access

    [proof of concept] run composer install without the need of ssh access

    process:

    • checks for vendor/autoload.php, if it does not exist:
    • if scripts/composer.phar does not exist, will try to download the latest if allow_url_fopen is true
    • will extract the composer.phar to tmp and require the tmp/composer/vendor/autoload.php to run composer install with some arguments

    todo:

    • remove tmp directory
    • refresh page once composer is finished
    • test exact memory limit

    drawbacks:

    • added in index.php because no vendor folder exists and dependencies on classes will fail, so we need to do the process of extract composer.phar
    • needs a higher memory limit; code will set this to -1 (unlimited for now, might need testing)
    • needs composer.phar in scripts or the ability to download it
    • every action needs write access, assumed to be allowed for php process
    • a manual refresh of the page is needed to continue installation after composer did its job
    • installation of/by composer takes a very long time, the user has no feedback at all

    Adopted code can be added to flarum core to enable auto updating :smile:

    opened by luceos 12
  • added optimized htaccess rules

    added optimized htaccess rules

    Helps with https://github.com/flarum/core/issues/514

    This is an optimized htaccess from work. A.o. it will also provide a A+ rating with SSLLabs if SSL is being used.

    opened by luceos 8
  • Add IIS config for easier windows setup

    Add IIS config for easier windows setup

    Fixes https://github.com/flarum/core/issues/2286

    Add a web.config file to the public directory would do the same thing for IIS that .htaccess does for Apache in regards to automatically setting up the rewrite rules. I believe that this would drastically reduce the number of users having a hard time with IIS.

    (HUGE thanks to https://discuss.flarum.org/d/24573-newbie-installation-guide-windows-w-plesk for the initial work on this, all credit goes to AntVincent, @katosdev and phenomlabs on the forums)

    opened by tankerkiller125 6
  • nginx rule to prevent access to sensitive files

    nginx rule to prevent access to sensitive files

    Add a suggested rule that does the same as the suggested rule in .htaccess.

    This is the rule I've been using in production on my sites that are not using a public folder.

    We should also update the documentation to suggest un-commentating those lines, just like we do for Apache.

    opened by clarkwinkelmann 5
  • kom/update-readme-file Fix wrong readme repo names

    kom/update-readme-file Fix wrong readme repo names

    Fix wrong repository names in readme file and removed travis.

    Necessity

    • [ ] Has the problem that is being solved here been clearly explained?
    • [ ] If applicable, have various options for solving this problem been considered?
    • [ ] For core PRs, does this need to be in core, or could it be in an extension?
    • [ ] Are we willing to maintain this for years / potentially forever?

    Confirmed

    • [ ] Frontend changes: tested on a local Flarum installation.
    • [ ] Backend changes: tests are green (run composer test).
    • [ ] Core developer confirmed locally this works as intended.
    • [ ] Tests have been added, or are not appropriate here.

    Required changes:

    • [ ] Related documentation PR: (Remove if irrelevant)
    • [ ] Related core extension PRs: (Remove if irrelevant)
    opened by komandar 3
  • Adding support for apache 2.4

    Adding support for apache 2.4

    Using mod_access_compat is depricated and may cause problems on some systems. It's replaced with mod_authz_host

    http://httpd.apache.org/docs/2.4/mod/mod_access_compat.html "The directives provided by mod_access_compat have been deprecated by the new authz refactoring. Please see mod_authz_host."

    opened by terokorp 3
  • docs: link logo at the top with the official website

    docs: link logo at the top with the official website

    Fixes [N/A]

    Changes proposed in this pull request: When I was reading README.md, I clicked the logo and I expected it to go to the official website https://flarum.org/ but it didn't. So, the image is being linked to the official website in this commit.

    Reviewers should focus on: N/A

    Screenshot N/A

    Necessity

    • [x] N/A

    Confirmed

    • [x] N/A

    Required changes:

    • [x] N/A
    opened by soobinrho 2
  • Update readme.md

    Update readme.md

    Hi, I'm making updates for Open Collective. Either you or a supporter signed this repo up for Open Collective. This pull request adds backers and sponsors from your Open Collective https://opencollective.com/flarum❤️

    It adds two badges at the top to show the latest number of backers and sponsors. It also adds placeholders so that the avatar/logo of new backers/sponsors can automatically be shown without having to update your README.md. more info. See how it looks on this repo.

    You can also add a postinstall script to let people know after npm|yarn install that you are welcoming donations (optional). More info You can also add a "Donate" button to your website and automatically show your backers and sponsors there with our widgets. Have a look here: https://opencollective.com/widgets

    P.S: As with any pull request, feel free to comment or suggest changes. The only thing "required" are the placeholders on the README because we believe it's important to acknowledge the people in your community that are contributing (financially or with code!).

    Thank you for your great contribution to the open source community. You are awesome! 🙌 And welcome to the open collective community! 😊

    Come chat with us in the #opensource channel on https://slack.opencollective.com - great place to ask questions and share best practices with other open source sustainers!

    opened by monkeywithacupcake 2
  • Fixed Node JS install

    Fixed Node JS install

    Restored original Vaprobash's script for Node JS install.

    The current script run this: https://github.com/franzliedke/Vaprobash/blob/patch-1/scripts/nodejs.sh#L48 but the response of "https://nodejs.org" request is:

    <html>
    <head><title>302 Found</title></head>
    <body bgcolor="white">
    <center><h1>302 Found</h1></center>
    <hr><center>nginx</center>
    </body>
    </html>
    
    opened by billmn 2
Releases(v1.6.0)
  • v1.6.0(Nov 15, 2022)

  • v1.5.0(Sep 13, 2022)

    Changed

    • Update copyright [#85]
    • Link logo to official website [#84]

    Full changelog: https://github.com/flarum/framework/blob/main/CHANGELOG.md#v150

    Source code(tar.gz)
    Source code(zip)
  • v1.4.0(Jul 13, 2022)

  • v1.3.0(May 16, 2022)

  • v1.2.0(Jan 20, 2022)

  • v1.0.0(May 27, 2021)

  • v0.1.0-beta.16(Mar 15, 2021)

    0.1.0-beta.16

    Changed

    • Remove list of developers and refer to https://flarum.org/team (https://github.com/flarum/flarum/pull/71)

    Fixed

    • Missing image on README.md (https://github.com/flarum/flarum/pull/72)
    Source code(tar.gz)
    Source code(zip)
  • v0.1.0-beta.14(Oct 20, 2020)

    Added

    • Nginx rules to prevent access to sensitive files (#65)
    • IIS configuration added (#66)

    Changed

    • Minimum PHP requirement is now 7.2+

    Fixed

    • Logo path in readme didn't resolve correctly (#68)
    • Removed
    • Social auth drivers removed (#67)
    Source code(tar.gz)
    Source code(zip)
  • v0.1.0-beta.13(May 6, 2020)

  • v0.1.0-beta.12(Mar 4, 2020)

  • v0.1.0-beta.11(Nov 28, 2019)

  • v0.1.0-beta.10(Sep 16, 2019)

  • v0.1.0-beta.9(Jul 5, 2019)

  • v0.1.0-beta.8(Nov 29, 2018)

  • v0.1.0-beta.7(Jul 22, 2017)

    Fixed

    • Fix workaround for HTTPoxy vulnerability.
    • Deny access to composer files and git directories in Apache config. (@Luceos)
    • Fixes for Vaprobash environment. (@Strobotti)
    Source code(tar.gz)
    Source code(zip)
  • v0.1.0-beta.6(Oct 19, 2016)

  • v0.1.0-beta.5(Mar 29, 2016)

    Changed

    • Use new extension package names (with flarum-ext- prefix).
    • Update to Vaprobash 1.4.2.
    • Use sensible version constraint for Studio.

    Removed

    • extensions directory and dependency on flarum/composer-installer. Extensions are now installed into the vendor directory like other Composer packages.
    • Unused build.sh script.
    Source code(tar.gz)
    Source code(zip)
  • v0.1.0-beta.4(Nov 25, 2015)

  • v0.1.0-beta.3(Nov 2, 2015)

  • v0.1.0-beta.2(Sep 15, 2015)

    Added

    • Check prerequisites (PHP version, extensions, etc.) before installation (#364)
    • Enforce maximum title and post length through validation (#53, #338)
    • Ctrl+Enter submits posts (#276)
    • Syntax highlighting for code blocks (#248)
    • All links open in new window, receive rel=nofollow attribute (#247)
    • Default build script for extensions (#438)
    • Input validation in installer

    Changed

    • Ask for admin password confirmation in installer (#405)
    • Increased some text contrasts for accessibility (#390)

    Fixed

    • Discussion list did not work with non-empty database prefix (#269, #380)
    • Non-admins could not reset their password (#229)
    • Requests ending with a slash resulted in a 404 (#334)
    • In rare cases, posts did not load correctly (#295)
    • Avatars did not show up when installed in a subfolder (#291)
    • Installer crashed when views directory was not writable (#376)
    • Table prefix could not be set in web installer (#269)
    • Enabling an extension disabled all other extensions (#402)
    • Invalid custom CSS could crash the application (#400)
    • First posts could not be restored or deleted
    • Several design bugs
    • Set cookies to be HTTP-only
    • Tags: Sometimes, tags could not be dragged for reordering in the admin panel (#341)
    • Suspend: Use correct column name in when migrating database
    • Lock: Check for correct permission when displaying lock control
    • Likes: Allow liking permissions to be configured
    Source code(tar.gz)
    Source code(zip)
  • v0.1.0-beta(Aug 27, 2015)

Owner
Flarum
Simple forum software for building great communities.
Flarum
Setting up the a docker + building a simple project on Mac-book using laravel sail

Sailing on mac-book Setting up the a docker + building a simple project on Mac-book with Laravel sail Installing Docker Well, installing docker is the

AmirH.Najafizadeh 3 Jul 31, 2022
A full-stack framework for Laravel that takes the pain out of building dynamic UIs.

A full-stack framework for Laravel that takes the pain out of building dynamic UIs.

Livewire 17.7k Jan 1, 2023
🧙‍♀️ Arcanist takes the pain out of building multi-step form wizards in Laravel.

Installation Arcanist requires PHP 8 and Laravel 8. composer require laravel-arcanist/arcanist Documentation You can find the full documentation here

Arcanist 378 Jan 3, 2023
Laravel Boilerplate provides a very flexible and extensible way of building your custom Laravel applications.

Laravel Boilerplate Project Laravel Boilerplate provides a very flexible and extensible way of building your custom Laravel applications. Table of Con

Labs64 848 Dec 28, 2022
Live Helper Chat - live support for your website. Featuring web and mobile apps, Voice & Video & ScreenShare. Supports Telegram, Twilio (whatsapp), Facebook messenger including building a bot.

Live helper chat It's an open-source powered application, which brings simplicity and usability in one place. With live helper chat you can bring live

Live Helper Chat 1.7k Dec 29, 2022
A collection of tools for rapidly building beautiful TALL stack interfaces, designed for humans.

Filament is a collection of tools for rapidly building beautiful TALL stack interfaces, designed for humans. Packages Admin Panel • Documentation • De

Filament 5.4k Jan 4, 2023
Laravel Responder - a package for building API responses, integrating Fractal into Laravel and Lumen

A Laravel Fractal package for building API responses, giving you the power of Fractal with Laravel's elegancy.

Alexander Tømmerås 776 Dec 25, 2022
You already have your dream house? Sam Building will help you find the perfect home.

SAM BUILDING Setup Fork or clone this repo! git clone github.com/Igorballo/Real-Estate-App.git Installation des dépendances npm install #or yarn insta

null 4 Nov 29, 2022
An open-source Laravel library for building high-quality, accessible applications and administration dashboards.

Arpite An open-source Laravel library for building high-quality, accessible applications and administration dashboards. Built using Inertia.js, React,

Arpite 3 Jul 5, 2022
Ajar anak anak software looka integrate tailwind

About Laravel Laravel is a web application framework with expressive, elegant syntax. We believe development must be an enjoyable and creative experie

Aliff Rosli 2 Dec 21, 2021
Opensource tinyman charts software

This software is live at https://freetinycharts.ovh How-to install: In a linux box with apache,php & mysql, as root: Unpack zip mkdir /scripts/ cp *.p

Pablo Manuel Castelo Vigo 14 Dec 8, 2022
Software para consultas veiculares construído com PHP, Laravel e MySQL

DespCar Um projeto de uso pessoal para um despachante veícular para consulta de carros através da placa Sobre o Projeto Construído Com PHP PHPUnit Lar

Angelo 3 Dec 1, 2021
Validate your input data in a simple way, an easy way and right way. no framework required. For simple or large. project.

wepesi_validation this module will help to do your own input validation from http request POST or GET. INTEGRATION The integration is the simple thing

Boss 4 Dec 17, 2022
Simple user messaging package for Laravel

Laravel Messenger This package will allow you to add a full user messaging system into your Laravel application. Leave some feedback How are you using

Chris Gmyr 2.3k Dec 29, 2022
A simple Content Moderation System for Laravel 5.* that allows you to Approve or Reject resources like posts, comments, users, etc.

Laravel Moderation A simple Moderation System for Laravel 5.* that allows you to Approve or Reject resources like posts, comments, users, etc. Keep yo

Alex Kyriakidis 509 Dec 30, 2022
A Simple GUID creator Laravel Package for PHP

A Simple GUID creator package for PHP. This package is useful for creating globally unique identifiers (GUID). It's under MIT license so it's free for

Sujip Thapa 15 Jun 26, 2021
Livewire Notifier is a simple notifications system with zero dependencies above TALL-stack

Livewire Notifier is a simple notifications system with zero dependencies above TALL-stack (Tailwind CSS, Alpine.JS, Laravel and Livewire).

CodeSPB 18 Jul 27, 2022
A package to easily make use of Simple Icons in your Laravel Blade views.

Blade Simple Icons A package to easily make use of Simple Icons in your Laravel Blade views. For a full list of available icons see the SVG directory.

UB Labs 12 Jan 17, 2022
Laravel SEO - This is a simple and extensible package for improving SEO via meta tags, such as OpenGraph tags.

This is a simple and extensible package for improving SEO via meta tags, such as OpenGraph tags.

ARCHTECH 191 Dec 30, 2022