christopherlancei/edusite-source-code
βοΈ Sun Shine School β Narasapuram | Since 1982 A full-stack educational website for Sun Shine School, Narasapuram (West Godavari District, Andhra Pradesh), built with React (frontend) and Python/FastAPI (backend). Content migrated from www.sunshineschoolnsp.com. Pages π Home β About Sun Shine School, Education Excellence Award, academic programs overview π What We Offer β Smart Classes, Sports, Labs, Language Development, Hostel π¨ Activities β Singing, Dancingβ¦ See the full description on the dataset page: https://huggingface.co/datasets/christopherlancei/edusite-source-code.
017
1# ββ Stage 1: Build React frontend βββββββββββββββββββββββββββββββββ2FROM node:20-alpine AS frontend-build3 4WORKDIR /frontend5COPY frontend/package.json ./6RUN npm install7COPY frontend/ ./8RUN npm run build9 10# ββ Stage 2: Python/FastAPI runtime ββββββββββββββββββββββββββββββ11FROM python:3.11-slim12 13# HF Spaces requires UID 100014RUN useradd -m -u 1000 user15USER user16ENV HOME=/home/user \17 PATH=/home/user/.local/bin:$PATH18 19WORKDIR $HOME/app20 21# Install Python dependencies22COPY --chown=user requirements.txt .23RUN pip install --no-cache-dir --upgrade -r requirements.txt24 25# Copy backend26COPY --chown=user backend/ ./backend/27 28# Copy React build from stage 129COPY --chown=user --from=frontend-build /frontend/dist ./static/30 31# Create writable directories for uploads and data persistence32RUN mkdir -p $HOME/app/uploads $HOME/app/data33 34EXPOSE 786035 36# Remove old pages.json so new defaults from main.py take effect, then start server37CMD rm -f $HOME/app/data/pages.json && uvicorn backend.main:app --host 0.0.0.0 --port 786038 