Viva prep · Real questions · Student experiences Enroll in Bootcamp

Proctor workspace

Proctor Level1_107

Share your experience Add your viva experience here
106 Questions
17 Sets
0 Topics
12 Reviews
Tips for this examiner: She is sweet and no meet for checksum and she ask very few questions

Student reviews

Sheet response MAD1

Keep it quick. Don't delay. He is not rude, but he's really not lenient. He will score you a little on the tougher side, so answer to the point. Don't shy away from asking for clarification before answering the question. I messed up on that.

But yeah, the main focus is your code. He is more focused on the backend.

Questions remembered
  1. * Show ID.
  2. * Show GitHub.
  3. * Download and spin up the project.
  4. * He will walk you through the features he wants to see.
  5. * Focus more on the Celery tasks. Be ready to make time changes or work on the email export functionality.
  6. * Coding question: Write a simple Celery task. Know both how to send it with `.delay()` and how to retrieve the result. Also know how to connect it with APIs.
  7. * What does `fetch()` do?
  8. * What is `localStorage` vs `sessionStorage`?
  9. * How have you implemented authentication? How do RBAC and the JWT decorator work?
Kaakh MAD1

She's nice

Questions remembered
  1. Level1_107
  2. Id
  3. Github
  4. Demo
  5. What's jinja and how have you used it
  6. Write a route in flask
  7. Viva over in 12 mins
Sheet response MAD1

It took me time to download the project from the portal as my laptop was working pretty slowly. Examiner waited patiently. Overall, seemed nice.
At the end, advised me to focus on coding and preparing the demo better for level 2 viva.
Go through all the questions in this sheet and you should be fine :)

Questions remembered
  1. Level 1 Viva
  2. Asked to show id card and github repo
  3. Asked to download project from viva portal
  4. I gave the demonstration
  5. Theory Questions: - which orm have you used (sqlalchemy) and what are its benefits? - advantages of using jinja - difference between authentication and authorization
  6. Asked me to write a simple route which returns 'hello world' Viva was over in about 15 minutes.
Aheartz MAD1

She was sweet n patient.
Adviced me to prepare coding part well for the level 2.

Questions remembered
  1. Asked me to show ID (soft copy ) and Collaborators in git.
  2. Then I demonstrated the project and she didn't interrupt me in between.
  3. Asked me questions regarding: -Can admin reject the companies? I said yes as he can manages students, companies n drives. -Advantages of jinja. -Authentication vs Authorization. -GET and Post. Asked me to change code : -Simple hello route I answered all.
Sheet response MAD1

she is very chill and respectful. just mind your manners and keep everything open beforehand to avoid delays

Questions remembered
  1. level1 viva
  2. show id card
  3. show github collaborator
  4. gave me the option to download or do checksum (i chose the first option)
  5. asked demo (i took some time and explained neatly, always take time and explain it properly!)
  6. have you used flask, sql alchemy, jinja for this proj? literally thats it
Heisenberg MAD1

Know your code and learn the repeated theory questions. That'll do

Questions remembered
  1. Asked me to show my student ID and then checked the collaborators in github
  2. Project Demo
  3. Explain the CRUD operations in the code
  4. Have you used SQLAlchemy? If yes, what are its uses?
  5. Explain about the price allocation in your code
  6. Have you used AI? If so, explain where
Harika MAD1

She's friendly and kinda easy going. Be respectful and know your theory and code properly.

Questions remembered
  1. Showed id
  2. Github repo and collaborator
  3. Asked for demo(didnt have to run checksum because i downloaded the project in front of her)
  4. Asked if I used sqlalchemy and its advantages
  5. Asked which part of the code was the toughest while coding for me
  6. Gave a positive feedback and wished good luck for level 2
HARSH MAD1

All Good she is just like normal proctor

Questions remembered
  1. Verification – She first asked me to show the GitHub collaborator.
  2. App Demonstration – She asked me to demonstrate the app from the downloaded file on the project dashboard.
  3. Feature Check – She checked all the features of the application.
  4. Questions Asked –
  5. Have you used SQLAlchemy in your project? If yes, how did it help?
  6. How much AI have you used in your project, and what are its uses?
  7. If you create a new file in your app and write a function, will it run and work without making any changes to the existing code?
  8. No code Changes were asked to do .
  9. Previously some student told me she asked about GET/POST
  10. What is primary key and foreign key ?
  11. What is MVC?
Sheet response MAD1

Shared viva questions from response sheet: 1.show id card; show github repository with collaborator; asked me to perform checksum live again 4.asked to show demo, major focus was only on the curd operation 5.have you made a summary for admin and user? what did you use ?

Questions remembered
  1. 1.show id card
  2. show github repository with collaborator
  3. asked me to perform checksum live again 4.asked to show demo, major focus was only on the curd operation 5.have you made a summary for admin and user? what did you use ?
  4. have you used sqlalchemy , explain why? 7.how did you make the frontend 8.about Jinja
... MAD1

Shared viva questions from response sheet: ask me about id card, github repository with collaborator, and perform checksum; ask me about sqlalchemy and jinja 2; specfic route explaination

Questions remembered
  1. ask me about id card, github repository with collaborator, and perform checksum
  2. ask me about sqlalchemy and jinja 2
  3. specfic route explaination
  4. what is the meaning and the use of @login required
Anonymous MAD1

Shared viva questions from response sheet: THIS IS LEVEL 1 VIVA; Show your ID card.; Demonstrate(main focus on CRID Operations).

Questions remembered
  1. THIS IS LEVEL 1 VIVA
  2. Show your ID card.
  3. Demonstrate(main focus on CRID Operations).
  4. Pointed out a specific part code and asked me to explain.
  5. why did you use blueprint?
  6. Advantages of HTML and CSS.
Pragati Chandra MAD1

She is sweet and no meet for checksum and she ask very few questions

Questions remembered
  1. Show ID Demo ( her focus is on if you can delete or edit the lot or not) 1)explain MVC architecture 2)Why we use Jinja2
  2. explain Primary key

Approved viva sets

  1. 1
    -asked for the id then github
    Times asked 2
  2. 2
    -then i downloaded the submission ran it , first i messed up by running npm install in the backend folder
    Times asked 2
  3. 3
    -but i asked him if i can run it again he allowed me to
    Times asked 2
  4. 4
    - then asked me about the functionalities in the app while i was giving the demo
    Times asked 2
  5. 5
    - then he asked me to export csv report for a student
    Times asked 2
  6. 6
    -then he asked me for gen report for admin but it was a beat task so i went to change the time in crontab , i messed this up
    Times asked 2
  7. 7
    - asked me to open notepad and write a celery task to add 2 numbers and a route to get the two numbers, and then he asked to write another route for the result
    Times asked 2
  8. 8
    - i did small logical and syntax mistakes
    Times asked 2
  9. 9
    -he asked me what authentication u have used -JWT
    Times asked 2
  10. 10
    - what are vue directives , then examples of them
    Times asked 2
  11. 11
    - diff betwn session storage and local storage
    Times asked 2
