The website provides a place to host local and interschool competitive programming competitions for highschoolers.
The CS club has hosted informal competitive programming competitions at Suncoast before that didn't require as much planning. But, even grading submissions on such a small scale required a lot of effort. In the future, the CS club site will be used for these school competitions allowing us to grade submissions and handle users in a streamlined way.
The chief reason for the site is to handle interschool competitions between schools in Palm Beach School District (PBSD). There are some notable competitive programming competitions in Florida (like UCF's HSPT), but there are no major ones in PBSD. This competition would also be organized by highschool students, for highschool students. Hosting it earlier without a dedicated website was too logistically challenging. The website will allow us to run a large scale competition and continue in future years.
- React frontend framework
- React Bootstrap component library
- Monaco Editor for in-browser code editing
- Firebase
- Authentication
- Database
- Serverless functions
- Judge0
- Code execution from editor
- Grading submissionss
- Other Local Competitions
- Programming Resources
- CS Tutoring
- Club Attendance
Set up development environment to work on the website. These steps will work for any code editor or IDE, we use Visual Studio Code.
Clone this Github repository into your local device by running
git clone https://github.com/Suncoast-Computer-Science/cs-club-official-site.git
To run Firebase with the project yourself, you will have to make your own firebase app. Go to the Firebase site and follow the instructions.
First install Node
Next install the rest of the CLIs by following the instructions linked or running the following commands.
Inside your local copy of the project, navigate to cs-club-official-site/
and run the command npm install
to install the project dependencies. Next, navigate to cs-club-official-site/functions
and run npm install
again.
Firebase -
If you created your own firebase app, you should be able to access your keys/secrets from Firebase Console => Settings
Judge0 - If you want to get the code submission to run, you will need to set up the Judge0 API, also using your own values.