GN⁺: Lobsters - 해커뉴스와 비슷한 커뮤니티 사이트의 Rails 소스코드
(github.com/lobsters)Lobsters Rails 프로젝트 소개
- Lobsters Rails 프로젝트는 https://lobste.rs에서 접근 가능한 소스 코드로, Rails 기반으로 작성되었으며 MariaDB를 사용하는 SQL 백엔드 데이터베이스를 사용함.
- 이 코드는 BSD 3-clause 라이선스 하에 공개되어 있어, 누구나 자매 사이트를 시작하는 데 사용할 수 있음.
- 버그 보고와 코드 기여를 환영하지만, 사이트에 유용하지 않은 작업은 수용하기 어려울 수 있음을 이해해야 함.
기여 방법
- 프로젝트에 도움을 주고 싶은 사람들은 CONTRIBUTING 파일을 참조하면 됨.
- 코드에 익숙한 사람이 대부분의 경우 채팅방에서 질문에 답할 수 있음.
초기 설정 방법
- 로컬 설치를 위한 단계를 따르거나, 프로덕션 배포 설정을 위해 lobsters-ansible을 사용할 수 있음.
- Docker를 사용하고 싶다면 외부 프로젝트인 docker-lobsters가 있음.
- .ruby-version에 명시된 Ruby 버전을 설치하고, Github에서 lobsters git 저장소를 체크아웃함.
- Nodejs를 설치하여 uglifier에 필요하며, Bundler를 실행하여 프로젝트에 필요한 gems를 설치함.
- MySQL 데이터베이스를 생성하고,
config/database.yml
파일에 개발 및 테스트용 데이터베이스 정보를 입력함. - 새 데이터베이스에 스키마를 로드하고, 개발자 컴퓨터에서 샘플 데이터를 추가하고 개발 모드에서 Rails 서버를 실행할 수 있음.
- 프로덕션에서 사이트를 배포하려면 웹 서버를 설정하고 앱을 프로덕션 모드로 실행해야 함.
- 정기적인 작업을 위해 crontab 또는 다른 스케줄러를 설정해야 함.
관리 방법
- 기본적인 모더레이션은 사이트에서 이루어지지만, 대부분의 관리 작업은 프로덕션에서 rails 콘솔을 사용해야 함.
- 관리자는
/tags
에서 태그를 생성하고 편집할 수 있음.
GN⁺의 의견
이 글에서 가장 중요한 것은 오픈 소스 Rails 프로젝트인 Lobsters의 소스 코드를 누구나 사용할 수 있으며, 커뮤니티의 기여를 환영한다는 점이다. 이 글은 소프트웨어 개발에 관심 있는 사람들에게 흥미로울 수 있으며, 실제로 작동하는 웹 애플리케이션의 코드베이스를 탐색하고, 배우고, 심지어 자신만의 사이트를 시작하는 데 사용할 수 있는 기회를 제공하기 때문에 매력적이다.
Hacker News 의견
- 한 사용자는 자신의 계정이 여전히 존재하지만, 초대제로 인해 트롤이 적다는 점을 긍정적으로 평가하면서도, 품질이 해커뉴스(HN)보다 뛰어나지 않다고 언급함. 자신의 글은 환영받지 못했지만 다른 이들의 자기 홍보 글은 허용되는 것에 대해 이해할 수 없다고 느낌.
- 다른 사용자는 Lobsters의 태그 시스템이 HN보다 피드를 관리하기 쉽게 만들어주며, 사이트가 활발하지 않은 것이 아니라 소음이 적은 것을 의도한 것이라고 설명함.
- 한 사용자는 Lobsters의 어두운 모드(dark mode)를 좋아하며, 특히 밤에 아기를 달래면서 휴대폰으로 사용할 때 HN보다 눈부심이 적어 좋다고 함.
- 또 다른 사용자는 초대제가 아닌 가입을 허용한다면 사이트가 더 활성화될 것이라고 생각하지만, 초대제가 사이트의 취지라고 인정함.
- 한 사용자는 사이트 디자인은 좋지만 커뮤니티 문화가 부족하다고 평가하며, 자폐 스펙트럼에 있는 사람들에게 친화적이지 않다고 느낌. 초대제가 탄탄하지만, 자신이 환영받을 수 있는 곳으로 만들기 위해 몇 가지를 변경할 것이라고 언급함.
- 한 사용자는 HN의 소스 코드가 공개되지 않은 이유에 대해 궁금해하며, 공개적인 표준이 사이트를 개선하는 데 도움이 될 수 있다고 생각함.
- 다른 사용자는 HN에서 uBlock Origin을 사용하여 관심 없는 주제나 출처를 필터링함으로써, Lobsters가 지향하는 것을 HN에서 구현할 수 있다고 제안함.
- 한 사용자는 Lobsters에 HN과 같은 상위 10개/20개 필터 기능이 있는지 궁금해하며, 현재는 최근 일주일 동안의 인기 글만 볼 수 있는 것 같다고 언급함.
- 한 사용자는 Lobsters에 대한 관심이 있었지만 초대를 받지 못했으며, HN에서 주목받지 못한 흥미로운 주제에 대한 토론이 있을 때 가끔 사이트를 방문한다고 함.