Advice: He is patient at the beginning but as we procees he starts to interrupt and cross question , not a guy u want as proctor , whenever I messed up with anything he does not care and does not give any hint or help us , just tries to cross questions , are u sure ? and all , keep ur coding knowledge strong and be confident while answering Hope u dont get him as proctor All the Best
  1. 1
    PRACTICE CODING QUESTION if you want to pass, he gave me d/e even though i answered a lot of questions and solved a coding
    Times asked 2
  2. 2
    practice login route, vue component and celery task live coding
    Times asked 2
  3. 3
    and basic theory questions backreffing, lifecycles in vue and all
    Times asked 2
Advice: he is a very uncool and bad guy, he will deliberately give you poor marks and primarily judge your code on the basis of ai written code
  1. 1
    * Download and spin up the project.
    Times asked 1
    Official solution

    SimpleExaminer portal wala submitted ZIP chahta hai. Local extra changes mat dikhana.

    Suggested flow1) Portal ZIP download
    2) Extract
    3) venv + pip install -r requirements.txt
    4) flask run / python app.py

  2. 2
    * He will walk you through the features he wants to see.
    Times asked 1
    Official solution

    SimplePehle 1-line definition, phir apne MAD1 project mein file dikhao, phir chhota example.

    Suggested flow1) Concept kya hai?
    2) Mere code mein kahan?
    3) Example / demo
    4) Edge case

    Example

    # related file: models.py / routes / template
    # formula: request → check/auth → DB → render/redirect

    Viva tipExact line yaad nahi to honestly related part dikhao. Bluff mat karo.

  3. 3
    * Focus more on the Celery tasks. Be ready to make time changes or work on the email export functionality.
    Times asked 1
    Official solution

    SimpleLive UI change: relevant CSS/HTML template kholo — color, margin, flex, bootstrap class. Save + hard refresh.

    Example

    /* button red */
    .btn-primary { background: red; }
    
    /* center navbar item */
    .navbar { justify-content: center; }

    Viva tipDevTools se pehle try, phir file mein permanent change.

  4. 4
    * Coding question: Write a simple Celery task. Know both how to send it with `.delay()` and how to retrieve the result. Also know how to connect it with APIs.
    Times asked 1
    Official solution

    SimpleLive coding: notepad/editor mein chhota Flask route / Jinja loop / model field. Calm raho, run karke dikhao.

  5. 5
    * What does `fetch()` do?
    Times asked 1
    Official solution

    SimplePehle 1-line definition, phir apne MAD1 project mein file dikhao, phir chhota example.

    Suggested flow1) Concept kya hai?
    2) Mere code mein kahan?
    3) Example / demo
    4) Edge case

    Example

    # related file: models.py / routes / template
    # formula: request → check/auth → DB → render/redirect

    Viva tipExact line yaad nahi to honestly related part dikhao. Bluff mat karo.

  6. 6
    * What is `localStorage` vs `sessionStorage`?
    Times asked 1
    Official solution

    SimplelocalStorage browser mein key-value string store karta hai — tab band hone pe bhi rehta hai. Token/theme ke liye use.

    Example

    localStorage.setItem('token', jwt)
    const t = localStorage.getItem('token')
    localStorage.removeItem('token')

    Viva tipSensitive password mat rakho. XSS se steal ho sakta hai — HttpOnly cookie safer for session.

  7. 7
    * How have you implemented authentication? How do RBAC and the JWT decorator work?
    Times asked 1
    Official solution

    Simplelogin_required jaisa decorator protected routes pe: session nahi to login redirect.

    Example

    def login_required(fn):
        @wraps(fn)
        def wrapper(*a, **k):
            if 'user_id' not in session:
                return redirect(url_for('auth.login'))
            return fn(*a, **k)
        return wrapper
Advice: Keep it quick. Don't delay. He is not rude, but he's really not lenient. He will score you a little on the tougher side, so answer to the point. Don't shy away from asking for clarification before answering the question. I messed up on that. But yeah, the main focus is your code. He is more focused on the backend.
  1. 1
    Level1_107
    Times asked 1
    Official solution

    SimpleLevel = viva difficulty band. Level 1 usually demo + basics; higher pe live coding + deeper theory.

    Viva tipJo level assign hai uske hisaab se demo + theory ready rakho.

  2. 2
    What's jinja and how have you used it
    Times asked 1
    Official solution

    SimpleJinja2 Flask ka template engine — HTML ke andar {{ }} variables, {% %} logic.

    Example

    {% for lot in lots %}
      <li>{{ lot.name }} — {{ lot.spots }}</li>
    {% else %}
      <p>No lots</p>
    {% endfor %}
  3. 3
    Viva over in 12 mins
    Times asked 1
    Official solution

    SimpleViva wrap-up hai. Short thanks + confirm submission ZIP latest hai.

Advice: She's nice
  1. 1
    Asked to show id card and github repo
    Times asked 1
    Official solution

    SimpleCamera pe clearly college/IITM ID dikhao — naam aur photo match hone chahiye.

    Viva tipPehle se ID haath mein rakho, glare mat aane do. Iske baad GitHub + project run.

  2. 2
    Asked to download project from viva portal
    Times asked 1
    Official solution

    SimpleExaminer portal wala submitted ZIP chahta hai. Local extra changes mat dikhana.

    Suggested flow1) Portal ZIP download
    2) Extract
    3) venv + pip install -r requirements.txt
    4) flask run / python app.py

  3. 3
    I gave the demonstration
    Times asked 1
    Official solution

    SimpleDemo script pehle se practice: 5–7 min, Admin + User roles, saare mandatory features.

    Suggested flow1) Register/login user
    2) Admin login — CRUD
    3) Approval/blacklist
    4) Booking/apply + edge case
    5) Search
    6) Logout

    Viva tipBolte-bolte dikhao. Code tab kholna jab poochhein.

  4. 4
    Asked me to write a simple route which returns 'hello world' Viva was over in about 15 minutes.
    Times asked 1
    Official solution

    SimpleLive Flask coding: chhota route likho, save, browser/curl se test. Syntax error terminal mein padho.

    Example

    @app.route('/ping')
    def ping():
        return jsonify(ok=True)
    
    @app.route('/even/<int:n>')
    def even(n):
        return 'even' if n % 2 == 0 else 'odd'
