Coursemology 2 开源项目教程
coursemology2 Rails 6 re-write of Coursemology 项目地址: https://gitcode.com/gh_mirrors/co/coursemology2
1. 项目介绍
Coursemology 2 是一个基于 Ruby on Rails 6 的开源学习平台,旨在通过游戏化的方式提高学生的学习兴趣和参与度。该项目是 Coursemology 的重新编写版本,集成了现代化的前端技术(如 React.js),并支持多租户架构,适用于教育机构和企业培训。
2. 项目快速启动
系统要求
- Ruby (3.1.4)
- Ruby on Rails (7.0.8.4)
- PostgreSQL (>= 9.5)
- ImageMagick 或 GraphicsMagick
- Node.js (v18 LTS)
- Yarn
- Docker
- Redis
安装步骤
-
克隆项目
git clone https://github.com/Coursemology/coursemology2.git cd coursemology2
-
更新子模块
git submodule update --init --recursive
-
安装依赖
gem install bundler:2.5.9 bundle config set --local without 'ci:production' bundle install
-
安装前端依赖
cd client yarn cd ..
-
设置数据库
bundle exec rake db:setup
-
配置身份和访问管理(IAM) 进入
authentication
文件夹,按照 README 文件中的说明配置 Keycloak。 -
初始化环境文件
cp .env.example .env cp client/.env.example client/.env
-
启动应用
- 前端:在
client
目录下运行yarn build:development
- 身份验证服务:在
authentication
目录下运行docker-compose up
- 后端:运行
bundle exec rails s -p 3000
- 前端:在
-
访问应用 打开浏览器,访问
http://localhost:8080
,使用默认用户名test@example.org
和密码Coursemology
登录。
3. 应用案例和最佳实践
应用案例
- 教育机构:Coursemology 2 被广泛应用于大学和中学,帮助教师创建互动课程,通过游戏化元素提高学生的参与度。
- 企业培训:企业可以使用 Coursemology 2 进行内部培训,通过积分和排行榜激励员工学习新技能。
最佳实践
- 多租户配置:在部署时,确保在
config/application.rb
中正确配置default_host
,以支持多租户架构。 - 定时任务:使用 Sidekiq 和 Sidekiq-Cron 配置定时任务,如发送即将开始项目的提醒邮件。
4. 典型生态项目
- Keycloak:用于身份和访问管理(IAM),确保用户认证和授权的安全性。
- Redis:用于缓存和会话管理,提高应用性能。
- PostgreSQL:作为主要数据库,存储用户数据和课程信息。
- React.js:用于前端开发,提供现代化的用户界面和交互体验。
通过以上步骤,您可以快速启动并使用 Coursemology 2 开源项目,享受其带来的教育和技术优势。
coursemology2 Rails 6 re-write of Coursemology 项目地址: https://gitcode.com/gh_mirrors/co/coursemology2