phxBB is a re-imagining of classic message board software such as phpBB and vBulletin. It uses Phoenix LiveView to establish a persistent WebSocket connection with each user, providing real-time updates, navigation, and interaction without any full page reloads after the user is logged in.
- Real-time content updates via
Phoenix.PubSub - Upload your own image for a user avatar via AWS S3
- User & administrator authentication
- Email verification via
Swoosh+Mailjet - Live form validations
- All site navigation (minus login) done via LiveView patching - no page reloads!
- Markdown parsing in posts with
Earmark+PhoenixHtmlSanitizer - See who's online with
Phoenix.Presence
- Topic listing now distinguishes between read and unread topics
See CHANGELOG.md for the full list of changes
You can try a demo of phxBB here! Note that you must register and login before making any new posts.
To start a local phxBB server:
- Ensure that your system has Phoenix and its dependencies installed
- Install app dependencies with
mix deps.get - Create and migrate your database with
mix ecto.setup - Install Node.js dependencies with
npm installinside theassetsdirectory - Set environment variables
AWS_REGION,AWS_ACCESS_KEY_ID,AWS_SECRET_ACCESS_KEY,MAILJET_API_KEY, andMAILJET_SECRET_KEY - Start Phoenix endpoint with
mix phx.server
Now you can visit localhost:4000/forum from your browser.
Ready to run in production? Check out the Phoenix deployment guides.