Lexiverse
Lexiverse - 영어 학습자를 위한 AI 기반 문맥 독해 엔진
The codebase for Exercism's website.
교육Ruby · TypeScriptGitHub @exercism직접 설치운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
설치형 프로젝트는 배포 도메인 없이도 확인할 수 있습니다. 개인 저장소는 GitHub 로그인으로, 조직 저장소는 위의 저장소 확인 파일로 직접 확인해 주세요.
메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Please note: This repo is an internal repo. That means the source code is public, but we do not accept Pull Requests, we do not support the app being run locally, and we do not encourage people to fork or reuse this repository.
This is the website component of Exercism. It is Ruby on Rails app, backed by various other services.
These are instructions to get things working locally. While you are welcome to try and follow these instructions and set up this repo on your local machine, we provide no guarantee of things working on your specific local setup.
You need the following installed:
Gemfile and the .ruby-version files)The main dependencies can be installed via homebrew
brew install libgit2 cmake pkg-config anycable-go hivemind node yarnWhat dependencies you need to install depends on your Unix distribution.
For example, for Ubuntu you'll need to install:
sudo apt-get install software-properties-common libmariadb-dev cmake ruby-dev ruby-bundler ruby-railties
You'll also need to install nodejs and yarn.
As we recommend using WSL, see the Unix-specific instructions listed above.
For information on setting up WSL, check the installation instructions.
Running these commands inside a mysql console will get a working database setup:
CREATE USER 'exercism'@'localhost' IDENTIFIED BY 'exercism';
CREATE DATABASE exercism_development;
ALTER DATABASE exercism_development CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
GRANT ALL PRIVILEGES ON exercism_development.* TO 'exercism'@'localhost';
CREATE DATABASE `exercism_test`;
ALTER DATABASE `exercism_test` CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
GRANT ALL PRIVILEGES ON `exercism_test`.* TO 'exercism'@'localhost';
To run the app you must have a local version of AWS running.
We use localstack and opensearch, and run them via Docker.
Double check versions in .dockerimages.json.
docker run -dp 3042:8080 -p 3040:4566 -p 3041:4566 localstack/localstack:2.3.2
docker run -dp 9200:9200 -e "discovery.type=single-node" opensearchproject/opensearch:2.11.0
The following scripts configure exercism to work with your setup.
bundle install
EXERCISM_ENV=development bundle exec setup_exercism_config
EXERCISM_ENV=development bundle exec setup_exercism_local_aws
Note: you will need to do this every time you reset dynamodb, which happens when Docker is restarted.
We have a Procfile which executes the various commands need to run Exercism locally.
On MacOSX we recommend using hivemind to manage this, which can be installed via brew install hivemind.
To get everything started you can then run:
hivemind -p 3020 Procfile.dev
On Unix systems we recommend using overmind to manage this, which can be installed using these instructions.
To get everything started you can then run:
overmind start --port 3020 --procfile Procfile.dev
As we recommend using WSL, see the Unix-specific instructions listed above.
For information on setting up WSL, check the installation instructions.
The Rails 7 console has autocomplete that can be very frustrating. To disable it, do the following:
echo 'IRB.conf[:USE_AUTOCOMPLETE] = false' >> ~/.irbrc
Rubocop is enforced on Pull Requests. To run it locally:
bundle exec rubocop --except Metrics
To autoupdate based on it's suggestions, add the -a flag:
bundle exec rubocop --except Metrics -a
To check the complexity of your code and ensure you're not
adding things that are more complex to the codebase, run without the --except flag:
bundle exec rubocop -a
The tests can be run using:
bundle exec rails test
yarn test [path/to/file]
Omit path to run all tests
yarn test [path/to/file] -- -u
Omit path to update all snapshots
If you need to create a new Git repo for use in the tests, use the following:
mkdir /Users/iHiD/Code/exercism/website/test/repos/new-repo
cd /Users/iHiD/Code/exercism/website/test/repos/new-repo
git init --bare
cd ~
git clone file:///Users/iHiD/Code/exercism/website/test/repos/new-repo exercism-new-git-repo
cd exercism-new-git-repo
echo "{}" > config.json
git add config.json
git commit -m "First commit"
git push origin head
Solargraph allows for code suggestions to appear in your editor.
If you'd like to use solargraph, the gem is in the file.
You need to run and set solargraph.useBundler to true in your config. I have this working well with coc-solargraph. This article was helpful for setting it up.
bundle exec yard gemssolargraph bundle