Misago is fully featured modern forum application that is fast, scalable and responsive.
Deploy this app to Linode with a free $100 credit!
Development Status: 🍌 Bananas 🍌
Misago aims to be complete, featured and modern forum solution that has no fear to say 'NO' to common and outdated opinions about how forum software should be made and what it should do.
Misago implements all features considered "must have" on live internet forum:
Even more features will follow in future releases:
Preferred way to run Misago development instances on your machine is with Docker, which makes it easy to spin up arbitrary number of instances running different code with separate databases and dependencies besides each other.
To start, clone the repository and run ./dev init
command in your terminal. This will build necessary docker containers, install python dependencies and initialize the database. After command does its magic, you will be able to start development server using the docker compose up
command.
After development server starts, visit the http://127.0.0.1:8000/
in your browser to see your Misago installation.
Admin Control Panel is available under the http://127.0.0.1:8000/admincp/
address. To log in to it use Admin
username and password
password.
The ./dev
utility implements other features besides the init
. Run it without any arguments to get the list of available actions.
dev
You may skip ./dev init
and setup dev instance manually, running those commands:
docker compose build
: builds docker containersdocker compose run --rm misago python manage.py migrate
: runs migrationsdocker compose run --rm misago python manage.py createsuperuser
: creates admin userdocker compose up
: starts dev serverWith exception of Admin Panel, Misago frontend relies heavily on React.js components backed by Django API. This application uses webpack for building.
Currently Misago defines following taks:
npm run build
: does production build of Misago's assets, concating and minifying javascripts, css and images, as well as moving them to misago/static directory.npm run start
: does quick build for assets (concat assets into single files, compile less, deploy to misago/static but don't minify/optimize) as well as runs re-build when less/js changes.npm run prettier
: formats code with prettier.npm run eslint
: lints code with eslint.To start work on custom frontend for Misago, fork and install it locally to have development forum setup. You can now develop custom theme by modifying assets in frontend
directory, however special care should be taken when changing source javascripts.
Misago defines template that allows you to include custom html and js code before Misago's JavaScript app is ran, named scripts.html
.
If you have found bug, please report it on issue tracker.
For feature or support requests as well as general feedback please use official forum instead. Your feedback means much to the project so please do share your thoughts!
There's also Gitter for those looking for instant-messaging approach for discussing Misago development.
If you have corrected spelling, wrote new tests or fixed a bug, feel free to open pull request.
Many issues are open for takers. If you've found one you feel you could take care of, please announce your intent in issue discussion before you start working. That way situations when more than one person works on solving same issue can be avoided.
Rafał Pitoń and ❤️ contributors.
English sentences used within misago.faker.phrases
were extracted from National Aeronautics and Space Administration Solar System Exploration Portal and are not copyrighted as per Media and content usage guidelines.
Misago - Copyright © 2023 Rafał Pitoń This program comes with ABSOLUTELY NO WARRANTY.
This is free software and you are welcome to modify and redistribute it under the conditions described in the license. For the complete license, refer to LICENSE.rst
Please login to review this project.
No reviews for this project yet.
Comments (0)
Please login to join the discussion on this project.