Coder Social home page Coder Social logo

toffyui / coderdojo.jp Goto Github PK

View Code? Open in Web Editor NEW

This project forked from coderdojo-japan/coderdojo.jp

0.0 1.0 0.0 763.01 MB

☯️ CoderDojo Japan (@coderdojo-japan) official website developed by Ruby on Rails with @YassLab team. 💎

Home Page: https://coderdojo.jp

License: MIT License

Ruby 39.95% JavaScript 23.23% CSS 0.19% HTML 16.76% CoffeeScript 0.20% Dockerfile 0.16% Shell 0.13% SCSS 4.85% Haml 14.53%

coderdojo.jp's Introduction

カバー画像

CoderDojo Japan

Build Status

一般社団法人 CoderDojo Japan の公式サイトです。Ruby on Rails で実装されています。

開発に参加するには?

coderdojo.jp の開発には以下のいずれかの方法で参加できます。Dojo 情報の修正やドキュメントの追加・執筆であれば、ブラウザだけで参加できます。

  1. Dojo 情報やドキュメントなどの修正 (» 詳細)
    • 必要なもの: ブラウザ + GitHub アカウント
  2. CoderDojo Kata の執筆・編集 (» 詳細)
    • 必要なもの: ブラウザ + coderdojo.jp アカウント
  3. 新機能の開発やデザインの改善 (» 詳細)
    • 必要なもの: 各種開発環境のセットアップ (開発者向け)

新機能の開発やデザインの改善には開発環境が必要ですが、ちょっとした文言の追記・修正であればブラウザだけで参加できるようになっているのが特徴です ✨📝💨

それぞれの参加方法は次のとおりです。


1. Dojo 情報の更新

Dojo 情報は次の手順で簡単に更新できます。

  1. db/dojos.yaml を開く
  2. 画面右にある ✎ アイコン (Fork this project and edit this file) をクリックする
  3. 気になる箇所を修正し、修正内容にタイトルと説明文を付け、Propose file change をクリックする
  4. 修正内容を確認し、問題なければ Create pull request をクリックする
    • 画像を追加したい場合は Pull Request のコメント欄に添付して頂けると助かります 😌 (対応例)

以上で完了です。提案された修正はメンテナーによってチェックされ、問題なければ提案された内容が反映されます。もし問題があってもメンテナー側で気付いて修正できるので、まずはお気軽に提案してみてください 😉

https://coderdojo.jp/docs にあるドキュメントの編集方法も同様です。db/docsディレクトリをブラウザで開き、修正したいファイルをクリックして、修正内容を提案してください。同ディレクトページの右上にある Create new file ボタンをクリックすると、新しいドキュメントの追記を提案することもできます。


2. Kata 情報の更新

Kata 情報も、Dojo 情報と同様の方法で更新できます。

  1. kata.html.erb を開く
  2. 画面右にある ✎ アイコン (Fork this project and edit this file) をクリックする
  3. 気になる箇所を修正し、修正内容にタイトルと説明文を付け、Propose file change をクリックする
  4. 修正内容を確認し、問題なければ Create pull request をクリックする (対応例)

以上で完了です。提案された修正はメンテナーによってチェックされ、問題なければ提案された内容が反映されます。もし問題があってもメンテナー側で気付いて修正できるので、まずはお気軽に提案してみてください 😉


3. 新機能の開発やデザインの改善

本サイトでは以下の技術が使われているので、それぞれのツールをセットアップします。

セットアップ方法の方法は次の通りです。

  1. 本リポジトリを fork 後、clone します
  2. ターミナルから $ bin/setup を実行します
  3. $ rails server でローカルサーバーを立ち上げます
  4. ブラウザから localhost:3000 にアクセスします
  5. coderdojo.jp と同様のサイトが表示できれば完了です

Docker を利用したセットアップ方法

