Challenges
Test your skills and compete with others
Active Challenges
No Active Challenges
Our challenge dashboard is currently empty, but don't worry! We're working on exciting new challenges to test your skills and creativity.
Past Challenges
Movie Recommendation System 🍿🤖
The Movie Recommendation System is a fun and practical tool that suggests movies to users based on their preferences or similarities between movies. Using a dataset (like the popular MovieLens dataset), this system will leverage Pandas for data wrangling and Scikit-learn for building a simple recommendation model. We’ll focus on a content-based filtering approach (recommending movies similar to ones a user likes) or a collaborative filtering approach (based on user ratings), depending on your preference. The result? A neat little system that says, “Hey, you liked The Matrix? Try Inception next!” 🎞️
Key features:
- Load and clean movie data (titles, genres, ratings, etc.) 🧹.
- Build a model to find movie similarities or predict user preferences 🧠.
- Recommend a list of movies based on a given movie or user input 🎯.
- Keep it simple, scalable, and easy to tweak for future enhancements 🚀.
Use of AI: ✅ We encourage the use of AI tools (like ChatGPT, Copilot, etc.) to assist you, but you must understand what you have built.
✅ Be prepared to answer questions about your code and explain your choices if needed.
✅ The focus is on learning and building—AI can help, but don’t just copy-paste! Make sure you grasp the logic and implementation behind your project.
Deliverables:- Participants must submit the following:
📂 GitHub Repository – A link to their repo containing all project files and code.
📄 README File (included in the repo) with:
📝 Explanation of their work – A brief description of their project and thought process.
🌍 Live Deployed Link – A URL to their hosted portfolio (e.g., Vercel, Netlify, GitHub Pages).
✨ List of Unique Features – Highlight any extra features or customizations they implemented.
🤖 AI Usage (if applicable) – Mention which AI tools were used and for what purpose.
🔹 Reminder: AI tools can be helpful, but participants must understand their code and be able to explain it. 🚀
Todo List App 📝✨
Description 🎉
The Todo List App is your go-to buddy for staying organized! Whether you’re juggling work tasks, planning your day, or just trying to remember to water your plants 🌱, this app has you covered. It’s a simple yet powerful CRUD (Create, Read, Update, Delete) application that lets you manage tasks with ease. Picture this: a clean, snappy interface where you can jot down tasks, check them off with a satisfying ✅, tweak them when plans change, and toss them out 🗑️ when they’re done. Built with modern tools, it’s fast, fun, and functional! 🚀
Here’s what it does:
- Create 🎨: Add a shiny new task with a title and an optional description—perfect for those quick ideas or detailed plans.
- Read 👀: See all your tasks in a neat list, with their status (completed? pending? you decide!).
- Update ✏️: Edit a task’s title, description, or flip its status—because life’s unpredictable!
- Delete 🗑️: Say goodbye to tasks you’re done with—no clutter allowed!
- Bonus 🌈: Tasks stick around between sessions (via local storage in React or a database in Flask), so you’re never starting from scratch.
Option 1: React/Vite (JavaScript Frontend) ⚛️💻
Requirements 📋
- Functional Requirements:
- Type a task title and (optional) description in a slick form ✍️.
- See tasks in a list with checkboxes to mark them done ✅ or undone ❌.
- Edit or delete tasks with handy buttons/icons 🛠️🗑️.
- Update tasks on the fly—title, description, or status, you name it!
- Tasks save to your browser’s LocalStorage 🗄️ (or a backend API if you level up later).
- Non-Functional Requirements:
- Looks great on phones 📱 and desktops 🖥️—responsive vibes only!
- Loads lightning-fast thanks to Vite’s magic ⚡.
- Simple, intuitive UI that’s a joy to use 😊.
Technology Stack 🛠️
- Frontend: React ⚛️ (for building cool, reusable components)
- Build Tool: Vite 🌩️ (super speedy dev server and builds)
- State Management: React’s useState/useEffect hooks 🎣 (or Redux if you’re feeling fancy)
- Styling: CSS 🎨 (pick your flavor: vanilla, Tailwind, or styled-components)
- Storage: LocalStorage 💾 (keeps tasks safe in your browser)
- Optional Backend: Node.js + Express 🌐 (for a server-side twist later)
Option 2: Flask (Python Backend with Simple Frontend) 🐍🌐
Requirements 📋
- Functional Requirements:
- Add tasks via a web form (POST it up!) 📬.
- View all tasks on the homepage (GET that list!) 📃.
- Update tasks with new details (PUT some changes!) 🔧.
- Delete tasks when they’re history (DELETE away!) 🗑️.
- Tasks live in a database like SQLite 🗃️—no forgetting allowed!
- Non-Functional Requirements:
- Light and zippy, easy to run anywhere ⚡.
- Basic but clean frontend served by Flask 🎨.
- Safe and sound—no sneaky input messes 🛡️.
Technology Stack 🛠️
- Backend: Flask 🐍 (Python’s lightweight web champ)
- Database: SQLite 🗄️ (simple, no-fuss storage)
- Frontend: HTML + Jinja2 templates 📑, CSS for flair 🎨
- Optional Boosts:
- JavaScript 🌟 (for real-time updates)
- SQLAlchemy 🧪 (fancy database handling)
Build Your Portfolio Website 🚀
Concept:
Create a personal portfolio website that showcases who you are! Start with the essentials—your name, bio, and skills/interests—then personalize it with creative decorations and cool features to make it uniquely yours.
Project Requirements:
Your website must include at least these core elements:
✅ Your Name – A clear heading or title.
✅ Bio – A short introduction about yourself (e.g., "I’m Alex, a coding enthusiast!").
✅ Skills or Interests – A list of at least three things you're good at or enjoy (e.g., Coding, Music, Pizza).
✅ Experience(Optional) – A list of places you had professional experience.
How to Build It:
- Use HTML for structure.
- Use CSS for styling—customize fonts, colours, layouts, and animations!
- Optionally, use JavaScript to add interactivity (e.g., hover effects, animations, dynamic content).
Ensure Code Readability – Write clean, well-commented, and properly formatted code.
Make It Uniquely Yours!
Once the core structure is in place, go all out with creativity:
🎨 Custom Styling: Experiment with fonts, colours, and layouts.
🎬 Animations & Effects: Hover effects, transitions, or even a fun JavaScript-powered feature.
🖼️ Multimedia Elements: Images, videos, or even a music player.
🖱️ Interactive Features: Buttons, forms, or anything engaging.
Use of AI:
✅ We encourage the use of AI tools (like ChatGPT, Copilot, etc.) to assist you, but you must understand what you have built.
✅ Be prepared to answer questions about your code and explain your choices if needed.
✅ The focus is on learning and building—AI can help, but don’t just copy-paste! Make sure you grasp the logic and implementation behind your project.
Deliverables:
Participants must submit the following:
📂 GitHub Repository – A link to their repo containing all project files and code.
📄 README File (included in the repo) with:
- 📝 Explanation of their work – A brief description of their project and thought process.
- 🌍 Live Deployed Link – A URL to their hosted portfolio (e.g., Vercel, Netlify, GitHub Pages).
- ✨ List of Unique Features – Highlight any extra features or customizations they implemented.
🤖 AI Usage (if applicable) – Mention which AI tools were used and for what purpose.
🔹 Reminder: AI tools can be helpful, but participants must understand their code and be able to explain it. 🚀
Scoring & Timeframe:
🏆 Points: Base score 50 + additional 0-100 based on creativity, functionality, and design.
⏳ Deadline: 25 MARCH 2025
Final Goal:
At the end of the project, you'll have a live, professional-looking portfolio website to showcase your skills, creativity, and personality—perfect for resumes, networking, or just for fun!
💡 Remember: Keep your code readable, clean, and well-documented—and most importantly, know what you’ve built! 🚀