Viva prep · Real questions · Student experiences Enroll in Bootcamp
165 proctors 5262 questions

Lazy IITians Project Mentorship

Prepare in structure for the Project Mentorship.

L1_129 MAD1 Level 1 Jul 31, 2026
  1. 1
    Show your College ID.
  2. 2
    Show your GitHub repository and collaborator.
  3. 3
    Verify GitHub form submission.
  4. 4
    Verify GitHub form submission.
  5. 5
    Show AI/LLM usage.
  6. 6
    Demonstrate the complete application.
  7. 7
    Perform CRUD operations.
  8. 8
    Create sample data (e.g., companies, students, drives, doctors).
  9. 9
    Approve/Reject records.
  10. 10
    Explain project-specific functionalities and design decisions.
  11. 11
    Show additional features beyond the project requirements.
  12. 12
    Explain why certain features were or were not implemented.
  13. 13
    Explain the project folder/file structure.
  14. 14
    Explain models.py.
  15. 15
    Explain a specific section of models.py (random lines).
  16. 16
    Explain routes.py.
  17. 17
    Explain a specific route (e.g., edit slots).
  18. 18
    Explain create_app().
  19. 19
    Explain Controllers in your MVC implementation.
  20. 20
    Explain relationships between models.
  21. 21
    Explain One-to-Many relationships.
  22. 22
    How would you convert a One-to-Many relationship into One-to-One?
  23. 23
    Explain backref.
  24. 24
    What can be used instead of backref? (e.g., back_populates)
  25. 25
    Explain lazy=True.
  26. 26
    Explain __tablename__.
  27. 27
    Explain ON DELETE CASCADE.
  28. 28
    What does cascade="all, delete" mean?
  29. 29
    Difference between filter() and filter_by().
  30. 30
    Explain MVC architecture with respect to your project.
  31. 31
    Explain Flash messages.
  32. 32
    Explain create_app() in Flask.
  33. 33
    Explain HTTP request methods.
  34. 34
    Difference between GET and PUT.
  35. 35
    Difference between PUT and PATCH.
  36. 36
    What are RESTful APIs?
  37. 37
    Explain Jinja Template Inheritance.
  38. 38
    Write a Jinja for loop.
  39. 39
    Explain the HTML <input> tag.
  40. 40
    Explain Bootstrap button styling.
  41. 41
    Prevent duplicate appointments for the same patient, doctor, and time slot.
  42. 42
    Add a new field (e.g., Age, Experience, Salary) and update: Database model Backend routes Frontend form Database storage
  43. 43
    Add validation to prevent selecting a past date.
  44. 44
    Display additional statistics on the dashboard (e.g., Total Applied, Selected, Rejected, Shortlisted).
  45. 45
    Write a Flask route to display filtered records (e.g., approved students/applications).
Level1_107 MAD1 Level 1 Jul 31, 2026
  1. 1
    Show your College ID.
  2. 2
    Show your GitHub repository and collaborator.
  3. 3
    Perform checksum or download the project from the Viva Portal.
  4. 4
    Demonstrate the complete application.
  5. 5
    Focus on CRUD operations (especially Create, Read, Update, Delete).
  6. 6
    Show Admin/User summaries.
  7. 7
    Explain the price/cost calculation logic.
  8. 8
    Explain the CRUD operations in your code.
  9. 9
    Explain a specific route selected by the proctor.
  10. 10
    Explain a specific section of your code.
  11. 11
    If you create a new Python file with a function, will it work without modifying the existing project? Explain why.
  12. 12
    Have you used SQLAlchemy?
  13. 13
    Why did you use SQLAlchemy? What are its advantages?
  14. 14
    Explain the Primary Key.
  15. 15
    Explain the Foreign Key.
  16. 16
    What is MVC? Explain its architecture.
  17. 17
    Why did you use Blueprints?
  18. 18
    What is @login_required? Why is it used?
  19. 19
    Have you used Flask? Where?
  20. 20
    What is Jinja2?
  21. 21
    Why did you use Jinja2?
  22. 22
    How did you build the frontend?
  23. 23
    What are the advantages of HTML and CSS?
  24. 24
    Write a simple Flask route.
  25. 25
    How much AI/LLM did you use in the project?
  26. 26
    Where did you use AI?
  27. 27
    Which part of the project was the most difficult to implement?