Advice: It took me time to download the project from the portal as my laptop was working pretty slowly. Examiner waited patiently. Overall, seemed nice. At the end, advised me to focus on coding and preparing the demo better for level 2 viva. Go through all the questions in this sheet and you should be fine :)
  1. 1
    Asked me to show ID (soft copy ) and Collaborators in git.
    Times asked 1
    Official solution

    SimpleGitHub repo open karo: commits, collaborators, README. Examiner check karta hai tumne khud kaam kiya.

    Example

    Settings → Collaborators
    Commits: regular messages, last-day dump nahi.

    Viva tipPrivate repo access pehle de do. Main branch submitted ZIP se match honi chahiye.

  2. 2
    Then I demonstrated the project and she didn't interrupt me in between.
    Times asked 1
    Official solution

    SimpleDemo script pehle se practice: 5–7 min, Admin + User roles, saare mandatory features.

    Suggested flow1) Register/login user
    2) Admin login — CRUD
    3) Approval/blacklist
    4) Booking/apply + edge case
    5) Search
    6) Logout

    Viva tipBolte-bolte dikhao. Code tab kholna jab poochhein.

Advice: She was sweet n patient. Adviced me to prepare coding part well for the level 2.
  1. 1
    level1 viva
    Times asked 2
    Official solution

    SimpleLevel = viva difficulty band. Level 1 usually demo + basics; higher pe live coding + deeper theory.

    Viva tipJo level assign hai uske hisaab se demo + theory ready rakho.

  2. 2
    gave me the option to download or do checksum (i chose the first option)
    Times asked 1
    Official solution

    SimpleExaminer wohi ZIP chahta hai jo tumne submit kiya, local extra magic nahi.

    Portal download → extract → redis, venv, pip, npm, flask, worker, beat.

    Checksum maange to hash. Uncommitted files mat dikhana.

    Examiner 2 cheezein: simple desi line + tumhare project ki exact file.

    Pehle ID, GitHub, portal ZIP. Phir run: Redis + Flask + worker + beat + Vue. Feature demo: login, RBAC, cache hit/miss, Celery mail, search.

    Line pe ungli: input kahan, kaunsa check, query/cache/task, JSON/UI. Copilot band. Jo nahi kiya honestly bolo + kaise add karte.

    Suggested flow1) ZIP
    2) Extract
    3) Redis + venv + pip
    4) npm/vite
    5) flask + celery worker + beat

    Project example: Submitted zip run. README commands copy.

    Viva tipChecksum maange to hash match karke dikhao. Extra uncommitted files mat dikhana.

  3. 3
    asked demo (i took some time and explained neatly, always take time and explain it properly!)
    Times asked 1
    Official solution

    SimpleDemo script pehle se practice: 5–7 min, Admin + User roles, saare mandatory features.

    Suggested flow1) Register/login user
    2) Admin login — CRUD
    3) Approval/blacklist
    4) Booking/apply + edge case
    5) Search
    6) Logout

    Viva tipBolte-bolte dikhao. Code tab kholna jab poochhein.

  4. 4
    have you used flask, sql alchemy, jinja for this proj? literally thats it
    Times asked 1
    Official solution

    SimpleJinja for loop list render karta hai. loop.index, else branch empty list pe.

    Example

    {% for u in users %}
      <tr><td>{{ loop.index }}</td><td>{{ u.email }}</td></tr>
    {% endfor %}
Advice: she is very chill and respectful. just mind your manners and keep everything open beforehand to avoid delays
  1. 1
    Explain about the price allocation in your code
    Times asked 1
    Official solution

    SimpleCode explain formula: input kya aaya → auth/validation → DB change → response/UI.

    Viva tipFunction signature + 3-4 important lines + edge case.

  2. 2
    Have you used AI? If so, explain where
    Times asked 1
    Official solution

    SimpleCode explain formula: input kya aaya → auth/validation → DB change → response/UI.

    Viva tipFunction signature + 3-4 important lines + edge case.

Advice: Know your code and learn the repeated theory questions. That'll do
  1. 1
    Showed id
    Times asked 3
    Official solution

    SimpleCamera pe clearly college/IITM ID dikhao — naam aur photo match hone chahiye.

    Viva tipPehle se ID haath mein rakho, glare mat aane do. Iske baad GitHub + project run.

  2. 2
    Asked for demo(didnt have to run checksum because i downloaded the project in front of her)
    Times asked 1
    Official solution

    SimpleExaminer portal wala submitted ZIP chahta hai. Local extra changes mat dikhana.

    Suggested flow1) Portal ZIP download
    2) Extract
    3) venv + pip install -r requirements.txt
    4) flask run / python app.py

  3. 3
    Asked if I used sqlalchemy and its advantages
    Times asked 1
    Official solution

    SimpleSQLAlchemy MAD1 ka common ORM. Flask-SQLAlchemy wrapper se db.Model, db.session.

    Example

    user = User(email='a@b.com')
    db.session.add(user)
    db.session.commit()
    users = User.query.filter_by(role='admin').all()
  4. 4
    Asked which part of the code was the toughest while coding for me
    Times asked 1
    Official solution

    SimpleLive Flask coding: chhota route likho, save, browser/curl se test. Syntax error terminal mein padho.

    Example

    @app.route('/ping')
    def ping():
        return jsonify(ok=True)
    
    @app.route('/even/<int:n>')
    def even(n):
        return 'even' if n % 2 == 0 else 'odd'
  5. 5
    Gave a positive feedback and wished good luck for level 2
    Times asked 1
    Official solution

    SimpleEnd of viva note — kuch extra nahi. Agar time bache to ek unique feature highlight karo.

Advice: She's friendly and kinda easy going. Be respectful and know your theory and code properly.
  1. 1
    Verification – She first asked me to show the GitHub collaborator.
    Times asked 1
    Official solution

    SimpleGitHub repo open karo: commits, collaborators, README. Examiner check karta hai tumne khud kaam kiya.

    Example

    Settings → Collaborators
    Commits: regular messages, last-day dump nahi.

    Viva tipPrivate repo access pehle de do. Main branch submitted ZIP se match honi chahiye.

  2. 2
    App Demonstration – She asked me to demonstrate the app from the downloaded file on the project dashboard.
    Times asked 1
    Official solution

    SimpleDemo script pehle se practice: 5–7 min, Admin + User roles, saare mandatory features.

    Suggested flow1) Register/login user
    2) Admin login — CRUD
    3) Approval/blacklist
    4) Booking/apply + edge case
    5) Search
    6) Logout

    Viva tipBolte-bolte dikhao. Code tab kholna jab poochhein.

  3. 3
    Feature Check – She checked all the features of the application.
    Times asked 1
    Official solution

    SimplePehle 1-line definition, phir apne MAD1 project mein file dikhao, phir chhota example.

    Suggested flow1) Concept kya hai?
    2) Mere code mein kahan?
    3) Example / demo
    4) Edge case

    Example

    # related file: models.py / routes / template
    # formula: request → check/auth → DB → render/redirect

    Viva tipExact line yaad nahi to honestly related part dikhao. Bluff mat karo.

  4. 4
    Questions Asked –
    Times asked 1
    Official solution

    SimpleViva wrap-up hai. Short thanks + confirm submission ZIP latest hai.

  5. 5
    How much AI have you used in your project, and what are its uses?
    Times asked 1
    Official solution

    SimpleCode explain formula: input kya aaya → auth/validation → DB change → response/UI.

    Viva tipFunction signature + 3-4 important lines + edge case.

  6. 6
    If you create a new file in your app and write a function, will it run and work without making any changes to the existing code?
    Times asked 1
    Official solution

    SimpleDemo script pehle se practice: 5–7 min, Admin + User roles, saare mandatory features.

    Suggested flow1) Register/login user
    2) Admin login — CRUD
    3) Approval/blacklist
    4) Booking/apply + edge case
    5) Search
    6) Logout

    Viva tipBolte-bolte dikhao. Code tab kholna jab poochhein.

  7. 7
    No code Changes were asked to do .
    Times asked 1
    Official solution

    SimpleLive Flask coding: chhota route likho, save, browser/curl se test. Syntax error terminal mein padho.

    Example

    @app.route('/ping')
    def ping():
        return jsonify(ok=True)
    
    @app.route('/even/<int:n>')
    def even(n):
        return 'even' if n % 2 == 0 else 'odd'
  8. 8
    Previously some student told me she asked about GET/POST
    Times asked 1
    Official solution

    SimpleGET data read/show karta hai (idempotent). POST create/submit karta hai (form).

    Example

    @app.route('/login', methods=['GET', 'POST'])
    def login():
        if request.method == 'POST':
            # validate + session
            ...
        return render_template('login.html')
  9. 9
    What is primary key and foreign key ?
    Times asked 1
    Official solution

    SimplePrimary key row ka unique identity — usually id Integer autoincrement.

    Example

    id = db.Column(db.Integer, primary_key=True)
