
With all the commits below, we resolve all outstanding typing issues in the repo, and CI jobs run green. * fix: Convert DashboardPage and DashboardWidget to TypeScript * fix: fix type errors in package manager ext * fix: Convert Post component to TypeScript * fix: avatar typings should accept null user * fix: convert Notification component to TypeScript * fix: properly use `typeof` in ForumApplication * feat: make Notification content attr generic * chore: format Notification component * fix: Convert DiscussionRenamedNotification to TypeScript * fix(pusher) move shims to a location where they get applied * fix(pusher): fix some typing errors * fix(akismet): fix some typing issues * chore: update core dist typings * chore(pusher): format * fix: anchorScroll should accept string selectors * fix: more accurately represent ApiQueryParamsPlural * fix: convert PostStreamState to TypeScript * chore(core): rebuild typings * feat: allow extending app.routes * fix: more flexible typings for highlight.ts * fix: use primitive `number` type for Discussion typings * fix: convert DiscussionListItem to TypeScript * chore: rebuild core typings * fix: final pusher type fixes * feat: start tags TypeScript conversion * fix: require-dev tags in pusher for CI TypeScript purposes. * chore(core): format * chore(tags): build dist typings * feat(pusher): use dist types from tags. * feat: convert flags to TypeScript * chore(flags): generate dist typings * fix(akismet): last type errors * chore: update .yarn-integrity * chore: partially run flarum-cli audit infra --fix The tsconfig changes from that command are ignored, since we don't yet support "replacable sections" that would let us add custom config. * chore: use type imports * fix: broader gitattributes * chore: run flarum-cli audit infra --monorepo --fix * feat: make `app.data` typings extensible * chore(core): format * chore: boost tags TypeScript coverage * fix(tags): further increase type coverage.
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.
Installation
This repository contains Flarum's core code. If you want to set up a forum, visit the Flarum skeleton repository. For support, refer to the documentation, and ask questions on Flarum Discuss (our community forum) or Discord server.
Contributing
Thank you for considering contributing to Flarum! Please read the Contributing guide to learn how you can help.
Security Vulnerabilities
If you discover a security vulnerability within Flarum, please send an e-mail to security@flarum.org. All security vulnerabilities will be promptly addressed. More details can be found in our security policy.
License
Flarum is open-source software licensed under the MIT License.