Level1_135 MAD1 Level 1 Jul 31, 2026
  1. 1
    Demonstrate the complete application.
  2. 2
    Explain models.py.
  3. 3
    Explain relationships between models.
  4. 4
    Explain cascade.
  5. 5
    Explain lazy loading.
  6. 6
    Add a new column to a model and update the frontend and database to store the new field.
  7. 7
    Explain your routes.
  8. 8
    Modify an existing route.
  9. 9
    What is Flask?
  10. 10
    Explain the tech stack/frameworks used.
  11. 11
    What is Bootstrap?
  12. 12
    Where and how have you used Bootstrap?
  13. 13
    Change the color of a button.
Level2_142 MAD1 Level 1 Jul 31, 2026
  1. 1
    Show your College ID.
  2. 2
    Show your GitHub repository and collaborator.
  3. 3
    Show AI/LLM usage percentage and whether it is mentioned in the report.
  4. 4
    Download the project from the Viva Portal or perform checksum.
  5. 5
    Run the application.
  6. 6
    Demonstrate the complete application.
  7. 7
    Perform all CRUD operations as Admin.
  8. 8
    Show all user roles and their functionalities.
  9. 9
    Show the Summary/Dashboard.
  10. 10
    Show registered users.
  11. 11
    Show booking flow and booked records.
  12. 12
    Explain how the estimated cost/price is calculated.
  13. 13
    Test project-specific scenarios (e.g., duplicate booking prevention, blacklist login, remember-me feature).
  14. 14
    Explain the project directory/folder structure.
  15. 15
    Explain models.py.
  16. 16
    Show where Admin is created in the code.
  17. 17
    Explain a specific route.
  18. 18
    Show where Jinja2 is used in the project.
  19. 19
    Show where MVC is implemented.
  20. 20
    Which database have you used?
  21. 21
    How many database tables are used?
  22. 22
    Explain the database models.
  23. 23
    How are User and Admin differentiated?
  24. 24
    What is ORM?
  25. 25
    Which ORM have you used?
  26. 26
    Why is ORM used?
  27. 27
    What is Cascade?
  28. 28
    Can Cascade be used for operations other than Delete?
  29. 29
    Is your database normalized?
  30. 30
    Explain the Normal Forms (1NF, 2NF, 3NF, etc.).
  31. 31
    What is app.config["SECRET_KEY"]? Why is it required?
  32. 32
    What happens if SECRET_KEY is not defined?
  33. 33
    What is app.app_context().push()? Why is it used?
  34. 34
    What is app = Flask(__name__)?
  35. 35
    What is MVC?
  36. 36
    Why do we use __name__?
  37. 37
    What is REST?
  38. 38
    What are REST principles?
  39. 39
    What is an API?
  40. 40
    Have you implemented REST APIs?
  41. 41
    Explain HTTP methods.
  42. 42
    Can GET be used to send/fetch data?
  43. 43
    Can POST be used to fetch data?
  44. 44
    Can DELETE be used to fetch data?
  45. 45
    Is HTTP stateless or stateful? What is state?
  46. 46
    What frameworks/technologies have you used?
  47. 47
    Why did you choose Flask instead of Django?
  48. 48
    Difference between 2-Tier and 3-Tier Architecture.
  49. 49
    What is Jinja2?
  50. 50
    Why did you use Jinja2?
  51. 51
    Explain an Anchor (<a>) tag with GET/POST behavior.
  52. 52
    Difference between # and . selectors in CSS.
  53. 53
    What is the datatype of an SQLAlchemy query result? (e.g., x = Model.query.filter_by(...))
  54. 54
    Sort table data alphabetically.
  55. 55
    Sort table data alphabetically.
  56. 56
    Display table data in uppercase.
  57. 57
    Change a row layout into a column layout.
  58. 58
    Create a page with input field(s) and a Submit button that displays the entered data on another page.
  59. 59
    Create a route that accepts URL/form parameters and renders another page.
  60. 60
    Create a page to add two numbers and display their sum.
  61. 61
    Validate password length on the frontend.
  62. 62
    Add backend validation requiring a special character in the password.
  63. 63
    Check whether an email exists in the database and display the result.
  64. 64
    Difference between DELETE and TRUNCATE.
  65. 65
    Rate your own project on a scale of 1–10.