上記の他、Docker を使ったセットアップ方法もあります。Docker をインストールし、下記の手順でセットアップしてください 🛠💨

  1. 本リポジトリを fork 後、clone します
  2. .env.sample をコピーして .env にリネームします
  3. ターミナルから $ docker-compose up を実行します
  4. ターミナルから $ docker-compose exec rails bin/setup を実行します
  5. ブラウザから localhost:3000 にアクセスします
  6. coderdojo.jp と同様のサイトが表示できれば完了です

CI/Deploy 構成

coderdojo.jp は現在、次の構成でテスト・デプロイされています。

各コミットが push される度に CI が動きます。本家ブランチにコミットされ、CI が pass すると、Heroku 側でデプロイ前/デプロイ後の各種スクリプトが実行されます

GitHub Actions に deploy workflow を入れることもできましたが、次の2つの目的から現在は分離しています。

  1. CI フローと Deploy フローの責務を分離し、本番環境のログの機密性を高める
    • 例: デプロイ関連のログは Heroku Activity Logs に集約させ、誰でもアクセスできる状態にしない
  2. Heroku Release Phase を使い、本番環境の安定性を高める
    • 例: Heroku デプロイ後に実行するスクリプトが失敗したとき、デプロイ自体がロールバックするようにし、本番環境が落ちる可能性を小さくする

Development with Scrivito

(:warning: NOTE: Scrivito チームと相談し、今後別の仕組みに置き換わる予定です)

Some pages require Scrivito, Professional Cloud-Based Rails CMS, such as:

  • /kata
  • /news/* (Outdated)
  • /sotechsha/*

CMS enables wider people to contribute to editing contents, but on the other hand, this requires Scrivito API Keys for engineers to join developing Scrivito-used pages like above.

We use SCRIVITO_TENANT and SCRIVITO_API_KEY keys in production, but they are not required in development. If you find any problem that needs them report it to GitHub Issues.


4. 他、開発に関する資料

開発に関する資料は /docs や下記サイトにまとめてあります (最新順)。必要に応じて適宜ご参照ください。

API (開発中)

現在提供中の API です。今後仕様が変更される可能性もあるため、本番環境で利用したい場合は [email protected] までご連絡ください! 📮

Development History & Contributors


5. License

This web application is developed with many other brilliant works!
Check out the followings if you are interested in. 😉

About Scrivito

Although Scrivito gem is publishd under LGPL-3.0, the author allows us to put MIT license. 😆✨

Sorry for the late reply, I wanted to confer with our team.
There is no conflict in the licenses and you are welcome to use the MIT license.

So, this application can be used and modified under the MIT License! 🆗

About Libraries and Icons

The libraries like RubyGems used in this web application have their own licenses. Say, this website uses Bootstrap, created by Twitter licensed under the MIT License.

Also this website uses icons created by Font Awesome, licensed under SIL OFL 1.1, and Twemoji, created by Twitter, licensed under the MIT License.

Thanks for their great works to make this app published! 💖

About Texts in Kata

The texts in Kata page are published under CC BY-NC-SA 4.0 license. But the texts do NOT include images, slides, and external websites. Please make sure to check their licenses and/or contact its owner before using them.

About Logos and Photos

The images, such as logos and photos of each dojo, are NOT published under the following License. Contact its owner, like the maintainer of linked external website, before using them. 😌

About Source Codes

The source codes, such as HTML/CSS/JavaScript and Ruby codes not declared before, are published under The MIT License. Feel free to refer, copy, or share them. And contact [email protected] if you find something unclear.

Copyright © 2012-2022 CoderDojo Japan Association

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

coderdojo.jp's People

Contributors

yasulab avatar dependabot-preview[bot] avatar nalabjp avatar chicaco avatar yuppymam avatar nanophate avatar anatofuz avatar rakuda-san-desu avatar tomoko523 avatar yuki384 avatar togazo avatar shishi avatar showw avatar kimihito avatar odlovesq avatar naopontan avatar kawahara avatar ogom avatar zephiransas avatar katzueno avatar ippey avatar mrsy avatar leon-joel avatar imgbotapp avatar yoshiaki-takahashi-28 avatar hirotakayokokawa avatar mkt-tokoi avatar murosaki avatar mitsurupj avatar madere-tuchiya avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.