
공개 실험실 리서치 커뮤니티의 컨텐츠 관리 시스템 인 plots2 웹 응용 프로그램은 그룹 리서치 블로그 (우리가 연구 노트”와 Wiki의 조합입니다. 데이터 모델에 대한 자세한 내용은 여기를 참조하십시오.
gitpod와 함께이 코드베이스를 즉시 실행하고 기여하기 시작하십시오.
공개 실험실 커뮤니티가 환경 기술, 디자인, 문서화 및 커뮤니티 조직에 협력하는 데 도움이되는 다양한 기능을 보여줍니다. 원래 Drupal 사이트 인 Ruby on Rails와 함께 2012 년에 다시 작성되었으며 그 이후로 확장되었지만 아직 레거시 Drupal 데이터 모델과 데이터베이스 설계를 완전히 대체하지는 않았습니다. 우리는 오픈 소스이며 Google Summer of Code (GSOC), Rails Girls Summer of Code (RGSOC), Outreachy 및 Google Code-In (GCI)과 같은 다양한 OSS 프로그램에 적극적으로 참여합니다. 몇 가지 주요 기능은 다음과 같습니다.
우리는 plots2 와 광범위한 공개 실험실 코드 프로젝트를위한 초안 로드맵을 개발하고 있습니다. 자세한 내용은 여기에서 댓글을 달아라.
공개 실험실 소프트웨어 프로젝트의 기능, 청중, 상호 관계 및 목표에 대한 전체 설명은 여기에서 찾을 수 있습니다 : https://publiclab.org/software-overview
우리 플랫폼을 만드는 사람들은 다른 프로젝트에서 매우 다른 디자인과 기술 결정을 내립니다. 이것은 세상의 변화를보기 위해서는 우리의 가치와 원칙을 반영하는 시스템을 구축하고 유지해야한다는 우리의 깊은 믿음에서 비롯됩니다.
설계에서 시스템 아키텍처, 기본 어휘 및 커뮤니케이션 패턴에 이르기까지 우리의 시스템은 2010 년부터 유기적으로 성장하여 전 세계 커뮤니티에 영향을 미치는 환경 문제를 해결할 수있는 강력하고 다양하며 협력적인 사람들의 네트워크를 지원했습니다. 우리가 함께 구축 한 플랫폼은이 공유 역사를 여러 가지 방법으로 크고 작게 말합니다. 심각한 건강 문제, 지상 주최자, 정책 전문가, 하드웨어 해커, 교육자 및 공무원에 직면 한 사람들의 의견을 반영합니다.
이 광범위한 커뮤니티와 공개 실험실 팀은 실제 프로젝트에 대해 토론, 분류, 구성, 프로토 타입 및 비판 할 수있는 공간을 촉진했습니다. 함께 우리는 친숙한 작품을 통합하지만 궁극적으로 인터넷의 다른 어떤 것과는 다른 느낌과 느낌을주는 플랫폼을 형성했습니다. 우리 플랫폼의 성장에도 불구하고, 다른 사람들의 목소리를 듣고, 상호 존중과 지원, 전문 지식과 지식의 차이에 의해 제시된 장벽과 도전에 대한 인식, 그리고 많은 주류 지식 생산 및 기술 및 과학 개발의 많은 주류 모드에 의해 영속 된 불평등과 권력 불균형에 대한 민감성에 대한 인식을 남기기 위해 노력하고 있습니다.
저렴하고 접근하기 쉬운 일을 민주화하려는 우리의 상호 목표는 우리가 환경과의 인간 관계를 적극적으로 재구성하는 공동 실무자 네트워크를 만들 수있게 해주었다. 우리의 목표는 시스템에 의해 뒷받침되고 촉진되고 공동 작업이 어떻게 이루어질 수 있는지에 대한 질문과 심지어 도전합니다.

(위 : 데이터 모델 초안)
우리는 기부금을 환영하며 특히 처음 기고자를 환영하는 데 관심이 있습니다. 아래에 기여하는 방법에 대해 자세히 알아보십시오! 우리는 특히 무료 및 오픈 소스 소프트웨어로 표현 된 그룹에 소속 된 사람들의 기여를 환영합니다!
우리의 행동 강령을 읽고 준수하십시오. 우리의 공동체는 온라인과 직접 상호 작용 중에 존중하는 장소가되기를 열망합니다.
설치를 위해 전제 조건에는 SQLITE3 및 RVM이 포함됩니다. 전체 목록 및 지침을 보려면 여기를 클릭하십시오.
git clone https://github.com/your_username/plots2.git 로 포크 리포 your_username 사본을 다운로드하십시오.cd plots2 로 새로운 plots2 디렉토리를 입력하십시오.git remote add upstream https://github.com/publiclab/plots2.git 위치를 알 수 있도록하십시오.bundle install 해야 할 수도 있습니다. Your Ruby version is 2.xx, but your Gemfile specified 2.7.3 rvm 또는 rbenv 사용하여 Ruby 버전 2.7.3을 설치해야합니다.rvm install 2.7.3 후 rvm use 2.7.3rbenv install 2.7.3 후 rbenv local 2.7.3bundle config set without 'production mysql' 프로덕션에 필요한 라이브러리를 제외하도록 프로젝트를 설정하십시오.bundle install 하여 보석을 설치하십시오.cp db/schema.rb.example db/schema.rb 실행하려면 db/schema.rb.example 에서 db/schema.rb .mysql2 사용하는 동안 문제를보고 했으므로 sqlite3 Plots2 데이터베이스로 사용하는 것이 좋습니다 .cp config/database.yml.mysql.example config/database.yml 실행하여 config/database.yml 에서 config/database.yml.mysql.example 의 사본을 만들려면 실행합니다.cp config/database.yml.sqlite.example config/database.yml 실행하여 Config/Database.YML에서 config/database.yml.sqlite.example config/database.yml 의 사본을 작성하십시오. SQLITE를 사용하기로 선택한 경우 일부 테스트에 실패 할 수 있습니다. 이 프로젝트는 처음에 MySQL을 사용하기 위해 설정되었으며 일부 테스트는 MySQL DB에 맞게 조정되었습니다. 알람이 필요하지 않습니다. 우리는 이것을 해결하기 위해 노력하고 있으며 이는 귀하의 개발 프로세스를 방해하지 않습니다.rake db:setupyarn install 로 정적 자산 설치 (외부 JavaScript 라이브러리, 글꼴)rails webpacker:install && rails webpacker:install:react && rails generate react:install (로컬 SSL 작업의 경우 아래 SSL 참조).passenger start 하고 브라우저에서 http://localhost:3000/ 로 이동하십시오.rails test 실행하여 설치가 제대로 작동하는지 확인하십시오. rails test:system 실행할 수도 있습니다. ( 참고 : 데이터베이스로 SQLITE를 선택하면 일부 테스트가 실패 할 수 있습니다. 무시하십시오.이 문제를 해결하기 위해 노력하고 있습니다. 서버가 올바르게 시작되면 모두 설정됩니다 ).UNIX 시스템이 Ruby 및 Rails에서 더 매끄럽게 작동하는 경향이 있으므로 가상 환경 또는 이중 부팅 시스템에서 작업하는 것이 좋습니다. 이것은 Plots2에 대한 이점뿐만 아니라 다른 루비 프로젝트에서 작업하는 동안 미래에도 귀하에게 도움이 될 것입니다. Linux 또는 Mac 기반 OS는 개발이 훨씬 쉬워집니다.
이 readme의 설치 단계를 계속하기 전에 Linux 2 (WSL 2) 용 Windows 서브 시스템 사용자는 WSL 2 터미널을 열고 아래 명령을 입력해야합니다.
sudo apt updatesudo apt install curl g++ gcc autoconf automake bison libc6-devsudo apt install libffi-dev libgdbm-dev libncurses5-dev libsqlite3-dev libtoolsudo apt install libyaml-dev make pkg-config sqlite3 zlib1g-dev libgmp-devsudo apt install libreadline-dev libssl-devsudo apt install gnupg2gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDBcurl -sSL https://get.rvm.io | bash -s stablesource ~/.rvm/scripts/rvmrvm install ruby-xxx (this projects Ruby version)rvm --default use ruby-xxx (replace xxx with this project's Ruby version)Public Lab은 Redis를 사용하며 로컬로 응용 프로그램을 실행할 때 일부 기능에 필요할 수 있습니다.
brew install redissudo yum -y install redissudo apt update && apt upgradesudo apt install Redis-serversudo nano /etc/redis/redis.confsudo service redis-server startredis-cliping 및 응답은 pong 이어야합니다quit 입력하십시오brew services start redisredis-serverbundle exec sidekiqPublic Lab에서는 OpenSSL GEM을 사용하여 개발 모드에서 보안 연결 (HTTP)에 SSL (Secure Sockets Layer)을 제공합니다. 다음 단계를 통해 LocalHost에서 HTTPS 연결을 실행할 수 있습니다.
passenger start --ssl --ssl-certificate config/localhost.crt --ssl-certificate-key config/localhost.key --ssl-port 3001 사용하십시오.설치를 완료하면 이러한 자격 증명을 사용하여 지역 개발/테스트 환경에서 PL 웹 사이트에 로그인하여 로그인 한 사용자에 대해서만 추가 권한을 얻습니다. 각각은 자체 권한 세트가 제공됩니다. 그럼에도 불구하고, 그들에 대한 경험은 거의 동일합니다.
사용자 이름 : admin , moderator 또는 user
비밀번호 : password
로그인 시스템에 대한 자세한 내용은이 페이지를 참조하십시오
테스트에 대한 포괄적 인 설명을 보려면 여기를 클릭하고 시스템 테스트에 대해 알아 보려면 여기를 클릭하십시오.
whenever --update-crontab CRON 작업을 업데이트 할 때마다 명령을 실행하십시오.crontab -l 사용하십시오. 일부의 경우 bundle exec 로 보석 관련 명령을 전제해야합니다. 예를 들어, bundle exec passenger start . bundle exec 추가하면 Bundler에 방금 설치 한 승객 버전을 사용할 수 있습니다. bundle exec rake db:setup , bundle exec rake db:seed 이것이 필요한 곳의 다른 예입니다.
Public Lab은 이제 "이메일로 댓글로 회신"기능을 지원합니다. 자세한 내용은 이메일 문서를 참조하십시오
버그 및 요청 기능을보고하려면 Github 문제 추적기를 사용하십시오.
추가 지원을 위해 공개 실험실 웹 사이트 및 메일 링리스트 (http://publiclab.org/lists)에 가입하십시오. 긴급 요청은 [email protected]로 이메일을 보내십시오
이 응용 프로그램은 프로덕션에서만 Recaptcha Gem을 통해 Recaptcha를 사용합니다. 자세한 내용은 여기를 클릭하십시오.
Publiclab.org는 이제 초기 단계에 있지만 국제화 및 현지화를 지원합니다. 이것은 Rails-I8N으로 달성되었습니다.
실제로 보려면 페이지의 바닥 글 섹션에있는 '언어'드롭 다운을 클릭하십시오. I18N의 모든 지침 및 모범 사례는 여기에서 찾을 수 있습니다.
번역은 여기에서 Yaml 파일로 배열되며 파일보기와 유사한 방식으로 설정됩니다. 번역 추가 예는 여기에서 찾을 수 있습니다.
새로운 번역 시스템을 구현 한 이후로 우리는 여기에있는 translation() 도우미를 사용합니다. 이는 아직 번역이없는 경우 사이트 방문자에게 프롬프트를 삽입하는 것과 같은 추가 번역 기능을 제공합니다. 번역 시스템 문서를 읽음으로써 번역 시스템에 대한 자세한 내용을 배울 수 있습니다.
새로운 언어를 추가하거나 추가 지원을 위해서는 [email protected]으로 작성하십시오.
보안 취약점을보고하거나 보안에 관한 질문을 보려면 [email protected]에 문의하십시오. 웹 실무 그룹은 즉시 평가하고 응답합니다.
공개 실험실 소프트웨어를 개선하는 데 도움이됩니다!
오픈 소스/무료 소프트웨어에 익숙하지 않습니까? 다음은 특히 첫 타이머에 대한 문제가 있습니다. 우리는 도와 드리기 위해 여기에 있으므로 흥미로워 보이는지 물어보십시오 : https://code.publiclab.org
다음은 GIT 워크 플로에 대한 링크입니다.
Hacktoberfest의 일부로 Publiclab에 기여하고 싶습니까? Hacktoberfest 기고 문서를 확인하십시오