Level1_93 MAD1 Level 1 Jul 31, 2026
  1. 1
    Show your GitHub repository and collaborator.
  2. 2
    Confirm GitHub form submission.
  3. 3
    Download the project from the Viva Portal or perform checksum.
  4. 4
    Run the application.
  5. 5
    Demonstrate the complete application.
  6. 6
    Show all core functionalities.
  7. 7
    Demonstrate Admin, User/Student, Company/Staff features.
  8. 8
    Create, update, and delete records (CRUD operations).
  9. 9
    Show booking history, summary/dashboard, search, profile update, approval flow, etc.
  10. 10
    Explain any extra features.
  11. 11
    Explain booking/timestamp calculations.
  12. 12
    Explain how treatment details or other project-specific workflows are implemented.
  13. 13
    Demonstrate duplicate application prevention.
  14. 14
    Explain the project organization/architecture.
  15. 15
    Show the main Python file (app.py).
  16. 16
    Show where the database is initialized.
  17. 17
    Explain routes/controllers.
  18. 18
    Explain a specific route.
  19. 19
    Explain imported modules and why they are used (e.g., request, url_for, session, flash, redirect).
  20. 20
    Explain where SQLAlchemy is initialized.
  21. 21
    Explain where Flask is initialized.
  22. 22
    Explain code logic for a project-specific feature.
  23. 23
    What is ORM / SQLAlchemy?
  24. 24
    Explain database schema.
  25. 25
    Explain any two database tables.
  26. 26
    Explain relationships between tables.
  27. 27
    Explain Primary Key and Foreign Key.
  28. 28
    Explain backref.
  29. 29
    Explain lazy loading.
  30. 30
    What frameworks/technologies did you use?
  31. 31
    Explain any template.
  32. 32
    Where have you used Jinja?
  33. 33
    Have you used Template Inheritance? Where?
  34. 34
    Explain get_or_404().
  35. 35
    Explain redirect().
  36. 36
    Explain session.
  37. 37
    Explain flash().
  38. 38
    Explain url_for().
  39. 39
    Why do we use render_template()?
  40. 40
    How does data move from frontend to backend?
  41. 41
    How does data move from backend to frontend?
  42. 42
    Are frontend and backend validations implemented?
  43. 43
    Write HTML <form> syntax.
  44. 44
    Explain how form submission works.
  45. 45
    Types of CSS (Inline, Internal, External).
  46. 46
    CSS priority/order of execution.
  47. 47
    Write a Jinja for loop.
  48. 48
    Write a Jinja if-else statement.
  49. 49
    Explain HTTP status/error codes (e.g., 500 Internal Server Error, 301, 303 See Other).
  50. 50
    What error code is returned for a database/server issue?
  51. 51
    Write a simple Flask route.
  52. 52
    Write a route that returns Hello World.
  53. 53
    Write a route that returns the square of a number.
  54. 54
    Write a route with URL parameters (e.g., ID).
  55. 55
    Write a route that accepts input from an HTML form and displays it.
  56. 56
    Write a route that renders a list in a template using Jinja.
  57. 57
    Write a route that passes data to a template using render_template().
  58. 58
    Change the page background/UI.
  59. 59
    Write a route to retrieve a record from the database using an ID.
  60. 60
    How are User, Admin, Doctor/Staff roles separated in the application?
  61. 61
    What is datetime used for?
  62. 62
    Where is request used and why?
