30-Day Project Training Program for BCA
Students: Django and React
This 30-day training program is designed for BCA students to learn Django and React,
culminating in a full-stack project that aligns with current industry trends. The program includes
a Python refresher, Git/GitHub, Django backend development, PostgreSQL integration, React
frontend development, and a final capstone project.
Day 1: Python Refresher
Objective: Refresh core Python concepts required for Django development.
Topics:
Variables, data types, and operators
Control structures (if, loops)
Functions and modules
Lists, dictionaries, and comprehensions
Exception handling
File handling basics
Activities:
Write Python scripts for basic problems (e.g., calculator, list manipulation).
Solve 5-10 coding exercises on platforms like HackerRank or LeetCode.
Day 2: Git and GitHub
Objective: Learn version control using Git and collaboration on GitHub.
Topics:
Introduction to version control and Git
Git commands: init, add, commit, push, pull, branch, merge
Setting up a GitHub repository
Collaborating on GitHub: pull requests, code reviews
Resolving merge conflicts
Activities:
Install Git and configure it.
Create a GitHub repository and push a sample Python project.
Practice branching and merging with a partner.
Days 3-7: Django Setup and Book Management App
Objective: Set up Django and build a simple book management app using Django models and
views.
Topics:
Day 3: Django introduction, installation, project/app structure, MVT architecture
Day 4: Django models, migrations, and admin panel setup
Day 5: Django views, templates, and URL routing
Day 6: CRUD operations (Create, Read, Update, Delete) for books
Day 7: Basic styling with Bootstrap and testing the app
Project: Build a book management app with features:
Add, view, update, and delete books
Fields: title, author, ISBN, publication year
Admin panel for managing books
Activities:
Set up a Django project and app.
Create models and perform migrations.
Build views and templates for CRUD operations.
Integrate Bootstrap for responsive UI.
Test the app locally.
Days 8-13: Django API and PostgreSQL
Objective: Develop RESTful APIs with Django and integrate PostgreSQL for the book
management app.
Topics:
Day 8: Introduction to REST APIs, Django REST Framework (DRF) setup
Day 9: Serializers and API views for books
Day 10: PostgreSQL setup, configuration, and integration with Django
Day 11: Building API endpoints (GET, POST, PUT, DELETE)
Day 12: Authentication (Token or JWT) and permissions
Day 13: Testing APIs with Postman and deploying to a local server
Activities:
Install DRF and PostgreSQL.
Create serializers and views for the book app.
Configure Django to use PostgreSQL.
Build and test API endpoints.
Implement basic authentication.
Use Postman to verify API functionality.
Days 14-23: React JS
Objective: Learn React to build a dynamic frontend for the book management app.
Topics:
Day 14: Introduction to React, Node.js, and Create React App setup
Day 15: JSX, components, and props
Day 16: State and hooks (useState, useEffect)
Day 17: Handling events and forms in React
Day 18: React Router for navigation
Day 19: Fetching data from Django APIs using Axios
Day 20: Building a UI for the book management app
Day 21: Styling with Tailwind CSS
Day 22: State management with Context API or Redux
Day 23: Testing and debugging the React app
Activities:
Set up a React project.
Build reusable components for the book app.
Connect the React frontend to Django APIs.
Implement navigation and styling.
Test the integrated app.
Days 24-30: Industry-Trending Project (E-Commerce
Platform)
Objective: Build a full-stack e-commerce platform using Django and React, incorporating
modern features.
Project Features:
Backend (Django):
o Product catalog (models for products, categories)
o User authentication (signup, login, logout)
o Shopping cart and order management
o Payment integration (e.g., Stripe API for mock payments)
o RESTful APIs for all functionalities
Frontend (React):
o Product listing and search
o User profile and order history
o Cart and checkout UI
o Responsive design with Tailwind CSS
Database: PostgreSQL for storing products, users, and orders
Daily Breakdown:
Day 24: Project planning, ERD design, and Django project setup
Day 25: Django models, migrations, and admin panel for products/users
Day 26: Build APIs for products, cart, and orders
Day 27: User authentication and payment integration
Day 28: React setup, product listing, and search UI
Day 29: Cart, checkout, and user profile pages
Day 30: Testing, debugging, and project presentation
Activities:
Design database schema and set up Django models.
Build and test APIs for all features.
Develop React components for the e-commerce UI.
Integrate frontend and backend.
Deploy the app locally and present it.
Tools and Technologies
Backend: Python, Django, Django REST Framework, PostgreSQL
Frontend: React, Axios, Tailwind CSS, React Router
Version Control: Git, GitHub
Testing: Postman, browser dev tools
Deployment: Local server (optional: Heroku or Vercel for demo)
Learning Outcomes
Proficiency in Python and Django for backend development
Ability to build RESTful APIs and integrate PostgreSQL
Competence in React for building dynamic, responsive frontends
Experience with full-stack development and industry-standard workflows
Collaboration skills using Git and GitHub
A portfolio-worthy e-commerce project showcasing modern web development skills
Assessment
Daily coding exercises and mini-projects
Book management app (Days 3-13)
API functionality tests (Days 8-13)
React frontend integration (Days 14-23)
Final e-commerce project presentation (Day 30)