Advice: All Good she is just like normal proctor
  1. 1
    asked me to perform checksum live again 4.asked to show demo, major focus was only on the curd operation 5.have you made a summary for admin and user? what did you use ?
    Times asked 1
    Official solution

    SimpleDemo script pehle se practice: 5–7 min, Admin + User roles, saare mandatory features.

    Suggested flow1) Register/login user
    2) Admin login — CRUD
    3) Approval/blacklist
    4) Booking/apply + edge case
    5) Search
    6) Logout

    Viva tipBolte-bolte dikhao. Code tab kholna jab poochhein.

  1. 1
    ask me about id card, github repository with collaborator, and perform checksum
    Times asked 1
    Official solution

    SimpleGitHub repo open karo: commits, collaborators, README. Examiner check karta hai tumne khud kaam kiya.

    Example

    Settings → Collaborators
    Commits: regular messages, last-day dump nahi.

    Viva tipPrivate repo access pehle de do. Main branch submitted ZIP se match honi chahiye.

  2. 2
    ask me about sqlalchemy and jinja 2
    Times asked 1
    Official solution

    SimpleSQLAlchemy MAD1 ka common ORM. Flask-SQLAlchemy wrapper se db.Model, db.session.

    Example

    user = User(email='a@b.com')
    db.session.add(user)
    db.session.commit()
    users = User.query.filter_by(role='admin').all()
  3. 3
    specfic route explaination
    Times asked 1
    Official solution

    SimpleCode explain formula: input kya aaya → auth/validation → DB change → response/UI.

    Viva tipFunction signature + 3-4 important lines + edge case.

  4. 4
    what is the meaning and the use of @login required
    Times asked 1
    Official solution

    SimplePehle 1-line definition, phir apne MAD1 project mein file dikhao, phir chhota example.

    Suggested flow1) Concept kya hai?
    2) Mere code mein kahan?
    3) Example / demo
    4) Edge case

    Example

    # related file: models.py / routes / template
    # formula: request → check/auth → DB → render/redirect

    Viva tipExact line yaad nahi to honestly related part dikhao. Bluff mat karo.

  1. 1
    THIS IS LEVEL 1 VIVA
    Times asked 1
    Official solution

    SimpleLevel = viva difficulty band. Level 1 usually demo + basics; higher pe live coding + deeper theory.

    Viva tipJo level assign hai uske hisaab se demo + theory ready rakho.

  2. 2
    Show your ID card.
    Times asked 23
    Official solution

    SimpleCamera pe clearly college/IITM ID dikhao — naam aur photo match hone chahiye.

    Viva tipPehle se ID haath mein rakho, glare mat aane do. Iske baad GitHub + project run.

  3. 3
    Demonstrate(main focus on CRID Operations).
    Times asked 1
    Official solution

    SimpleDemo script pehle se practice: 5–7 min, Admin + User roles, saare mandatory features.

    Suggested flow1) Register/login user
    2) Admin login — CRUD
    3) Approval/blacklist
    4) Booking/apply + edge case
    5) Search
    6) Logout

    Viva tipBolte-bolte dikhao. Code tab kholna jab poochhein.

  4. 4
    Pointed out a specific part code and asked me to explain.
    Times asked 1
    Official solution

    SimpleCode explain formula: input kya aaya → auth/validation → DB change → response/UI.

    Viva tipFunction signature + 3-4 important lines + edge case.

  1. 1
    -asked for the id then github
    Times asked 2
    Official solution

    SimpleGitHub repo open karo: commits, collaborators, README. Examiner check karta hai tumne khud kaam kiya.

    Example

    Settings → Collaborators
    Commits: regular messages, last-day dump nahi.

    Viva tipPrivate repo access pehle de do. Main branch submitted ZIP se match honi chahiye.

  2. 2
    -then i downloaded the submission ran it , first i messed up by running npm install in the backend folder
    Times asked 2
    Official solution

    SimpleServer-Sent Events: server → browser one-way stream (text/event-stream). WebSocket full duplex hai; SSE simpler notifications ke liye.

    Example

    # client
    const es = new EventSource('/stream');
    es.onmessage = (e) => console.log(e.data);
  3. 3
    -but i asked him if i can run it again he allowed me to
    Times asked 2
    Official solution

    SimplePehle 1-line definition, phir apne MAD1 project mein file dikhao, phir chhota example.

    Suggested flow1) Concept kya hai?
    2) Mere code mein kahan?
    3) Example / demo
    4) Edge case

    Example

    # related file: models.py / routes / template
    # formula: request → check/auth → DB → render/redirect

    Viva tipExact line yaad nahi to honestly related part dikhao. Bluff mat karo.

  4. 4
    - then asked me about the functionalities in the app while i was giving the demo
    Times asked 2
    Official solution

    SimpleDemo script pehle se practice: 5–7 min, Admin + User roles, saare mandatory features.

    Suggested flow1) Register/login user
    2) Admin login — CRUD
    3) Approval/blacklist
    4) Booking/apply + edge case
    5) Search
    6) Logout

    Viva tipBolte-bolte dikhao. Code tab kholna jab poochhein.

  5. 5
    - then he asked me to export csv report for a student
    Times asked 2
    Official solution

    SimpleClick → Celery → worker CSV → email/download. Columns verify.

    csv module. Auth required. Don't freeze UI — 202 + poll.

    Examiner 2 cheezein: simple desi line + tumhare project ki exact file.

    Pehle ID, GitHub, portal ZIP. Phir run: Redis + Flask + worker + beat + Vue. Feature demo: login, RBAC, cache hit/miss, Celery mail, search.

    Line pe ungli: input kahan, kaunsa check, query/cache/task, JSON/UI. Copilot band. Jo nahi kiya honestly bolo + kaise add karte.

    Example

    @celery.task
    def export_venues_csv(user_id):
        rows = Venue.query.all()
        # csv.writer, mail.send
        return 'ok'

    Project example: Admin export venues. MailHog attach ya file open.

    Viva tipNetwork tab mein job trigger API dikhao, phir MailHog/file open karke columns verify karo.

  6. 6
    -then he asked me for gen report for admin but it was a beat task so i went to change the time in crontab , i messed this up
    Times asked 2
    Official solution

    SimpleLive UI change: relevant CSS/HTML template kholo — color, margin, flex, bootstrap class. Save + hard refresh.

    Example

    /* button red */
    .btn-primary { background: red; }
    
    /* center navbar item */
    .navbar { justify-content: center; }

    Viva tipDevTools se pehle try, phir file mein permanent change.

  7. 7
    - asked me to open notepad and write a celery task to add 2 numbers and a route to get the two numbers, and then he asked to write another route for the result
    Times asked 2
    Official solution

    SimpleLive Flask coding: chhota route likho, save, browser/curl se test. Syntax error terminal mein padho.

    Example

    @app.route('/ping')
    def ping():
        return jsonify(ok=True)
    
    @app.route('/even/<int:n>')
    def even(n):
        return 'even' if n % 2 == 0 else 'odd'
  8. 8
    - i did small logical and syntax mistakes
    Times asked 2
    Official solution

    SimpleViva wrap-up hai. Short thanks + confirm submission ZIP latest hai.

  9. 9
    -he asked me what authentication u have used -JWT
    Times asked 2
    Official solution

    SimpleAuthentication: tu kaun hai? (login). Authorization: tujhe permission hai? (role check).

    Example

    # auth
    if check_password_hash(user.password, pwd):
        session['user_id'] = user.id
    
    # authz
    if user.role != 'admin':
        abort(403)
  10. 10
    - what are vue directives , then examples of them
    Times asked 2
    Official solution

    SimpleDirectives Vue ke special attributes — HTML ko superpower.

    v-if/else/show, v-for, v-bind (:), v-on (@), v-model, v-html (XSS), v-cloak, v-slot.

    :src = v-bind:src. @click = v-on:click.

    Custom directives bhi (v-focus) — course basics kaafi.

    Example

    <p v-if="ok">Yes</p>
    <li v-for="u in users" :key="u.id">{{ u.name }}</li>
    <input v-model="email">
    <img :src="url">

    Project example: List v-for :key. Form v-model. Admin v-if. Image :src.

    Viva tip: src ke liye v-bind:src ka shorthand. @click = v-on:click.

  11. 11
    - diff betwn session storage and local storage
    Times asked 2
    Official solution

    SimpleMAD1 mein usually session-based auth: login pe session['user_id'], har request pe verify.

    Example

    session['user_id'] = user.id
    uid = session.get('user_id')
    user = User.query.get(uid)

    Viva tipSECRET_KEY set karo warna session insecure. logout pe session.clear().

