Ready, Set, Code! What You Need to Know about the Congressional App Challenge Rules

The Congressional App Challenge gives middle and high school students across the U.S. the chance to build apps in any programming language or platform. Whether you’re a seasoned coder or just starting out – this is your moment.

What’s Allowed

  • Languages & Platforms: Anything goes. From C, C++, JavaScript, Python, Ruby to block-based coding. Platforms could be PC, mobile, tablet, web, robots – you name it. No restrictions on theme or topic.
  • Team or Solo: You can enter as an individual or form a team of up to four students.

Who’s Eligible

  • You must be a middle or high school student at the time you submit your app.
  • All team members must be U.S. residents when they submit. However, citizenship is not required.
  • If you’re part of a team: at least half of the teammates must be eligible in the district in which you submit. This means they either live there or attend school there.
  • You may submit in the district where you reside or where you attend school.

Key Dates (2025)

  • January 1: Student pre-registration opens
  • May 1: Official launch of the challenge
  • October 30: Deadline to register and submit your app online
  • November: Judges review submissions
  • December: Winners are announced

Tips for Success

  1. Start Early – Even though the deadline is in late October, giving yourself plenty of time means more opportunity to debug, test, and polish.
  2. Pick a Platform You’re Comfortable With, but don’t be afraid to try something new. The rules encourage creativity and exploration.
  3. Team Wisely – A diverse set of skills helps: someone strong in design, another in logic/code, maybe someone good with presentations or visuals.
  4. Document & Test – Make sure your code is documented, your app is tested on all intended devices or browsers, and that you’ve ironed out major bugs.
  5. Stay Within Their Eligibility Rules – Double-check residency/school district eligibility, team size, etc., so your work isn’t disqualified on a technicality.