ucc-site

사단법인 도시공동체본부 홈페이지

Node.js + Express + 내장 SQLite(node:sqlite) 기반의 기관 홈페이지 및 게시판.

구성

실행

npm install
npm start

최초 관리자 계정

서버를 처음 실행하면 관리자 계정이 자동 생성되고, 아이디(admin)와 임시 비밀번호가

로그인 후 [비밀번호 변경]에서 반드시 변경하세요.

데이터 저장 위치

data/ 폴더를 백업하면 전체 게시판 데이터가 보존됩니다.

폴더 구조

server.js              Express 앱 진입점
src/
  db.js                SQLite 초기화·스키마·관리자 시드
  config.js            게시판 정의·공용 헬퍼
  routes/board.js      공개 게시판(목록·상세·다운로드)
  routes/admin.js      관리자(인증·CRUD·업로드)
  newsletter.js        데일리뉴스 자동 수집(매일 08:00·18:00)
  globalnews.js        지구촌소식브리프 주간 리포트 자동 발행(매주 월 07:00)
tools/                 문서 자동 게시 도구 (tools/README.md 참고)
views/                 EJS 템플릿
public/                정적 자산(index.html, css, js)
data/                  DB·업로드(자동 생성, git 제외)

배포 메모

지구촌소식브리프

src/config.jsBOARDSglobal 키로 정의된 일반 게시판입니다. 별도 테이블 없이 posts 테이블(board='global')을 쓰므로 목록·상세·검색· 첨부파일·관리자 화면이 다른 게시판과 완전히 동일하게 동작합니다. 목록 상단에는 발간 취지를 소개하는 hero(board-list.ejscurrentBoard==='global')가 붙습니다.

여기에 src/globalnews.js주간 이슈 브리프를 자동 발행합니다.

주제를 바꾸려면

src/globalnews.jsTHEMES 만 고치면 됩니다.

{
  key: "coops",                       // source_guid 중복방지 키
  title: "협동조합이 떠받치는 지역경제, 해외의 실험",
  focus: "노동자·소비자·플랫폼 협동조합이 지역 고용과 돌봄을 지탱하는 사례",
  queries: ["해외 협동조합 지역경제", "노동자협동조합 사례"],  // 리서치 검색어
}