GitHubじゃ!Pythonじゃ!

GitHubからPython関係の優良リポジトリを探したかったのじゃー、でも英語は出来ないから日本語で読むのじゃー、英語社会世知辛いのじゃー

rafalp

Misago – Misagoは、DjangoとReact.js によって提供される、PythonとES6で書かれた完全機能のフォーラムアプリケーション

投稿日:

Misagoは、DjangoとReact.js http://misago-project.org によって提供される、PythonとES6で書かれた完全機能のフォーラムアプリケーションです

ミサゴ

開発状況:マスターブランチで大きな変化が起こり、作業コードの最新リリースを使用します。

ミサゴは、フォーラムソフトウェアの作り方とそれをどうするべきかについての共通意見と時代遅れの意見に「いいえ」と言う恐れのない、完全で機能的で現代的なフォーラムソリューションを目指しています。

スクリーンショット

生産用途

現時点では、Misagoはライブインターネットフォーラムで「必須」とみなされるすべての機能を実装しています。

  • ユーザーは、アカウントの登録、アバターの設定、オプションの変更、プロフィールの編集を行うことができます。 彼らは忘れたパスワードをリセットするオプションがあります。
  • サイト管理者は、電子メールによるアクティベーションリンクを介して電子メールアドレスの有効性を確認したり、ユーザーアカウントの有効化を管理者の操作に制限するようユーザーに要求することがあります。 スパム登録に対抗するために、カスタムQ&Aチャレンジ、ReCAPTCHA、ストップフォーラムスパム、IPのブラックリストを使用できます。 設定のPletoraは、ユーザー名の長さやアバターの制限などのユーザーアカウントの動作を制御するために使用できます。
  • 無制限の数と深さのサブカテゴリとともにカテゴリを作成します。
  • GitHub風味のマークダウン、BBCodeサブセット、またはその両方を使用してメッセージを作成します。
  • プレゼンス機能は、他のユーザーがオンライン、オフライン、または禁止されていることをサイトメンバーに知らせるものです。 個々のユーザーは、非管理者からの活動を非表示にする設定をしています。
  • 管理者が承認したモデレーターがユーザーの投稿したコンテンツを編集、移動、非表示、承認、削除、または閉じることを可能にする完全なモデレーションツールセット。 これには、ユーザーアカウントまたはアバターを削除またはブロックするオプションも含まれます。
  • Banシステムでは、既存のユーザーを禁止したり、特定のユーザー名、電子メール、またはIPアドレスを登録アカウントから禁止することができます。
  • 許可システムを使用すると、ユーザが自分のランク、ロール、カテゴリに基づいてどの機能を利用できるかを制御できます。
  • ユーザーが新しい投稿でスレッドを見つけられるようにするだけでなく、司会者が承認されていない返答や非司会者が承認済みの投稿を見つけさせるようにする正確な読取り追跡機能を投稿します。
  • プライベートスレッド機能を使用すると、ユーザーは自分と自分が招待したスレッドだけを表示できます。
  • Pythonベースのプロファイルフィールドフレームワークを使用して、サイト所有者は、カスタム要件、表示または検証ロジックのための強力なカスタマイズオプションをユーザーに入力するためのカスタムフィールドを定義できます。
  • 豊富な投票システムにより、公的および民間の投票者、一人または複数の選択肢、投票の変更を許可する投票、または限られた期間の投票を制限する投票が可能になります。
  • ポスト添付ファイルは、サムネイルとgifのアニメーションの削除を完了します。
  • 質問のスレッドをベストアンサーとしてマークし、基本的なQ&A機能をもたらします。
  • 投稿の編集ログを使用すると、ユーザーメッセージの過去の閲覧方法や元に戻す機能が悪意のあるユーザーから投稿内容を空にしてしまうのを防ぐことができます。
  • ユーザーとカテゴリの管理キューで、コミュニティの他のメンバーに表示される前にコンテンツを管理できます。
  • ブートストラップを介して開発されたカスタムテーマ。
  • 必要に応じて、ユーザーが自分のアカウントを削除できるようにします。
  • アカウントの削除時にユーザーデータのアノニケーションを行います。

