HackSRM 7.0 is a student-led hackathon hosted at SRM University, AP, bringing together developers, designers, and innovators to build real-world solutions across multiple tracks. The repo powers the public website (Next.js) and the content backend (Sanity) for schedule, workshops, and announcements.
- Repo Structure
- Tech Stack
- Prerequisites
- Install
- Develop
- Environment Variables
- Sanity Content
- Useful Commands
- Notes
- Organizers
- Leadership
- License
- Authors
uses turborepo framework for monorepo management
apps/
web/ # Next.js site
studio/ # Sanity Studio
packages/
ui/ # shared UI components
eslint-config/ typescript-config/
- Next.js (App Router), React
- pnpm, Turborepo
- Sanity.io (content, schedule)
- Tailwind-like utility classes + custom CSS
- Node 18+ and pnpm
- Windows bash (
bash.exe) or any POSIX shell
pnpm installRun the web app:
pnpm --filter apps/web devRun the Sanity Studio:
pnpm --filter apps/studio devOr run both via turbo:
pnpm turbo run dev --parallelWeb (apps/web/lib/sanity.ts) reads:
NEXT_PUBLIC_SANITY_PROJECT_ID(defaults tovrujefqhfrom Studio config)NEXT_PUBLIC_SANITY_DATASET(defaults toproduction)
Set them in apps/web/.env.local if you need overrides:
NEXT_PUBLIC_SANITY_PROJECT_ID=vrujefqh
NEXT_PUBLIC_SANITY_DATASET=production
Studio defines schedule documents:
- Fields:
title,type(major/workshop/fun/break),startTime,endTime,location,description
Web uses these events in mobile (Phone98.tsx) and desktop (Desktop98.tsx) views. Ensure the dataset has published schedule docs to render the agenda.
- Lint:
pnpm turbo run lint - Build:
pnpm turbo run build - Format:
pnpm turbo run format(if configured)
- Avoid committing secrets in
.npmrcor.env*files. - If installs work without a custom
.npmrc, you can omit it. - For Studio schema changes: edit
apps/studio/schemaTypes/*and re-rundev.
Organized by: Student Council, SRM University, Andhra Pradesh (SRM AP)
- Website Lead: Dave | Portfolio
This project is licensed under the GNU GPLv3 License. You are free to use, copy, modify, merge, publish, and distribute the software with appropriate attribution and without warranty.
Please check License file for more details.