🎉 Fair-Mashup 🎯

yeneineh seiba

🎉 Fair-Mashup 🎯

Welcome to Fair-Mashup – the ultimate tool for creating fair and balanced Codeforces mashup contests! 🎊

🌟 What is Fair-Mashup?

Fair-Mashup is a simple yet powerful web-based tool designed to help you build Codeforces mashup contests. The twist? None of the participants in the contest will have solved or even attempted the selected problems before! 🔥
Whether you're a competitive programmer, a trainer, or just a fan of mashups, this tool helps you select problems that match your difficulty preferences and tags, ensuring a level playing field for all participants. No more sneaky participants with unfair advantages! 😉

🚀 Features

Participant Filtering: Add the participants’ usernames and ensure the selected problems haven’t been solved or even attempted (with wrong answers) by any of them.
Problem Tags: Choose problems based on specific tags like dp, graphs, greedy, and many more.
Difficulty Range: Set a minimum and maximum difficulty level to target problems that suit your contest's skill range.
Problem Links: Get direct links to unsolved problems from Codeforces – just one click away!
Mashup-ready: Once the problems are generated, you can use them to create a Codeforces mashup directly.

🛠️ How It Works

Enter the participants' usernames.
Select the tags you're interested in.
Define a difficulty range (minimum and maximum problem ratings).
Hit that submit button! 🎯
Get a list of unsolved problems that participants haven’t solved or even attempted with wrong answers, tailored to your mashup.
Click on the links and open the problems directly on Codeforces.

🧑‍💻 What's Under the Hood?

Fair-Mashup is built with:
Go 🐹 – Our backend that handles the heavy lifting of fetching data from the Codeforces API and filtering it based on participants’ solved problems and attempted problems with wrong answers.
HTML/CSS/JavaScript 🎨 – A clean and responsive frontend interface that makes it super easy to input data and view the results.
No external dependencies 📦 – We like to keep things simple. No need for Node.js or any other package managers. Just pure Go, HTML, CSS, and JavaScript.

🛠️ Installation

Getting started is super easy:
Clone the repo:
Run the Go server:
Open the HTML page: Open localhost:8080 in your favorite browser, and you're ready to go!
Enjoy crafting your contest! 🎉

🎨 Interface

Once you load the page, you’ll find a simple form where you can:
Enter participant handles
Select problem tags
Set the difficulty range
After hitting submit, you’ll get a neatly formatted table with:
Problem Name 🏷️
Difficulty 📊
Tags (displayed as bullet points 🔵 for easy readability)
Contest ID and Index
A link to solve the problem on Codeforces (because time is money, right? 💸)

💡 Use Cases

Trainers: Ensure no participant has prior experience with the problems.
Friends: Want to have a friendly contest? This tool ensures fair play!
Competitive Programming Groups: Plan a contest that is perfectly balanced between all participants.

🔧 Future Improvements

Some cool features we’re thinking about:
Adding more filtering options (like contest types or time constraints).
Adding support for multiple programming contest platforms (Codeforces is just the beginning!).
Dynamic difficulty adjustment based on participants’ previous performances.

🎉 Deployed Project

Want to check out the live version? Click here to explore Fair-Mashup! 🌐

🤝 Contributing

Found a bug? Have a cool feature idea? Pull requests are welcome! You can also open an issue if you want to discuss anything related to the project. Let’s build something awesome together!

📞 Contact Information

Feel free to reach out if you have any questions or suggestions:
Yeneineh Seiba Tonja Email: yeneineh seiba GitHub: yesetoda LinkedIn: yeneineh (yesetoda) seiba
Happy mashup-ing! 🎉
Like this project
0

Posted Oct 26, 2024

Contribute to yesetoda/Fair-Mashup development by creating an account on GitHub.

yesetoda/Loan-Tracker-API
yesetoda/Loan-Tracker-API
yesetoda/Loan-Tracker-API
yesetoda/Loan-Tracker-API