Inspiration

DevCompete was created out of a love for coding and a desire to make a fun platform for coding fans. As a student involved in the tech community, I saw that coding contests lacked real-time experiences. Existing platforms didn't have the excitement of seeing live code or detailed code analysis. This is why DevCompete was born – to change 1v1 coding competitions by adding live progress, support for multiple languages, and helpful code analysis.

What it does

DevCompete is an advanced 1v1 coding contest platform that changes the coding competition scene. It allows users to see their opponents' code progress in real-time, with the code blurred intelligently to keep the competition fair while still providing insights into the opponent's progress. The platform supports many programming languages, giving users the power to code in the language they prefer. After the competition, DevCompete uses AI-driven code analysis to assess and provide detailed insights into the code quality from both contestants.

How we built it

The development journey of DevCompete was an amalgamation of modern technologies and meticulous planning. Leveraging Python for backend functionality and Django for seamless web development, we integrated Tailwind CSS and HTML to craft an intuitive user interface. We used Judge0 for running the code in an isolated environment in a cloud vm and recorded the output, memory used, time taken etc. We deployed the whole projetct on Microsoft Azure.

We also used redis db on Redis Cloud to handle the management of websockets since websockets work with realtime data and need high speed db.

Challenges we ran into

During the development of DevCompete, we encountered several challenges. One of these challenges was to display the code in real-time while ensuring a fair competition. Additionally, deploying the project on the cloud proved to be another hurdle. Since our project involved multiple interconnected services, deploying them all on the cloud presented a challenge.

Accomplishments that we're proud of

We take pride in successfully implementing the realtime progress visibility feature using websockets, offering users a unique and engaging competitive environment. Additionally, integrating AI for code analysis and providing comprehensive insights into code quality marked a major accomplishment for the project. Also, deploying the whole project on the Azure cloud infrastructure was a noteworrthy accomplishment.

What we learned

The journey of building DevCompete was a profound learning experience. We gained in-depth knowledge of integrating diverse technologies, managing real-time data synchronization using web sockets, deployment of the diverse set of services on Azure cloud infrastructure and leveraging AI for code evaluation.

What's next for DevCompete

Looking ahead, our vision for DevCompete includes continuous enhancements and refinements. We plan to introduce additional features to further enrich the user experience, improve code analysis accuracy, and expand the platform's scalability. We also aim to provide features for the direct end user that he can also experience the platform without participating in a contest. Furthermore, we aim to engage with the coding community for feedback and insights to shape the platform's evolution.

Share this project:

Updates