akf-forum/README.md

2.9 KiB

akf-forum

A Node.js based forum software.

Installation

  • Clone or download this repo.
  • Run npm i to install dependencies.
  • Enter your database credentials in .env.
  • Run npm start for run it.
  • Go /setup page for setup your forum.

Extra (If you are not use setup page)

Run node util/reset to reset the database for duplicate key errors, and run node util/admin for give admin perms to first member. Edit config.json for default theme color (black or white) of users, and forum name, meta description, character limits, discord auth enabler, global ratelimit.

How to install theme:

  • Copy your theme to public/themes folder.

DISCORD AUTH:

"discord_auth": "your_app_id" in config.json. Add your app secret to .env as DISCORD_SECRET. Create a redirect url in discord developer portal: https://forum_url.com/auth/discord

EMAIL AUTH:

You can configure it. Just edit config.json and .env files. "email_auth": true, "default_user_state": "APPROVAL" in config.json. Add your email credentials to .env as EMAIL_USER and EMAIL_PASS. Add your email domain to .env as EMAIL_SERVICE.

API

Akf-forum has got an API for AJAX (fetch), other clients etc. And, you can learn about API in APIDOCS.md.

And you can use offical API wrapper.

Credits

  • Akif9748 - Project mainteiner, main developer, made old frontend
  • Tokmak - Made new frontend
  • Camroku - Made old stylesheets

Screenshot

Thread Page w/Black Theme

black-theme

Threads Page w/Default Theme

light-theme

Mobile view

TO-DO list

  • Profile Message or DM
  • mod role, permissions
  • upload other photos, model for it
  • change password.
  • add approval threads page.
  • Add a feature list to README.md
  • delete admin???
  • change category name
  • _id
  • add support for transition around gravatar
  • forum setup page rewrite and directly open a router

front-end

  • add a css file for CodeMirror in threads / send message ok
  • old contents / titles add to forum interface
  • categories page is need a update, thread count in category (?)
  • add ban button to user profile
  • who liked a message
  • give admin button, not is admin
  • edit user ++
  • rewrite main page, list new messages

Major Version History

  • V4: Caching
  • V3: New Theme
  • V2: Backend fix, mongoose is fixed. Really big fix.
  • V1: Mongoose added.
  • V0: Birth with quick.db