level 1_91 MAD1 Level 1 Jul 31, 2026
  1. 1
    Demonstrate the complete project.
  2. 2
    Explain your project configuration.
  3. 3
    What can be used instead of .env / python-dotenv for managing configuration?
  4. 4
    Explain the APIs (or routes) used in your project.
  5. 5
    Write basic Jinja code (e.g., loops, variables, or conditions).
  6. 6
    Explain how you implemented charts (e.g., Chart.js integration and data flow).
level1_viva14 MAD1 Level 1 Jul 31, 2026
  1. 1
    Show your GitHub repository.
  2. 2
    Verify GitHub collaborator access.
  3. 3
    Show the AI/LLM usage percentage.
  4. 4
    Download the project from the Viva Portal.
  5. 5
    Run the application.
  6. 6
    Demonstrate the complete application.
  7. 7
    Perform all CRUD operations.
  8. 8
    Demonstrate all Admin, User/Student, and Company functionalities.
  9. 9
    Show the search functionality.
  10. 10
    Explain the booking/appointment logic.
  11. 11
    Explain how the booking cost is calculated.
  12. 12
    Test edge cases (e.g., booking two appointments at the same time).
  13. 13
    Show database models.
  14. 14
    Explain models.py.
  15. 15
    Explain the User model.
  16. 16
    Explain backref.
  17. 17
    Is the Admin user created automatically when the database is initialized?
  18. 18
    What is Cascade in DBMS?
  19. 19
    Explain a solution if duplicate applications should later be allowed despite a unique constraint.
  20. 20
    What is ORM?
  21. 21
    Why is ORM used? What are its advantages?
  22. 22
    What is a Virtual Environment (venv)? Why do we use it?
  23. 23
    What frontend and backend frameworks have you used?
  24. 24
    Difference between frontend validation and backend validation (with examples).
  25. 25
    Explain all HTTP request methods.
  26. 26
    Difference between PUT and PATCH.
  27. 27
    How do CRUD operations map to REST APIs?
  28. 28
    What security features have you implemented?
  29. 29
    What additional security measures would you add?
  30. 30
    How would you improve SQL/database security?
  31. 31
    Add a column showing the total appointments handled by each doctor (excluding cancelled appointments).
  32. 32
    Display the total number of applications submitted by a student.
  33. 33
    Disable the Apply button after a student has already applied.
  34. 34
    Display the student's name and department on the Student Dashboard.
  35. 35
    Create a profile box on the Student Dashboard that: Redirects to the profile page. Appears at a specified location. Dynamically displays the student's name. Uses a specific color.
  36. 36
    Suggest an additional template/page showing details of the user booking a parking slot.
  37. 37
    Answer hypothetical scenarios based on your application design and implementation.
level2_139 MAD1 Level 1 Jul 31, 2026
  1. 1
    Show your College ID.
  2. 2
    Download the submitted project from the Viva Portal.
  3. 3
    Run the application.
  4. 4
    Show models.py.
  5. 5
    Show the percentage of AI/LLM used in the project.
  6. 6
    Demonstrate the complete application.
  7. 7
    Show all core functionalities.
  8. 8
    Log in as Admin and: Create a new parking lot. Edit a parking lot. Reduce available spots to 0 and 1. View users. View summary charts. Logout.
  9. 9
    Log in as User and: Book a parking spot. Vacate a parking spot. View summary charts. Logout.
  10. 10
    Explain how the parking cost is calculated.
  11. 11
    Difference between PUT and POST.
  12. 12
    What is a Primary Key?
  13. 13
    Write a Jinja for loop.
  14. 14
    Write a query to fetch a specific user by User ID.
  15. 15
    Write a query to fetch all users.
  16. 16
    Write a query to fetch parking spots belonging to a specific Lot ID.
  17. 17
    Modify the application so the Admin dashboard displays the total number of users.
Created for educational purposes only. Questions are based on students' personal experiences and may not reflect actual exam content.