Computing and coding
Computing and coding projects for class 11 and 12: 50 ideas.
Each project below opens to its own page with what it shows, the science behind it, the materials, safety, step-by-step instructions, what you should see and viva questions. Many can be made from things at home; where a kit helps, the page links one.
Other subjects for class 11 and 12: Physics, Chemistry, Biology, Maths, Earth and space, Electronics and robotics, Environment.
Python calculator with functions and a menu loop
Each operation is a separate function, a while loop keeps showing a menu, and an if check stops division by zero. It shows how to organise code into reusable parts.
Python to-do list that saves tasks in a text file
Tasks are written to a file and read back, so the list is still there the next time the program runs. It teaches file handling and lists.
Python text adventure: find the lost key in the school
A dictionary of rooms links each place to the others, and a loop moves the player between them. It shows how data structures can describe a whole game world.
Python daily diary that adds dated entries to a file
The program appends each entry with today’s date to a file and can print the whole diary. It teaches the date module and the append and read modes of files.
Python analysis of class marks from a CSV file
The program reads marks from a CSV file and finds the mean, median, highest, lowest and pass percentage. It shows how code can analyse data that a spreadsheet also holds.
Python chatbot that replies using keyword rules
The bot scans your sentence for keywords and picks a stored reply. It shows how simple chatbots work and why they fail on things they have no rule for, which is a good lesson for AI literacy.
Python password strength checker using made-up passwords
The program scores a password on length, capital letters, small letters, digits and symbols. It shows how longer and mixed passwords are harder to guess and how string methods work.
Python hangman game with a word list and six lives
A set stores guessed letters, a join expression shows the word with blanks and a lives counter ends the game. It combines strings, sets, loops and conditions in one program.
Python bill generator for a kirana shop
A price dictionary and a loop build a neat bill with totals and a discount rule. It shows how everyday billing can be programmed with formatted output.
Python turtle drawing of the Indian tricolour with chakra
A function draws filled rectangles and a loop draws 24 spokes, so the flag is built from geometry and code. It shows how functions and loops reduce repetition.
Python summary of monthly rainfall with a text bar chart
The program stores 12 monthly rainfall values, finds the wettest month and the average, and draws a bar of hash signs for each month. It shows basic data analysis with lists.
Python Caesar cipher with a brute-force code breaker
Each letter is shifted by a key along the alphabet, and trying all 25 keys breaks the code. It shows how simple ciphers work and why they are weak.
Python word counter that finds the ten most common words
The program reads a text file, cleans the words and counts them in a dictionary. It shows how text analysis works and which words dominate ordinary writing.
Python tic-tac-toe for two players with a win checker
A list of nine cells holds the board and a list of eight winning lines is checked after each move. It shows how to model a game with data.
Python student record manager saved in a JSON file
Records of students are stored as nested data in a JSON file and can be added, searched, updated and deleted. It is a small version of how real databases and apps keep data.
Python attendance checker that flags students below 75 percent
The program reads present and total days from a CSV, works out the percentage and writes a second file listing those below 75 percent. It shows reading, calculating and writing data in one pipeline.
HTML and CSS one-page online resume
HTML gives the structure of a resume with sections, and CSS styles fonts, colours and spacing in a separate file. It shows how content and design are kept apart.
HTML and CSS school magazine front page with columns
Semantic tags and CSS columns lay out an article like a newspaper page. It teaches page structure and layout with real content.
HTML and CSS photo gallery with flexbox and hover zoom
Flexbox arranges images in a wrapping grid, and a hover rule enlarges the image under the cursor. It shows modern CSS layout without tables.
HTML contact form with required fields and a dropdown
Form tags collect text, a choice and a message, and HTML attributes check the input before sending. It shows how websites collect information.
CSS navigation bar linking a three-page website
A list of links is turned into a horizontal menu using flexbox, with hover and active-page colours. It shows how a real website’s menu is made from simple lists.
CSS animated Diwali card with a flickering diya
CSS keyframes make a flame flicker and a greeting fade in with no JavaScript. It shows how animation is described by start and end states.
HTML page with a dark mode button that remembers your choice
A button runs a few lines of JavaScript that switch a CSS class, and localStorage keeps the choice for the next visit. It is a first step from static pages to interactive ones.
Spreadsheet marksheet with total, percentage, grade and result
Formulas work out each student’s total, percentage, grade and pass or fail, and nested IF handles the grade bands. It shows how report cards can be calculated automatically.
Spreadsheet attendance register using COUNTIF
Present and absent entries are counted with COUNTIF, converted to a percentage, and flagged when below 75 percent. It shows how formulas can replace manual counting.
Spreadsheet electricity bill estimator with unit slabs
A single formula with MIN and MAX charges different rates for each block of units, as slab billing does. It shows how step-rate pricing works and how to check it.
Spreadsheet rank list with RANK and a VLOOKUP report card
RANK orders students by total and VLOOKUP fetches one student’s full record by roll number to fill a report card. It shows how lookup formulas turn a data table into a report.
Spreadsheet comparing simple and compound interest over 20 years
Two formulas grow the same sum at the same rate, one adding the same interest each year and one adding interest on interest. The chart shows compounding pulling ahead with time.
Spreadsheet sports day scoreboard using SUMIF
Points from many events are added for each house with SUMIF, ranked and drawn as a bar chart. It shows how one list of results can produce a summary.
Digital safety test: can friends spot fake messages?
A set of made-up messages, some genuine-looking and some fake, is sorted by friends using a checklist, and the results show which tricks work best. It teaches how to recognise phishing and scam messages.
Media literacy: check five forwarded messages before sharing
Forwarded claims are checked with a three-step method: who says it, when, and what do reliable sources say. It teaches how to stop false information from spreading.
AI literacy: testing a chatbot with twenty checkable questions
Twenty questions with known answers are put to an AI chatbot and the answers are checked against textbooks, giving an accuracy percentage and a list of confident mistakes. It shows that AI can be useful but must be verified.
AI literacy: train an image classifier on stationery items
A free browser tool learns to tell a pencil, an eraser and a sharpener from webcam examples, and testing shows how the number and variety of examples change accuracy. It teaches how machine learning learns from data.
Digital privacy audit of app permissions with a parent
Apps on a phone are checked for the permissions they hold, such as camera, microphone and location, and compared with what they need. It teaches how to protect privacy by limiting access.
AI literacy: can classmates tell AI-written text from student writing?
Short paragraphs written by students and by an AI tool are mixed and shown to volunteers who guess the author. The results show how hard it is to tell and what clues people use.
Paper flowchart for an ATM withdrawal with three PIN tries
A flowchart with decision diamonds and a loop describes the steps of an ATM withdrawal, including three PIN attempts and a balance check. It shows how to plan an algorithm before coding it.
Sorting number cards by hand: bubble sort against selection sort
Eight number cards are sorted by two methods while counting comparisons and swaps. It shows how different algorithms reach the same answer with different amounts of work.
Binary search against linear search on a sorted roll-number list
Looking for a roll number in a sorted list is done one by one and then by halving, and the steps are counted. It shows why binary search is so much faster for large lists.
SQL mini-database for a school library with a JOIN
Three linked tables for books, members and loans answer questions such as who has which book, using a JOIN. It shows how real databases avoid repeating data.
SQL stock database for a kirana shop with low-stock alerts
One items table answers questions on stock value by category, items running low and best selling price using WHERE, GROUP BY and ORDER BY. It shows how a shop can manage stock with simple queries.
SQL cricket scorecard database with averages and strike rates
Players and match scores in two tables give totals, averages and strike rates with JOIN, GROUP BY and HAVING. It shows how statistics in sports are calculated by queries.
SQL school bus routes database with fares and empty routes
Routes and riders are stored in two tables, and queries give riders per route, fare income and routes with nobody on them using LEFT JOIN. It teaches the difference between inner and outer joins.
Python bank account class with deposit, withdraw and history
A class bundles data and actions for an account, and the code raises errors for overdrawing. It introduces object oriented programming with a familiar example.
Python explorer: prime sieve and Fibonacci golden ratio
One program finds primes with the Sieve of Eratosthenes and generates Fibonacci numbers whose consecutive ratio settles near 1.618. It links number patterns to loops and lists.
Python and pandas analysis of 30 years of monthly rainfall open data
Farmers and city planners ask whether the monsoon is changing. A student can download a public rainfall data set, clean it with pandas and plot monthly averages, yearly totals and a trend line, which teaches data cleaning, statistics and honest conclusions.
Library management database in SQLite with a Python command-line app
A school or a mohalla library often keeps records in a register, and books get lost. A small relational database with books, members and loans tables lets a student issue, return and search books and see overdue lists, which teaches design with primary and foreign keys.
Linear regression to predict used scooter prices with scikit-learn
People who buy a second-hand vehicle want a fair price. A regression model learns from listed prices, age and kilometres how much a scooter is worth. A student can build it from an open data set or from 100 prices noted from classified advertisements, and check how accurate it is.
Flask online quiz app with SQLite score storage and a leaderboard
Teachers in small schools and coaching classes often mark quizzes by hand. A small web app lets students log in, answer multiple-choice questions in a browser, see their score and appear on a leaderboard. The project teaches routes, templates, forms and a database in one application.
K-nearest neighbours classifier on the iris and wine data with a confusion matrix
A first machine learning project should show how a computer decides from examples. The k-nearest neighbours method classifies a new flower or wine by looking at its closest known examples. A student tests how the choice of k and scaling of the features change accuracy.
Tkinter attendance register app with a monthly summary and CSV export
Many coaching centres and small workshops mark attendance in a notebook and later struggle to total it. A desktop app in Python with Tkinter can store students, mark present or absent each day, and give a percentage report, which teaches file handling and a graphical user interface.
