Braude Top is a Timetable creation tool built with sveltekit for students of the Braude college for engineering. It is not affiliated with the college in any way.
- Timetable Creation: Create separate Timetables for each semester.
- Course Search: Search for courses by partial name.
- Light/Dark Mode: Toggle between light and dark themes for better usability.
- User Feedback: Users can submit feedback, requests, or bug reports directly through the site.
- Course Comments: Add and view comments on course information pages.
- Responsive Design: Optimized for desktop and mobile devices.
- Frontend: SvelteKit 5
- Backend: Node server using SvelteKit's node adapter. SQLite as DB engine.
- Hosting: Hosted on a Linode VPS with Nginx as a reverse proxy. Check it out!
- Linux (can technically run on Windows, but all scripts are written for Linux, so some tinkering may be required)
- Node.js (v20+)
- npm
- Clone the repository:
git clone https://github.com/yuval-herman/braude-top.git
- Navigate to the project directory:
cd braude-top
- Install dependencies:
npm install
- Install playwright dependencies:
npx playwright install
Start the development server:
npm run dev
Open your browser at http://localhost:5173.
Generate a production build:
npm run build
Preview the build:
npm run preview
Braude Top is deployed on Linode with two builds:
- Beta Build: Accessible via the
beta
subdomain. - Production Build: Accessible via the primary domain.
Feedback and contributions are welcome! If you encounter any issues or have suggestions, please open an issue or submit a pull request.