Advice: He is patient at the beginning but as we procees he starts to interrupt and cross question , not a guy u want as proctor , whenever I messed up with anything he does not care and does not give any hint or help us , just tries to cross questions , are u sure ? and all , keep ur coding knowledge strong and be confident while answering Hope u dont get him as proctor All the Best
  1. 1
    PRACTICE CODING QUESTION if you want to pass, he gave me d/e even though i answered a lot of questions and solved a coding
    Times asked 2
    Official solution

    SimpleLive coding: notepad/editor mein chhota Flask route / Jinja loop / model field. Calm raho, run karke dikhao.

  2. 2
    practice login route, vue component and celery task live coding
    Times asked 2
    Official solution

    SimpleCelery = background naukri. HTTP request ko 10 second email bhejne ke liye mat rokna.

    Distributed task queue: aap function ko abhi nahi, worker process mein later/retry/schedule pe chalaate ho.

    MAD2 typical jobs: daily reminder mail, monthly HTML report, user-triggered CSV export.

    Web request 200ms hona chahiye. 10,000 emails request thread mein = timeout. Worker alag CPU pe kaam kare.

    Redis broker chahiye. Beat alag process schedule ke liye.

    Example

    @celery.task
    def daily_reminder():
        for u in User.query.filter_by(active=True):
            send_mail(u.email, 'Book something today!')

    Project example: User Export click → 202 Accepted. Worker CSV + email. Daily 6pm Beat reminder.

    Viva tipWorker + Redis bina Beat ke user-triggered chalega. Scheduled jobs ke liye Beat bhi chahiye.

  3. 3
    and basic theory questions backreffing, lifecycles in vue and all
    Times asked 2
    Official solution

    Simplebackref reverse attribute auto banata hai. back_populates dono sides explicitly naam dete ho — clearer.

    Example

    # backref
    spots = db.relationship('Spot', backref='lot')
    # spot.lot available
    
    # back_populates
    spots = db.relationship('Spot', back_populates='lot')
    # Spot.lot = db.relationship('Lot', back_populates='spots')
