Skip to content

kyungit/timetable-generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

수업계

수업계는 중고등학교 시간표를 로컬에서 생성하고 편집하는 데스크톱 앱과 소개 웹사이트로 구성된 프로젝트입니다.

폴더 구조

classgen-desktop/  Electron + React 데스크톱 앱
classgen-website/  GitHub Pages용 소개 사이트

Desktop

cd classgen-desktop
npm install
npm run dev
npm run dev:web
npm run build
npm run dist

npm run dist는 Windows 설치 파일을 classgen-desktop/release에 생성합니다. 모든 데이터는 브라우저의 localStorage에만 저장되며 서버, 로그인, 결제 기능은 없습니다.

npm run dev:web은 Electron 창 없이 데스크톱 UI를 http://127.0.0.1:5173에서 바로 확인합니다.

Website

cd classgen-website
npm install
npm run dev
npm run build
npm run deploy

GitHub Pages 배포 전 classgen-website/vite.config.tsbase 값을 저장소 이름에 맞게 조정하세요. 개발 중에는 http://127.0.0.1:5174에서 홈페이지를 확인할 수 있습니다.

현재 구현 범위

  • 교사, 학급, 과목, 교실, 수업 배정 관리
  • 고정 시간과 교사 불가 시간을 고려한 자동 시간표 생성
  • 교사, 학급, 교실 충돌 검사
  • 담임교사의 4·5교시 중 최소 한 교시 점심 공강 보장
  • 드래그 앤 드롭 수동 이동 및 실행 취소
  • 학급/교사/교실별 시간표 보기
  • 교사별·교실별 시트와 필터가 포함된 엑셀 시간표 다운로드
  • 홈페이지 엑셀 양식 다운로드 및 엑셀 일괄 등록
  • 합반 수업 자동 배정
  • CSV 다운로드
  • 로컬 저장

고급 최적화, 서버 연동, 계정, 결제, 광고, 라이선스 인증은 구현하지 않았습니다. 향후에는 연속 수업, 오전 선호, 공강 최소화 등 희망 조건의 점수 기반 최적화를 강화할 수 있습니다.

About

A desktop app for automatically generating and managing middle school timetables, including teachers, classes, subjects, special rooms, and combined classes. 학교 수업 시간표를 자동 편성하고, 교사·학급·과목·특별실·합반 조건을 관리하는 데스크톱 프로그램

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages