ไธ่ฌ็คพๅฃๆณไบบ CoderDojo Japan ใฎๅ ฌๅผใตใคใใงใใRuby on Rails ใงๅฎ่ฃ ใใใฆใใพใใๆฌใใผใธใงใฏใใใใใใผใธใซๆฒ่ผใใใฆใใ Dojo ๆ ๅ ฑใๆดๆฐใใๆนๆณใใ้็บ็ฐๅขใฎใปใใใขใใๆนๆณใชใฉใใพใจใใฆใใพใใ
CoderDojo ใ็ซใกไธใใๆฟ่ชใใใใใCoderDojo Kata ใซใใๆฏๆดใใญใฐใฉใ ใใๅฉ็จใใใใจใใงใใพใใcoderdojo.jp ใธใฎๆฒ่ผๆนๆณใ่ผใฃใฆใใพใใฎใงใ่ฉณ็ดฐใฏ CoderDojo Kata ใใ็ขบ่ชใใ ใใใ
coderdojo.jp ใฎ้็บใซใฏไปฅไธใฎใใใใใฎๆนๆณใงๅๅ ใงใใพใใDojo ๆ ๅ ฑใฎไฟฎๆญฃใใใญใฅใกใณใใฎ่ฟฝๅ ใปๅท็ญใงใใใฐใใใฉใฆใถใ ใใงๅๅ ใงใใพใใ
- Dojo ๆ
ๅ ฑใๆดๆฐใใๅ ดๅ (ยป ่ฉณ็ดฐใ่ฆใ)
- ๅฟ ่ฆใชใใฎ: ใใฉใฆใถ + GitHub ใขใซใฆใณใ
- CoderDojo Kata ใๆดๆฐใใๅ ดๅ (ยป ่ฉณ็ดฐใ่ฆใ)
- ๅฟ ่ฆใชใใฎ: ใใฉใฆใถ + GitHub ใขใซใฆใณใ
- ๆฐๆฉ่ฝใฎ้็บใใใถใคใณใๆนๅใใๅ ดๅ (ยป ่ฉณ็ดฐใ่ฆใ)
- ๅฟ ่ฆใชใใฎ: Ruby on Rails + PostgreSQL ใชใฉใฎๅ็จฎ้็บ็ฐๅข
ใกใใฃใจใใๆ ๅ ฑๆดๆฐใๆ่จไฟฎๆญฃใงใใใฐใใฉใฆใถใ ใใงๅๅ ใงใใใฎใ็นๅพดใงใใใใใใฎๆ้ ใฏไปฅไธใฎ้ใใงใ โจ๐๐จ
Dojo ๆ ๅ ฑใฏๆฌกใฎๆ้ ใง็ฐกๅใซๆดๆฐใงใใพใใ
- db/dojos.yaml ใ้ใ
- ็ป้ขๅณใซใใ โ ใขใคใณใณ (Fork this project and edit this file) ใใฏใชใใฏใใ
- ๆฐใซใชใ็ฎๆใไฟฎๆญฃใใไฟฎๆญฃๅ ๅฎนใซใฟใคใใซใจ่ชฌๆๆใไปใใPropose file change ใใฏใชใใฏใใ
- ไฟฎๆญฃๅ
ๅฎนใ็ขบ่ชใใๅ้กใชใใใฐ Create pull request ใใฏใชใใฏใใ
- โฏ๏ธ Dojo ใฎใญใด็ปๅใ่ฟฝๅ /ๅคๆดใใใๅ ดๅใฏ Pull Request ใฎใณใกใณใๆฌใซ็ปๅใๆทปไปใใฆ้ ใใใจๅฉใใใพใ ๐ (ๅฏพๅฟไพ1 / ๅฏพๅฟไพ2 / ๅฏพๅฟไพ3)
ไปฅไธใงๅฎไบใงใใๆๆกใใใไฟฎๆญฃใฏใกใณใใใผใซใใฃใฆใใงใใฏใใใๅ้กใชใใใฐๆๆกใใใๅ ๅฎนใๅๆ ใใใพใใใใๅ้กใใใฃใฆใใกใณใใใผๅดใงๆฐไปใใฆไฟฎๆญฃใงใใใฎใงใใพใใฏใๆฐ่ปฝใซๆๆกใใฆใฟใฆใใ ใใ ๐
https://coderdojo.jp/docs ใซใใใใญใฅใกใณใใฎ็ทจ้ๆนๆณใๅๆงใงใใdb/docsใใฃใฌใฏใใชใใใฉใฆใถใง้ใใไฟฎๆญฃใใใใใกใคใซใใฏใชใใฏใใฆใไฟฎๆญฃๅ
ๅฎนใๆๆกใใฆใใ ใใใๅใใฃใฌใฏใใใผใธใฎๅณไธใซใใ Create new file
ใใฟใณใใฏใชใใฏใใใจใๆฐใใใใญใฅใกใณใใฎ่ฟฝ่จใๆๆกใใใใจใใงใใพใใ
Kata ๆ ๅ ฑใใDojo ๆ ๅ ฑใจๅๆงใฎๆนๆณใงๆดๆฐใงใใพใใ
- kata.html.erb ใ้ใ
- ็ป้ขๅณใซใใ โ ใขใคใณใณ (Fork this project and edit this file) ใใฏใชใใฏใใ
- ๆฐใซใชใ็ฎๆใไฟฎๆญฃใใไฟฎๆญฃๅ ๅฎนใซใฟใคใใซใจ่ชฌๆๆใไปใใPropose file change ใใฏใชใใฏใใ
- ไฟฎๆญฃๅ ๅฎนใ็ขบ่ชใใๅ้กใชใใใฐ Create pull request ใใฏใชใใฏใใ (ๅฏพๅฟไพ)
ไปฅไธใงๅฎไบใงใใๆๆกใใใไฟฎๆญฃใฏใกใณใใใผใซใใฃใฆใใงใใฏใใใๅ้กใชใใใฐๆๆกใใใๅ ๅฎนใๅๆ ใใใพใใใใๅ้กใใใฃใฆใใกใณใใใผๅดใงๆฐไปใใฆไฟฎๆญฃใงใใใฎใงใใพใใฏใๆฐ่ปฝใซๆๆกใใฆใฟใฆใใ ใใ ๐
ๆฌใตใคใใงใฏไปฅไธใฎๆ่กใไฝฟใใใฆใใใฎใงใใใใใใฎใใผใซใใปใใใขใใใใพใใ
ใปใใใขใใๆนๆณใฎๆนๆณใฏๆฌกใฎ้ใใงใใ
- ๆฌใชใใธใใชใ fork ๅพใclone ใใพใ
- ใฟใผใใใซใใ
$ bin/setup
ใๅฎ่กใใพใ $ rails server
ใงใญใผใซใซใตใผใใผใ็ซใกไธใใพใ- ใใฉใฆใถใใ localhost:3000 ใซใขใฏใปในใใพใ
- coderdojo.jp ใจๅๆงใฎใตใคใใ่กจ็คบใงใใใฐๅฎไบใงใ
ไธ่จใฎไปใDocker ใไฝฟใฃใใปใใใขใใๆนๆณใใใใพใใDocker ใใคใณในใใผใซใใไธ่จใฎๆ้ ใงใปใใใขใใใใฆใใ ใใ ๐ ๐จ
DoorkeeperใฎใคใใณใใๅๅพใใใใใซใใใกใใงPublic API Access Tokenใ็ๆใใฆใใๅฟ ่ฆใใใใพใใ
- ๆฌใชใใธใใชใ fork ๅพใclone ใใพใ
.env.sample
ใใณใใผใใฆ.env
ใซใชใใผใ ใใพใ.env
ใซใ็ฐๅขๅคๆฐDOORKEEPER_API_TOKEN=<็ๆใใPublic API Access Token>
ใ่ฟฝ่จใใพใ- ใฟใผใใใซใใ
$ docker-compose up
ใๅฎ่กใใพใ - ใฟใผใใใซใใ
$ docker-compose exec rails bin/setup
ใๅฎ่กใใพใ - ใใฉใฆใถใใ localhost:3000 ใซใขใฏใปในใใพใ
- coderdojo.jp ใจๅๆงใฎใตใคใใ่กจ็คบใงใใใฐๅฎไบใงใ
coderdojo.jp ใฏ็พๅจใๆฌกใฎๆงๆใงใในใใปใใใญใคใใใฆใใพใใ
- CI: GitHub Actions
- Deploy: Heroku + Release Phase
- ้ข้ฃPR:
replace travis with github actions and heroku integration
ๅใณใใใใ push ใใใๅบฆใซ CI ใๅใใพใใmain
ใใฉใณใใซๆฐใใใณใใใใ่ฟฝๅ ใใใCI ใ pass ใใใจใHeroku ๅดใงใใใญใคๅ/ใใใญใคๅพใฎๅ็จฎในใฏใชใใใๅฎ่กใใใพใใ
- ใในใ(CI): .github/workflows/test.yml
- ใใใญใคๅ: Bundle, Asset Precomiple, Heroku Buildpack ใชใฉ
- ใใใญใคๅพ: scripts/release.sh, Procfile
GitHub Actions ใซ deploy
workflow ใๅ
ฅใใใใจใใงใใพใใใใๆฌกใฎ๏ผใคใฎ็ฎ็ใใ็พๅจใฏๅ้ขใใฆใใพใใ
- CI ใใญใผใจ Deploy ใใญใผใฎ่ฒฌๅใๅ้ขใใๆฌ็ช็ฐๅขใฎใญใฐใฎๆฉๅฏๆงใ้ซใใ
- ไพ: ใใใญใค้ข้ฃใฎใญใฐใฏ Heroku Activity Logs ใซ้็ดใใใ่ชฐใงใใขใฏใปในใงใใ็ถๆ ใซใใชใ
- Heroku Release Phase ใไฝฟใใๆฌ็ช็ฐๅขใฎๅฎๅฎๆงใ้ซใใ
- ไพ: Heroku ใใใญใคๅพใซๅฎ่กใใในใฏใชใใใๅคฑๆใใใจใใใใใญใค่ชไฝใใญใผใซใใใฏใใใใใซใใๆฌ็ช็ฐๅขใ่ฝใกใๅฏ่ฝๆงใๅฐใใใใ
ๆๆฐ็ใฏ scripts/release.sh ใใใ็ขบ่ชใใใ ใใพใใ
# ใใผใฟใใผในใฎใใคใฐใฌใผใทใงใณ
bundle exec rails db:migrate
# ้็บ็จใใผใฟใฎๆตใ่พผใฟ๏ผseeding๏ผ
bundle exec rails db:seed
# db/dojos.yaml ใฎๅ
ๅฎนใDBใซๅๆ ใใใฟในใฏ
bundle exec rails dojos:update_db_by_yaml
# DBใฎๅ
ๅฎนใ db/dojos.yaml ใซๅๆ ใใใฟในใฏ
bundle exec rails dojos:migrate_adding_id_to_yaml
# ่ฟๆฅ้ๅฌใฎ้ๅ ดใๆดๆฐใใใฟในใฏ
bundle exec rails dojo_event_services:upsert
# ใใใใญใฃในใใDojoCastใใฎใใผใฟใๅๆ ใใใฟในใฏ
bundle exec rails podcasts:upsert
้็บใซ้ขใใ่ณๆใฏ /docs ใไธ่จใตใคใใซใพใจใใฆใใใพใ (ๆๆฐ้ )ใๅฟ ่ฆใซๅฟใใฆ้ฉๅฎใๅ็ งใใ ใใใ
- DojoCast ใ Jekyll ใใ Rails ใซ็งป่กใใพใใ
- ๆฐ่ฆ Dojo ใฎ่ฟฝๅ ๆนๆณ - GitHub
- ๅญใฉใใฎใใใฎใใญใฐใฉใใณใฐ้ๅ ดใCoderDojoใใฎ Ruby/Rails ๆดป็จไบไพ
- CoderDojo ใๆฏใใ Rails CMS ใฎๆดป็จไบไพ - Speaker Deck
- 2020ๅนด coderdojo.jp ้็บใตใใใใ
- 2019ๅนด coderdojo.jp ้็บใใคใฉใคใ
- 2018ๅนด ้็จ็ฎ็ทใง่ฆใ coderdojo.jp ้็บ
- CoderDojo Japan ใฎๅ็จฎๆฉ่ฝใจๅฎ่ฃ ใซใคใใฆใ2017ๅนด็ใ - Qiita
- CoderDojo Japan ใฎใใใฏใจใณใใๅทๆฐใใพใใใ2016ๅนดใ
็พๅจๆไพไธญใฎ API ใฎไธ่ฆงใงใใๅฉ็จไพใฎใใ API ใฏไบๆๆงใๆ่ญใใฆ้็บใใใใใใๆฏ่ผ็ไฝฟใใใใใงใใใใ ใไบๅใชใ็ ดๅฃ็ใชๅคๆดใ่กใใใๅฏ่ฝๆงใใใใใใใใใใใใไบๆฟใใใ ใใใจๅนธใใงใ ๐ง
- Podcast API: https://coderdojo.jp/podcasts.rss
- ๅฉ็จไพ: ๐ป Apple Podcasts - DojoCast (้ข้ฃPR: coderdojo.jp#387)
- Dojo API: https://coderdojo.jp/dojos.json
- ๅฉ็จไพ: ๐ฐ DojoNews - GitHub (้ข้ฃPR: coderdojo.jp#1433)
- Event API: https://coderdojo.jp/events.json
- ๅฉ็จไพ: ๐พ DojoMap - GitHub (้ข้ฃPR: map.coderdojo.jp#10)
- ๅฉ็จไพ: ๐ CoderDojo ใซใฌใณใใผใไฝใฃใฆใฟใ (้ข้ฃPR: coderdojo.jp#1547)
ใชใๆฌใตใคใๅ DB ใฎๅใใผใใซใใใณใใฎใใผใฟ๏ผไธ่ฌๅ ฌ้้จๅใฎใฟ๏ผใฏใไปฅไธใฎใใกใคใซใใใ็ขบ่ชใใใ ใใพใใ
- DB ใใผใใซ:
db/schema.rb
- Dojo ใใผใฟ:
db/dojos.yaml
- Event ใใผใฟ (ใฎๆ
ๅ ฑๅๅพๅ
):
db/dojo_event_services.yaml
- ๐ ๏ผใคใฎ Dojo ใ่คๆฐใฎใคใใณใ็ฎก็ใตใผใในใไฝฟใไบไพใใใใใ
Dojo has_many DojoEventServices
ใจใชใฃใฆใใพใใ
- ๐ ๏ผใคใฎ Dojo ใ่คๆฐใฎใคใใณใ็ฎก็ใตใผใในใไฝฟใไบไพใใใใใ
- 2012: CoderDojo Japan started in Facebook Group
- 2014: coderdojo.jp was launched as 'coderdojo-japan.github.io'
- 2015: coderdojo.jp was migrated to Parse as 'web'
- 2016: Parse shutdown. @yasulab migrated 'coderdojo.jp' from Parse to Ruby on Rails
- Thanks @cognitom for helps in design.
- Thanks @YassLab team for helps in development.
- cf. Contributors - coderdojo-japan/coderdojo.jp - GitHub
- 2016-now: coderdojo.jp is sustainably maintained and developed by YassLab Inc.
- CoderDojo Japan has been incorporated and approved @YassLab team as one of official partners for tons of works.
- From then on, YassLab Inc. maintains and develops coderdojo.jp with official approval from CDJ board members. See #References and contributions ('coderdojo-japan.github.io', 'web', and 'coderdojo.jp') for their continuous efforts on development.
Check out each license
This web application is developed with many other brilliant works!
Check out the followings if you are interested in. ๐
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! ๐
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.
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. ๐
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 info@coderdojo.jp
if you find something unclear.
Also Scrivito gem is publishd under LGPL-3.0, but 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's code can be simply forked, copied, and modified under the MIT License below! ๐
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.
Copyright ยฉ ไธ่ฌ็คพๅฃๆณไบบ CoderDojo Japan