This project is actively maintained by Nashwan Rasyid. For any inquiries, updates, or assistance, please contact him via email at [email protected].
Plan your course registration (FRS) by creating maximum of 3 plans, ensuring there are no duplicate classes, no overlapping schedules on the same day, and guaranteeing that the total credit hours (sks) do not exceed 24 for each plan. This will result in a valid FRS plan and aid in more effective academic planning.
Designed for finding course exchange partners, simplifies the process for students seeking peers interested in swapping courses. This feature enable you to effortlessly connect with counterparts and mutually exchange desired courses.
Check the timetable for each subject and class in the Course Schedule (Jadwal Kelas) menu. Use filters to organize the schedule according to the semester and specific subject.
For details on how to use Informatics FRS Helper, check out the documentation.
To run this project locally, ensure that you have installed all the necessary tools on your machine:
Then, you can follow these steps:
- Clone this repository
git clone https://github.com/albugowy/informatics-frs-helper.git
cd informatics-frs-helper
- Set all the required environment variables. You can find the necessary environment variables in the
.env.example
file. - Install all dependencies
pnpm install
- Apply Prisma database migrations
pnpm db:push
- Seed the database with prisma seeder
pnpm db:seed
- Run your project in development mode
pnpm dev
# or with turbopack
pnpm dev --turbo
I appreciate contributions! Refer to CONTRIBUTING.md for details on how you can contribute. Thanks for your valuable input!
This project is set up for deployment on Vercel, a cloud platform that is made to deploy frontend web applications. Here's how you can deploy this project:
-
Fork and clone the repository: Fork this repository to your own GitHub account and then clone it to your local device.
-
Install Vercel CLI: The Vercel CLI is a command-line interface that allows you to deploy your projects from the command line.
-
Login to Vercel: Run
vercel login
and follow the instructions to log in to your Vercel account. -
Deploy: Navigate to the project directory and run
vercel
to deploy the project. Vercel will automatically detect the correct settings for deployment. -
Visit your site: Vercel will give you a deployment URL, visit that URL to see your deployed site.
Remember to set up all the necessary environment variables in your Vercel dashboard.
For more detailed instructions, refer to the Vercel documentation.
- Next.js: This is a React framework renowned for its ability to render pages on the server side and generate static websites for React-based web applications. It's a powerful tool for building highly performant and SEO-friendly web experiences.
- tRPC: tRPC stands out as a framework tailored for constructing APIs in a type-safe manner. By facilitating direct calls to server functions from the client, it streamlines the development process, eliminating the need for traditional approaches like REST or GraphQL.
- Prisma: Prisma offers a comprehensive database toolkit, encompassing an ORM, query builder, and migration tool. It simplifies database access, making tasks like data manipulation and schema migrations intuitive and straightforward.
- NextAuth: A robust authentication solution designed explicitly for Next.js applications. It seamlessly integrates with Next.js and Serverless architectures, providing a hassle-free way to implement secure authentication flows.
- Tailwind: Tailwind CSS is a utility-first CSS framework equipped with a plethora of pre-defined classes. Its unique approach allows developers to compose designs directly within their markup, offering unparalleled flexibility and efficiency in styling web applications.
- TiDB: TiDB is a fully-managed Database-as-a-Service (DBaaS) solution, leveraging the strengths of the TiDB distributed SQL database in the cloud. It brings scalability, resilience, and performance to cloud-native applications, simplifying database management for developers.
- Vercel: Vercel serves as a cloud platform tailored for hosting static sites and Serverless Functions. Its seamless integration with workflows enables developers to deploy Jamstack websites and web services instantly, with automatic scaling and minimal configuration required.