将来のリリースではさらに多くの機能が追加されます。

  • 成果と賞のシステム。
  • ユーザーが不快なコンテンツを報告するためのコンテンツレポート。
  • フォーラム全体のJSルーティングにより、ナビゲーション時間がさらに短縮されます。
  • 靴下の人形やボットネットを見つけるためのモデレータのIP検索。
  • 懸念されるコンテンツやイベントをユーザーに通知するための通知。
  • Facebook / Google / Github / Steam / etc / ectでサインインしてください。
  • Misagoを他のアプリの認証プロバイダとして利用しようと考えている人向けのOAuth2サーバ
  • 違反や犯罪の履歴を簡単に追跡するための警告システム。
  • WYSIWYMコンテンツエディタを使用すると、より簡単なポストフォーマットが可能です。
  • ポストリンク、好きな人、作者、スレッドの重要度に基づいたフォーラム検索結果のランキングシステム。
  • 好きな場所に反応を投稿する

…もっと!

Misagoを使用してライブフォーラムを開催する場合は、絶対に招待されていますが、ミサゴは深刻なバグや問題を含む比較的未熟なソフトウェアであり、不具合や欠落は解決に時間がかかるかもしれません最善の努力。

開発

Misagoサイトをローカルで起動するには、まずDockerがインストールされていることを確認してください。

次に、マシン上のリポジトリをクローンし、次のコマンドを実行します。

docker-compose build
docker-compose run --rm misago initdev
docker-compose up

これらのコマンドは必要な依存関係をインストールし、開発に使用することができる新しいMisagoプロジェクトdevprojectを作成し、Djangoデベロッパーサーバーを起動して、ブラウザーで127.0.0.1:8000にアクセスしてフォーラムのインデックスを表示できます。 管理者のユーザー名とパスワードのパスワードを使用してスーパーユーザーアカウントでサインインできるようになりました。

管理者用コントロールパネルは、 127.0.0.1:8000/admincp/ urlの下にあります。

manage.pyはDockerの実行コマンドで利用できます:

docker-compose run --rm misago python manage.py

Dockerを使用すると、テストスイートを実行することもできます。

docker-compose run --rm misago python runtests.py

必要なくなったDockerセットアップを破棄したい場合は、次のコマンドを実行します。

docker-compose down

フロントエンド

Admin Panelを除いて、Misagoのフロントエンドは、Django APIに基づいたReact.jsコンポーネントに大きく依存しています。 このアプリケーションは、カスタムGulp.jsベースの開発用ツールキットに依存しています。 現在、Misagoのgulpfile.jsは以下のタスクを定義しています:

  • ビルドは、ミサゴの資産の生産ビルドを行い、javascripts、cssおよびimagesを連結して縮小し、ミサゴ/静的ディレクトリに移動させます
  • watchは、アセットのための迅速なビルドを行います(アセットを1つのファイルにまとめ、コンパイルし、ミサゴ/静的に展開しますが、縮小/最適化しません)。
  • watchstyleは少ないファイルをすばやくビルドし、変更したときに再ビルドします
  • テストはMocha.jsがMisagoのjavascript用のテストスイートを実行する

Misagoのカスタムフロントエンドの作業を開始するには、開発フォーラムをセットアップするためにローカルでフォークしてインストールします。 frontendディレクトリのアセットを変更することでカスタムテーマを開発できるようになりましたが、ソースのjavascriptを変更する場合は特に注意が必要です。

MisagoのJavaScriptアプリケーションが実行される前に、 scripts.htmlという名前のカスタムhtmlとjsコードを含めることができるテンプレートが定義されています

バグレポート、機能、フィードバック

バグが見つかった場合は、 問題追跡ツールに報告してください。

機能やサポートのリクエストや一般的なフィードバックは、代わりに公式フォーラムをご利用ください。 あなたのフィードバックはプロジェクトの多くを意味するので、あなたの考えを共有してください!

Misagoの開発を議論するためのintant-messagingアプローチを探している人にはGitterもあります。

貢献する

スペルを訂正したり、新しいテストを書いたり、バグを修正した場合は、自由にプルリクエストを開いてください。

多くの問題はテイクのために開かれています。 あなたが世話できると感じた人が見つかった場合は、作業を開始する前に問題のディスカッションにあなたの意思をお知らせください。 そうすれば、複数の人が同じ問題を解決するときの状況を避けることができます。

著者

ラファウ・ピトゥン

misago.faker.phrases内で使用されている英語の文章は、 米国航空宇宙局(NASA)の太陽系探査ポータルから抽出されたもので、 メディアおよびコンテンツの使用ガイドラインに基づいて著作権が保護されていません。

著作権とライセンス

Misago – Copyright© 2018RafałPitońこのプログラムは、絶対に保証はありません。

これはフリーソフトウェアであり、ライセンスに記載されている条件の下で変更して再配布することを歓迎します。 完全なライセンスについては、LICENSE.rstを参照してください。







-rafalp
-, , , , ,

執筆者: