프로젝트 소개

SILVA(Natural Resources SILVA Application)는 React TypeScript 웹 애플리케이션을 구축하기 위한 정책, 표준, 가이드 및 파이프라인 세트를 제공하는 BC 주정부 오픈소스 스타터 웹 애플리케이션이다. Experimental 라이프사이클로 표시되어 있다. 프런트엔드 스택: React, React Redux, TypeScript, React Testing Library, Vitest, Vite 및 Node 20으로 구축된 프로그레시브 웹 애플리케이션이다. 린팅은 Standard TS ESLint를 사용한다. 스타일링은 Carbon Design System(bcgov/nr-theme 경유)과 Bootstrap CSS에 의존한다. 인증 및 권한 부여는 FAM(AWS Cognito)을 사용한다. 백엔드 스택: GraalVM의 Java 17, Spring Boot Web, Apache Maven, Hibernate ORM 및 Oracle JDBC로 구축된 REST API이다. 린팅은 Google Java Checkstyle을 사용한다. 인증 및 권한 부여는 JWT 토큰 기반 요청과 함께 OAuth 2.0을 사용한다. README는 또한 /posts, /posts/1, /posts?author=1 및 /posts/2/comments와 같은 REST 경로를 해당 쿼리 키에 매핑하는 TanStack Query 키 규칙을 문서화한다. 시작하기: 저장소를 복제한 후 프로젝트 루트에서 `docker compose up -d`를 실행한다. 그러면 앱은 http://localhost:3000에서, REST API는 http://localhost:8080에서 사용할 수 있다. 기여자는 코드를 작성하기 전에 CONTRIBUTING 가이드를 참조하도록 안내된다. 이 프로젝트는 세 가지 작업 정책을 명시한다: 공개적으로 작업하기(기본적으로 공개 저장소), 고객 중심 서비스, 커뮤니티 기반 작업이며, 지원 채널로는 BC 주정부 Stackoverflow 인스턴스와 Rocket Chat이 있다. SonarCloud 배지는 프런트엔드와 백엔드 모두에 대한 품질 게이트, 커버리지, 유지보수성, 보안 및 신뢰성 지표를 보고한다.