Advice: he is a very uncool and bad guy, he will deliberately give you poor marks and primarily judge your code on the basis of ai written code
  1. 1
    Write and explain a Login API route.
    Times asked 1
    Official solution

    SimpleLogin flow pehle poochta hai "tu kaun hai?", token milne ke baad har API pe wohi proof dikhate ho.

    Authentication step: Vue form email + password JSON POST karta hai. Flask user dhoondhta hai, check_password_hash se prove karta hai ki tum genuine ho. Galat 401. Sahi pe JWT + role milta hai — yeh session/token hai.

    Vue localStorage (ya cookie) mein token rakhta hai, dashboard pe router.push. Aage ki har fetch header: Authorization: Bearer <token>. @jwt_required identity check (authentication). @roles_required('admin') permission check (authorization) — logged in ho, lekin allowed nahi to 403.

    Validation alag cheez hai: empty email, password 8+ — form sahi bhara hai ya nahi. Woh identity prove nahi karta.

    Logout = client token delete + login page. Server blacklist optional. Password response JSON mein kabhi mat bhejo.

    Example

    # Authentication
    @app.route('/api/login', methods=['POST'])
    def login():
        u = User.query.filter_by(email=data['email']).first()
        if not u or not check_password_hash(u.password, data['password']):
            return jsonify(msg='bad'), 401
        return jsonify(token=create_access_token(u.id), role=u.role)
    
    # baad ki APIs
    # Authorization: Bearer <token>
    if current_user.role != 'admin':
        abort(403)

    Project example: Login.vue POST /api/login → token LS → interceptor. Student token se admin route = 403. Empty form = validation, galat password = 401.

    Viva tipNetwork tab mein password body dikhega localhost pe — prod HTTPS. Response mein hash/password echo mat karo.

  2. 2
    Create a Vue component from scratch.
    Times asked 1
    Official solution

    SimpleFile.vue export default, import parent/router, register.

    Create from scratch live.

    Component = reusable UI block (Navbar, Card). Props parent→child data, emit child→parent event. Slots parent HTML inner content.

    computed cache + reactive derive (filtered list). watch side-effect (query change pe API). methods events. ref() primitive, reactive() object. Vuex/Pinia global store; localStorage persist, store nahi.

    SFC: template + script + style ek .vue file. Parent-child exam favourite: list parent, row child :item + @delete.

    Example

    import Home from './views/Home.vue'
    { path: '/', component: Home }

    Project example: components/Hello.vue.

  3. 3
    Write and explain a Celery task (live coding).
    Times asked 1
    Official solution

    Simple@celery.task ping return ok delay from route. Write explain Celery task live.

    Worker running.

    Celery Python ka distributed task queue — HTTP request ko 10s email/CSV ke liye mat rokna.

    Flow: Flask .delay() → Redis broker → Worker execute. Beat alag process hai (clock): crontab padhke due time pe queue mein daalta hai. Beat khud mail nahi bhejta; Worker haath hai.

    MAD2 typical: daily reminder (Beat), monthly report (Beat), user Export CSV (button, Beat nahi). JS async/await browser event loop hai, Celery server-side process — mix mat karo.

    Demo: tin terminals — redis-server, celery worker, celery beat — plus Flask. MailHog :8025 inbox. Result backend se task SUCCESS poll optional.

    Project example: tasks.py.

  4. 4
    What is backref? How is it different from back_populates?
    Times asked 1
    Official solution

    Simplebackref jaadu se reverse attribute. back_populates dono taraf likho — clear.

    backref='author' Post.author auto. New code back_populates preferred.

    Examiner difference almost guaranteed.

    ORM objects ko tables se map karta hai — raw SQL kam. SQLAlchemy MAD2 default.

    class User(db.Model) + Column + relationship. query.filter_by / db.session.get. Fayda: portable SQLite→Postgres, injection se safer. Nuksaan: N+1, complex SQL.

    SQLite file, zero server — course friendly. Postgres scale. Relationships: FK, backref, lazy/joinedload, cascade on delete. Constraints unique/not null integrity.

    Bookings source of truth DB, Redis cache copy.

    Example

    posts = db.relationship('Post', backref='author')
    # vs
    posts = db.relationship('Post', back_populates='author')
    Post.author = relationship('User', back_populates='posts')

    Project example: User.bookings / Booking.user dono explicit back_populates.

  5. 5
    Explain the Vue Lifecycle Hooks.
    Times asked 1
    Official solution

    SimpleLifecycle = component ki zindagi ke stages. API call tab jab DOM ready ho — mounted.

    created: instance bani, this data, DOM nahi. mounted/onMounted: page pe aa gaya — fetch, Chart.js, setInterval.
    updated: data change ke baad. unmounted: cleanup (clearInterval) warna memory leak.

    Dashboards onMounted isliye: canvas/API tab valid. created mein $el nahi.

    Composition: onMounted(() => {}) setup ke andar.

    Example

    export default {
      async mounted() {
        const r = await fetch('/api/venues')
        this.venues = await r.json()
      }
    }

    Project example: Venues.vue mounted fetch list. Clock component unmounted pe interval clear.

    Viva tipcreated: data setup, DOM nahi. mounted/onMounted: $el mil gaya — fetch yahi. Dashboards isliye onMounted use karti hain.

  6. 6
    Prepare all basic Vue, Flask, SQLAlchemy, and Celery concepts, as the examiner may ask follow-up theory questions based on your code.
    Times asked 1
    Official solution

    SimpleVue hooks, JWT flow, cache keys, crontab, relationships. Follow-up why this line.

    Level 2 deeper. Theory+code both.

    Examiner 2 cheezein: simple desi line + tumhare project ki exact file.

    Pehle ID, GitHub, portal ZIP. Phir run: Redis + Flask + worker + beat + Vue. Feature demo: login, RBAC, cache hit/miss, Celery mail, search.

    Line pe ungli: input kahan, kaunsa check, query/cache/task, JSON/UI. Copilot band. Jo nahi kiya honestly bolo + kaise add karte.

    Project example: 1 page cheat sheet then close it.

  1. 1
    Show your College ID.
    Times asked 16
    Official solution

    SimpleCamera pe clearly IITM/college ID dikhao — naam photo match.

    Pehle se ID haath mein rakho. Glare mat aane do. Examiner screenshot/verify karta hai. Iske baad GitHub + project run.

  2. 2
    Show your GitHub repository and collaborator.
    Times asked 16
    Official solution

    SimpleGitHub repo public/private policy ke hisaab, MAD-1 collaborator add, commits dikhao.

    Repo → Settings → Collaborators → instructor added.
    Commits: git log / GitHub History — regular commits better, ek dum 1 commit suspicious.
    README + report mein AI usage likha hona chahiye agar use kiya.

  3. 3
    Perform checksum or download the project from the Viva Portal.
    Times asked 2
    Official solution

    SimpleChecksum file ka hash (jaise SHA256) — file change hui ya nahi verify.

    Portal pe submitted ZIP ka checksum diya hota hai. Local file ka hash nikaalo, match hona chahiye.
    Linux: sha256sum project.zip
    Mismatch = galat file / corrupt download. Examiner integrity check karta hai ki tumhari submitted copy hi run ho rahi hai.

  4. 4
    Demonstrate the complete application.
    Times asked 33
    Official solution

    SimpleDemo script pehle se practice karo, 5-7 minute, saari roles.

    Suggested flow

    1) Register/login user 2) Admin login — CRUD 3) Approval/blacklist 4) Booking/apply 5) Search 6) Validation edge (slots 0, duplicate) 7) Logout
    Bolte-bolte dikhao: 'Yahan overbooking rokta hoon'. Code tab kholna jab poochhein.
    Crash ho to debug calmly: terminal error, typo, DB path.
    Mandatory features skip mat karna — examiner list tick karta hai.

  5. 5
    Focus on CRUD operations (especially Create, Read, Update, Delete).
    Times asked 1
    Official solution

    SimpleCRUD = Create, Read, Update, Delete — kisi bhi resource ke 4 basic operations.

    Create: POST, db.session.add(new_user); commit() — register, add trek.
    Read: GET, User.query.all() — dashboard list.
    Update: POST/PUT, user.name = 'Ram'; commit() — edit profile.

    DeletePOST/DELETE, db.session.delete(obj); commit().

    REST mapping: POST create, GET read, PUT/PATCH update, DELETE delete.
    Admin panel mein yeh 4 dikhana viva demo ka common task hai.

  6. 6
    Show Admin/User summaries.
    Times asked 1
    Official solution

    Yeh feature demo hai. Account ready rakho, steps bol ke dikhao.

    Role ke hisaab login → action (create/approve/book) → DB/UI pe result → edge case (fail when slots=0 / blacklisted).
    Do browser windows: admin + user. Search/filter alag se dikhao.
    Agar feature nahi hai to sach bolo aur 2 minute mein kaise add karoge (query + template) explain karo.

  7. 7
    Explain the price/cost calculation logic.
    Times asked 1
    Official solution

    SimpleCost generally rate × quantity/time, round up rules ke saath.

    hours = max(1, math.ceil(total_minutes / 60)) # 10 min bhi 1 hour
    cost = hours * lot.price_per_hour
    Logic route/model method mein rakho, template mein sirf {{ booking.cost }}.
    Viva: numbers ka example 90 min × ₹50 = ₹100 (ceil 2 hours) walkthrough karo.

  8. 8
    Explain the CRUD operations in your code.
    Times asked 1
    Official solution

    SimpleCRUD = Create, Read, Update, Delete — kisi bhi resource ke 4 basic operations.

    Create: POST, db.session.add(new_user); commit() — register, add trek.
    Read: GET, User.query.all() — dashboard list.
    Update: POST/PUT, user.name = 'Ram'; commit() — edit profile.

    DeletePOST/DELETE, db.session.delete(obj); commit().

    REST mapping: POST create, GET read, PUT/PATCH update, DELETE delete.
    Admin panel mein yeh 4 dikhana viva demo ka common task hai.

  9. 9
    Explain a specific route selected by the proctor.
    Times asked 1
    Official solution

    SimpleRoutes/controllers URLs handle karte hain. app.py app banata hai, models.py data, templates/ views, static/ CSS-JS.

    Typical structure:
    app.py / __init__.py → Flask app, db.init, register blueprints
    models.py → tables
    routes.py / views → @app.route functions
    templates/ → Jinja HTML
    static/ → css, images
    instance/*.db → SQLite

    Ek route explain karne ka template:
    1) URL + methods 2) Auth/role check 3) Form/query se data 4) Business rule (duplicate, slots) 5) db.session 6) render ya redirect

    Example GET+POST same route: GET form, POST save.
    Data HTML se: form name= → request.form. Data HTML ko: render_template(..., items=query).
    Nayi .py file: import karke use karo, warna Flask ko pata nahi. Folder rename: imports/paths/templates check.

  10. 10
    Explain a specific section of your code.
    Times asked 1
    Official solution

    Examiner code pe ungli rakh ke poochta hai — panic mat karo, 4-line formula bolo.

    1) Yeh file/line kya role hai (model / route / template / config)?
    2) Input kahan se aata hai (form, URL <id>, session, JSON)?
    3) DB pe kya query/write?
    4) Output kya (render_template / redirect / jsonify)?

    Example

    @app.route('/book/<int:id>', methods=['POST']) — logged-in user session se, trek id URL se, Booking add, slots--, redirect history.

    Unknown line: imports (request, url_for, flash), decorators, if checks, commit — har keyword ka reason ready rakho.

  11. 11
    If you create a new Python file with a function, will it work without modifying the existing project? Explain why.
    Times asked 1
    Official solution

    Yeh project-specific feature add/modify hai. 4 layers touch karo: model, route, template, validation.

    1) Data chahiye to models.py mein column/relationship + DB update (ALTER / migrate / create_all).
    2) Route: GET pe form/page, POST pe request.form se save, flash + redirect.
    3) Template: input name=... Jinja se {{ obj.field }} display.
    4) Rule: duplicate, range, role check backend pe.

    Example naya field 'city':

    user.city = db.Column(db.String(50))
    user.city = request.form.get('city')
    <input name='city'>  ...  {{ user.city }}
  12. 12
    Have you used SQLAlchemy?
    Times asked 1
    Official solution

    SimpleSQLAlchemy Python ka sabse popular ORM hai. MAD1 mein Flask-SQLAlchemy wrapper use hota hai.

    db = SQLAlchemy(app)

    class Book(db.Model):
        id = db.Column(db.Integer, primary_key=True)
        title = db.Column(db.String(80), nullable=False)
    
    Operations: db.session.add(obj), .commit(), .delete(obj), Model.query.all(), .filter_by(), .get_or_404(id).
    db.Model ek class hai (function nahi). db object engine + session + metadata hold karta hai.

    SQLALCHEMY_TRACK_MODIFICATIONS=False extra signals band karta hai, performance warning hatati hai.

  13. 13
    Why did you use SQLAlchemy? What are its advantages?
    Times asked 1
    Official solution

    SimpleSQLAlchemy Python ka sabse popular ORM hai. MAD1 mein Flask-SQLAlchemy wrapper use hota hai.

    db = SQLAlchemy(app)

    class Book(db.Model):
        id = db.Column(db.Integer, primary_key=True)
        title = db.Column(db.String(80), nullable=False)
    
    Operations: db.session.add(obj), .commit(), .delete(obj), Model.query.all(), .filter_by(), .get_or_404(id).
    db.Model ek class hai (function nahi). db object engine + session + metadata hold karta hai.

    SQLALCHEMY_TRACK_MODIFICATIONS=False extra signals band karta hai, performance warning hatati hai.

  14. 14
    Explain the Primary Key.
    Times asked 1
    Official solution

    SimplePrimary Key har row ko uniquely identify karti hai. Unique Key bhi unique hoti hai lekin table ki main ID nahi.

    id = db.Column(db.Integer, primary_key=True)  # auto increment
    email = db.Column(db.String(120), unique=True)

    PK: NOT NULL, ek (ya composite). Index automatically.
    Record fetch: User.query.get(id) PK se tez.
    FK hamesha unique nahi — Many side pe repeat hoti hai. Unique FK = One-to-One.

  15. 15
    Explain the Foreign Key.
    Times asked 1
    Official solution

    SimpleForeign Key doosri table ki PK ko refer karti hai, relationship + referential integrity.

    user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)

    Invalid user_id insert nahi hoga. FK unique nahi hona zaroori — One-to-Many mein same user_id kai rows.
    FK + PK same column: 1-1 sharing, jaise AdminProfile.id = FK to user.id.
    Should FK always unique? Nahi. Tab One-to-One chahiye ho tab unique.

  16. 16
    What is MVC? Explain its architecture.
    Times asked 1
    Official solution

    SimpleMVC = Model-View-Controller. Code ko 3 hisson mein baant ta hai taaki mix na ho.

    Model: data + DB. models.py — User, Trek, Booking classes.
    View: jo user dekhta hai. templates/*.html + Jinja.
    Controller: beech ka logic. routes / app.py — request lo, model se data, view ko do.

    Example flow (register):
    Browser form POST → Controller register() → User model save → redirect → View dashboard.html

    Draw: Browser → Controller → Model → DB, phir Controller → View → Browser.
    ORM na ho to bhi MVC ho sakta hai — Model raw SQL functions ho sakte hain. Structure matter karta hai, library nahi.
    MVP/MVVM doosri architectures hain; MAD1 mein MVC expected hai.

  17. 17
    Why did you use Blueprints?
    Times asked 1
    Official solution

    SimpleBlueprint Flask app ko modules mein baant ta hai — auth, admin, user alag files.

    admin_bp = Blueprint('admin', __name__, url_prefix='/admin')
    @admin_bp.route('/dashboard')

    def dash(): ...
    app.register_blueprint(admin_bp)

    Bina blueprint: sab routes ek app.py — chhote MAD1 ke liye theek. Alternative: multiple modules import karke app pe route attach, ya create_app factory.
    Bada project: Blueprints = clean controllers.

  18. 18
    What is @login_required? Why is it used?
    Times asked 1
    Official solution

    Simple@login_required / custom decorator check karta hai session mein user hai ya nahi, nahi to login pe bhejta hai.

    def login_required(f):
        @wraps(f)
        def wrapper(*a, **k):
            if 'user_id' not in session:
                return redirect(url_for('login'))
            return f(*a, **k)
        return wrapper
    
    @app.before_request se bhi global check ho sakta hai.

    Decorator order: pehle @app.route, uske neeche @login_required generally. Swap karoge to kabhi route register galat ho sakta hai — Flask-Login docs follow karo.
    Role decorator @role_required('admin') authorization ke liye. Order matter karta hai: pehle auth, phir role.

  19. 19
    Have you used Flask? Where?
    Times asked 1
    Official solution

    SimpleFlask Python ka micro web framework hai — routes, templates, request/response handle karta hai.

    from flask import Flask
    app = Flask(__name__)
    @app.route('/')
    def home():
        return 'Hello'
    app.run(debug=True)  # default port 5000

    __name__ se Flask ko pata chalta hai templates/static kahan se load karni hai. Hataoge to resource paths toot sakte hain.

    Faydesimple, flexible, MAD1 syllabus. Nuksaan: bade features (admin, auth) khud jodne padte hain.

    app.run() development server start karta hai. Production mein gunicorn/waitress.
  20. 20
    What is Jinja2?
    Times asked 3
    Official solution

    SimpleJinja2 Flask ka template engine hai. HTML ke andar Python-jaisa data print/loop/if kar sakte ho.

    Bina Jinja har user ke liye alag HTML file. Jinja se ek template + data.

    {{ user.name }} print, {% for x in items %} loop, {% if %} condition, {% extends %} layout.

    Example routereturn render_template('dash.html', treks=treks)

    dash.html: {% for t in treks %}<li>{{ t.name }}</li>{% endfor %}

    HTML files templates/ folder mein isliye kyunki Flask default wahan dhundhta hai. render_template Jinja ko run karta hai.
    Boolean Jinja handle karta hai: {% if user.is_admin %}.

  21. 21
    Why did you use Jinja2?
    Times asked 2
    Official solution

    SimpleJinja2 Flask ka template engine hai. HTML ke andar Python-jaisa data print/loop/if kar sakte ho.

    Bina Jinja har user ke liye alag HTML file. Jinja se ek template + data.

    {{ user.name }} print, {% for x in items %} loop, {% if %} condition, {% extends %} layout.

    Example routereturn render_template('dash.html', treks=treks)

    dash.html: {% for t in treks %}<li>{{ t.name }}</li>{% endfor %}

    HTML files templates/ folder mein isliye kyunki Flask default wahan dhundhta hai. render_template Jinja ko run karta hai.
    Boolean Jinja handle karta hai: {% if user.is_admin %}.

  22. 22
    How did you build the frontend?
    Times asked 1
    Official solution

    Definition style question: 1 line simple Hinglish + project example + mini code.

    Template'X ka kaam Y hai. Mere project mein Z jagah use hua.'

    Example'Session login state rakhta hai. session[user_id]=u.id login pe, logout pe session.clear().'

    Agar topic Vue/Celery/Redis ho aur project mein nahi hai to sach bolo, theory example do.

  23. 23
    What are the advantages of HTML and CSS?
    Times asked 1
    Official solution

    Yeh live UI/CSS change hai. Examiner jo element bole uski CSS turant badlo.

    Bootstrap class badlo (btn-primary → btn-success, bg-dark → bg-warning) ya inline style='color:red; background:#eee'.
    Center: d-flex justify-content-center text-center. Navbar neeche: navbar fixed-bottom.

    Example

    <button class='btn btn-success' style='background:#16a34a'>Book</button>

    Pehle browser inspect karke class dhundo, phir template mein change karke refresh.

  24. 24
    Write a simple Flask route.
    Times asked 3
    Official solution

    Simple Hello World — notepad mein yeh likh ke run karke dikhao:

    from flask import Flask
    app = Flask(__name__)
    @app.route('/')
    def home():
        return 'Hello World'
    if __name__ == '__main__':
        app.run(debug=True)
    
    Jinja version: return render_template('hello.html', name='Shubham')

    hello.html: <h1>Hello {{ name }}</h1>
    POST-only: @app.route('/x', methods=['POST'])

  25. 25
    How much AI/LLM did you use in the project?
    Times asked 1
    Official solution

    SimpleSach bolo. AI se boilerplate/docs theek, logic samajh ke explain karo.

    'Boilerplate aur CSS ke liye AI use kiya, models/routes khud design kiye. Report mein X% mention hai.'
    Line-by-line nahi explain kar paoge to examiner pakad lega. Documentation: official Flask/SQLAlchemy + course lectures.

  26. 26
    Where did you use AI?
    Times asked 1
    Official solution

    SimpleSach bolo. AI se boilerplate/docs theek, logic samajh ke explain karo.

    'Boilerplate aur CSS ke liye AI use kiya, models/routes khud design kiye. Report mein X% mention hai.'
    Line-by-line nahi explain kar paoge to examiner pakad lega. Documentation: official Flask/SQLAlchemy + course lectures.

  27. 27
    Which part of the project was the most difficult to implement?
    Times asked 1
    Official solution

    Simple2-3 honest improvements + 1 security + 1 UX.

    Example

    password hashing/CSRF tighter, Redis cache, tests, pagination, email verify, rate limit login, better mobile CSS.

    Challenges: relationships/cascade, concurrent booking, Jinja inheritance.
    Rate: 7-8/10 with reason — 10/10 arrogant, 3/10 confidence khatam.
    Security extra: HTTPS, hashed passwords, CSRF, SQL injection (ORM), login attempts, file type check.

Created for educational purposes only. Questions are based on students' personal experiences and may not reflect actual exam content.