March 2023

TCC - Traning Code Center

competitive programming learning platform specifically designed for the students of Universitas Syiah Kuala (USK)

Repository

Team base project

Overview

TCC (Training Code Center) is a competitive programming learning platform specifically designed for the students of Universitas Syiah Kuala (USK). This platform allows users to sharpen their skills by tackling various programming challenges 💻. Each correct answer awards points to the users, and there are several achievement levels such as "Veteran" 🥇, "Master" 🥈, and "Beginner" 🥉, reflecting the user's expertise based on the points they have accumulated 🏆. In this project, my role involved designing the overall website and creating its user interface using Next.js.

The Tech Stack

For this project, I chose to use the following technologies:

  • Next.js for the frontend framework
  • TypeScript for static type checking
  • Tailwind CSS for styling
  • Google Cloud For database management and user authentication
  • FJudge used forjudging system that leverages FastAPI technology for competitive programming tasks, allowing for efficient evaluation of user submissions.
  • Docker Used for containerizing the application, ensuring consistent development and deployment environments

Features

  • User Authentication: Secure login and registration for users.
  • Problem Solving: Users can solve various coding challenges.
  • Competitions: Users can participate in programming contests.
  • Ranking System: Users are ranked based on their points, promoting a competitive environment.

Conclusion

TCC (Training Code Center) is a comprehensive platform that provides a conducive environment for competitive programming practice. It is designed to foster learning and skill development among students of USK. Through engaging challenges, competitions, and a robust ranking system, TCC encourages students to improve their programming abilities and achieve higher levels of expertise. My contribution to this project focused on designing and developing the user interface using Next.js, ensuring a seamless and intuitive experience for users.