Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
105 changes: 103 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,104 @@
# Projects'25
<p align="center">
<a href="https://ffcs.codechefvit.com" target="_blank" style="display:inline-block; margin-right:10px;">
<img src="https://ffcs.codechefvit.com/logo_ffcs/icon-256x256.webp" alt="FFCS-inator" width="200" />
</a>
</p>

## FFCS
<h2 align="center" style="display: flex; align-items: center; justify-content: center; gap: 10px;">
FFCS-inator
</h2>

## FFCS-inator - CodeChef VIT
Generate priority-based timetables in seconds with FFCS-inator. The smartest way to plan your VIT FFCS. Pick your favorite faculties, set your subject and faculty priorities, and let FFCS-inator create the perfect clash-free timetable for you. Save your timetables for later, and easily share them with friends. No hassle. No stress. Just your ideal schedule, tailored to you.


## Tech Stack

- **Next.js** — Framework for React applications with server-side rendering and API routes.
- **TypeScript** — Static typing for safer, scalable JavaScript applications.
- **Tailwind CSS** — Utility-first CSS framework for rapid UI development.
- **MongoDB** — Database.
- **ExcelJS** — Library for creating and manipulating Excel spreadsheets in Node.js and the browser.
- **pdfmake** — Library for generating PDF documents dynamically in the browser and Node.js.

## Features

**Faculty Listings by Domain, School, Subject, and Slot**
- Search and explore a complete list of faculties, organized by school, domain, subject, and slot.

**Automatic Timetable Generation**
- Generate all possible clash-free timetables automatically using a smart 2D priority algorithm that considers your faculty and subject preferences.

**Download Detailed Reports**
- Export a comprehensive PDF report showing:
- All faculties possible for each subject
- Detailed clash information between selected slots and faculties

**Save Timetables**
- Save your generated timetables for future access and comparison.

**Share Timetables Securely**
- Share your timetable with others via a unique shareable link.
- Control privacy settings to make your timetable public or private as needed.

**Interactive Slot View & Clash Detection**
- Quickly visualize all available slots on a timetable grid.
- Once a slot is selected, conflicting slots are automatically blocked to prevent clashes and simplify your choices.



## Get Started

The repository has two branches, 'prod' and 'staging'.

prod (Production Branch) represents the live, user-facing version of the project where bug-free, well-tested code resides.

staging (Staging Branch) serves as a pre-production environment, where features and fixes are tested before they go live.

To get started, fork your own copy and clone your chosen branch. To clone a branch you can run the following:

Clone the 'prod' branch (production)

```bash
git clone -b prod https://github.com/CodeChefVIT/ffcs.git
```
OR

Clone the 'staging' branch (staging)

```bash
git clone -b staging https://github.com/CodeChefVIT/ffcs.git
```

Run these commands on your bash/terminal and open it in a code editor of your choice.

Run the following to install all the dependencies:

```bash
yarn install
```

To start your development server run:

```bash
yarn run dev
```

Before getting started, please ensure that the .env file is properly configured. The .env.example file has been provided for your reference, with examples of environment variables to be listed.

## License

[![License](http://img.shields.io/:license-mit-blue.svg?style=flat-square)](http://badges.mit-license.org)

## Meet the Team
[![Meet the Team](https://img.shields.io/badge/Meet%20the%20Team-Click%20Here-ff69b4?style=for-the-badge)](https://www.codechefvit.com/ffcs-inator)

<p align="center">
<a href="https://codechefvit.com" target="_blank">
<img src="https://ffcs.codechefvit.com/logo_cc.png" alt="CodeChef-VIT" width="150" />
</a>
</p>

<p align="center">
Made with :heart: by <a href="https://www.codechefvit.com" target="_blank">CodeChef-VIT</a>
</p>