Mern Stack Development Training by Experts

;

Our Training Process

Mern Stack Development - Syllabus, Fees & Duration

Module 1: Introduction to React

  • What is React?
  • Why React?
  • React version history
  • React 16 vs React 15
  • Just React – Hello World
  • Using create-react-app
  • Anatomy of react project
  • Running the app
  • Debugging first react app

Module 2: Templating using JSX

  • Working with React. create Element
  • Expressions
  • Using logical operators
  • Specifying attributes
  • Specifying children
  • Fragments

Module 3: About Components

  • Significance of component architecture
  • Types of components
  • Functional
  • Class based
  • Pure
  • Component Composition

Module 4: Working with state and props

  • What is state and it significance
  • Read state and set state
  • Passing data to component using props
  • Validating props using prop Types
  • Supplying default values to props using default Props

Module 5: Rendering lists

  • Using react key prop
  • Using map function to iterate on arrays to generate elements

Module 6: Event handling in React

  • Understanding React event system
  • Understanding Synthetic event
  • Passing arguments to event handlers

Module 7: Understanding component lifecycle and  handling errors

  • Understand the lifecycle methods
  • Handle errors using error boundaries

Module 8: Working with forms

  • Controlled components
  • Uncontrolled components
  • Understand the significance to default Value prop
  • Using react ref prop to get access to DOM element

Module 9: Context

  • What is context
  • When to use context
  • Create Context
  • Context Provider
  • Context Consumer
  • Reading context in class

Module 10: Code-Splitting

  • What is code splitting
  • Why do you need code splitting
  • React lazy
  • Suspense
  • Route-based code splitting

Module 11: hooks

  • What are hooks
  • Why do you need hooks
  • Different types of hooks
  • Using state and effect hooks
  • Rules of hooks

Module 12: Routing with react router

  • Setting up react router
  • Understand routing in single page applications
  • Working with Browser Router and Hash Router components
  • Configuring route with Route component
  • Using Switch component to define routing rules
  • Making routes dynamic using route params
  • Working with nested routes
  • Navigating to pages using Link and NavLink component
  • Redirect routes using Redirect Component
  • Using Prompt component to get consent of user for navigation
  • Path less Route to handle failed matches

Module 14: Immutable.js

  • What is Immutable.js?
  • Immutable collections
  • Lists
  • Maps
  • Sets

Module 17: Unit Testing

  • Understand the significance of unit testing
  • Understand unit testing jargon and tools
  • Unit testing react components with Jest
  • Unit testing react components with enzyme

Module 18: Web pack Primer

  • What is web pack
  • Why web pack
  • Install and setup web pack
  • Working with web pack configuration file
  • Working with loaders
  • Working with plugins
  • Setting up Hot Module Replacement

Module 19: Isomorphic React

  • What is server-side rendering (SSR)?
  • Why SSR
  • Working with render To String and render To Static Markup methods

Syllabus -> React JS
This syllabus is not final and can be customized as per needs/updates
IT Courses / Internship

Module 1: Introduction to Node.js

  • What is Node.js
  • Features of Node.js
  • Concept
  • Where to fit and not fit
  • Event-Driven programming style
  • What is Asynchronous

Module 2: Installation / Setup

  • Local environment setup
  • Node.js runtime
  • Download source code
  • Installation on OS
  • Verify

Module 3: Node Package Manager

  • Install module by NPM
  • Global vs Local setup
  • Update Module
  • CRUD Module

Module 4: Express Framework

  • What is Express
  • Setup Express
  • Request And Response
  • Handling Routes
  • Route Middleware
  • Objects
  • Cookies Management
  • File upload
  • HTTP methods

Module 5: Buffers and Streams

  • What is buffers and Streams
  • Benefit of Streams over buffers
  • Create / Write / Read operation on Buffers
  • Process on Buffers
  • Read / Write data by Streams
  • Pipeline
  • Chaining Stream

Module 7: REST API

  • RESTful Architecture
  • HTTP URI and Methods
  • RESTful web services
  • Expose solution as API
  • Best practice for REST API solution

Module 8: Callback

  • What is Callback
  • Benefit of Callback
  • Asynchronous communications
  • Block and Non-Blocking
  • Standard Callback pattern
  • Async Flow control Library
  • Executing in parallel

Module 9: Events

  • What is Events
  • Events types
  • Event Emitter API
  • Multiple event listeners
  • Event emitter pattern
  • Class methods
  • Event Loop
  • Blocking Event Loop
  • Escaping Event Loop

Module 10: Connecting with Database

  • Introduction of MySQL
  • Connect with MySQL
  • Introduction of MongoDB
  • Features of MongoDB
  • Connect with MongoDB
  • Defining a schema
  • Defining a Model

Module 11: External Processes and Services

  • What is processes
  • Spawning Child process
  • Create and kill processes
  • Building with HTTP Severs
  • HTTP requests
  • Secure HTTP Server

Module 12: External Processes and Services

  • Using Test Runner
  • Using Assertion Testing Module
  • Built-in Debugger
  • Console log
  • Node Inspector

Syllabus -> Node JS
This syllabus is not final and can be customized as per needs/updates
IT Courses / Internship

Module 1 : INTRODUCTION EXPRESS JS

  • The model-view-controller pattern
  • Defining Jade templates
  • Configuring Express
  • Postman configuration
  • Using REST
  • JSON Data
  • Reading POST data
  • CRUD operations
  • Adding middleware

Module 2 : EXPRESS JS WITH MONGODB AND SQLITE

  • Connecting to RDBMS and Mongodb databases
  • Performing CRUD operations
  • Module 3 : SOCKET.IO, THE FRONT-END, AND A CHAT APP

    • Getting Started
    • Adding Socket.io To Your App
    • Exploring The Front-end
    • Sending Live Data Back & Forth
    • Creating The Front-end UI
    • Showing Messages In App
    • Working With Time
    • Timestamps
    • Show Message Time In Chat App
    • Chat application Project

    Module 4 : INTRODUCTION TO TASK MANAGERS WITH UNIT TESTING

    • Working with gulp
    • Working with grunt
    • Working with unit and E2E testing

    Module 5: LEARNING EXPRESS ROUTES

    • starting a server
    • Writing your first route
    • Sending a response
    • Macthing route paths
    • Getting a single expression
    • Setting status codes
    • Macthing longer paths
    • Other HTTP methods

    Syllabus -> Express JS
    This syllabus is not final and can be customized as per needs/updates
    IT Courses / Internship

    Module 1: Introduction to NoSQL

    • What Is NoSQL?
    • Why NoSQL databases are required
    • Types of NoSQL Database
    • NoSQL vs SQL Comparison
    • ACID & BASE Property
    • CAP Theorem
    • Benefits of NoSQL databases
    • Installation
    • Start and Stop the MongoDB process

    Module 2: MongoDB Architecture

    • Document, Collection, Databases
    • JSON and BSON
    • Storage Engines
    • Read Path
    • Journaling
    • Write Path
    • Working Set
    • Capped Collection
    • Oplog collection
    • TTL Index
    • GridFS

    Module 3: CRUD Operations

    • MongoDB Data Types
    • Inserting, Update, Deleting the documents
    • Querying the documents
    • Bulk insert operation
    • Updating multiple document
    • Limiting documents
    • Filtering documents

    Module 4: Schema Design and Data modeling

    • Dynamic Schema
    • What is Data modeling?
    • RDBMS and MongoDB Data modeling difference
    • Embedding Document
    • Reference Document

    Module 5: Indexes

    • Index concepts in MongoDB
    • Types of indexes
    • Indexes and its use cases
    • Creating Indexes
    • Managing Indexes
    • Index strategies

    Module 6: Database Administration in MongoDB

    • Database status
    • Troubleshooting issues
    • Current Operations
    • Rotating log files
    • Users and Roles
    • Copy and Clone database
    • DB and Collection Stats
    • Explain plan
    • Profiling
    • Changing configuration files
    • Upgrading the database

    Module 7: MongoDB: Backup and Security

    • Concept of backups
    • mongoexport/mongoimport
    • mongodump/mongorestore
    • Oplog backups
    • LVM Backups
    • Backups using MMS/Ops Manager
    • Purpose of security
    • Authentication and authorization
    • Role based access control

    Module 8: Replication in MongoDB

    • Concept of replication
    • ReplicaSet member roles
    • Voting and Electing primary
    • Role of Oplog in replication
    • Read and Write Concern
    • Arbiter,Hidden and Delayed replica node
    • Priority settings
    • Replicaset nodes health check
    • Concept of resyncing the nodes
    • Rollbacks during failover
    • Keyfile authentication

    Module 9: MongoDB Scalability

    • Concept of Scalability
    • Sharding concept
    • Shardkey and Chunks
    • Choosing shardkey
    • Sharding components
    • Types of Sharding
    • Balanced data distribution
    • Sharded and Non-sharded collection
    • Sharded Replicaset
    • Tag aware sharding

    Module 10: MongoDB Monitoring and Other Tools

    • MMS Manager
    • Ops Manager
    • Mongo utility commands
    • Mongo developer tools
    • MongoDB Atlas
    • MongoDB client drivers

    Syllabus -> MongoDB
    This syllabus is not final and can be customized as per needs/updates
    IT Courses / Internship
     
    10000+
    20+
    50+
    25+

    Mern Stack Development Jobs in Toronto

    Enjoy the demand

    Find jobs related to Mern Stack Development in search engines (Google, Bing, Yahoo) and recruitment websites (monsterindia, placementindia, naukri, jobsNEAR.in, indeed.co.in, shine.com etc.) based in Toronto, chennai and europe countries. You can find many jobs for freshers related to the job positions in Toronto.

    • mern stack developer
    • mern stack
    • mern stack programmer
    • reach js developer
    • node js developer
    • express js developer
    • mern stack expert
    • mern stack fresher
    • full stack developer
    • mongo db

    Mern Stack Development Internship/Course Details

    Mern Stack Development internship jobs in Toronto
    Mern Stack Development Thus the basic syntax and specifications are of JavaScript only. React web framework is currently being used by reputed companies including Netflix, NASA, BBC, Facebook, Paypal, etc. ReactJS contains a reputation for being a robust tool for making user interfaces. js, a server-side framework based on Google V8's runtime. The training costs for developers are usually high, but when it comes to Node. js is a straightforward programming language. js training at Nestsoft in Dubai may be a great stepping stone for your IT career. js is an open-source platform as well, that will increase flexibility that helps in building real-time network applications. The best MongoDB online Training Institutes in Dubai . Use Express, a lightweight HTTP server framework developed on top of Node.

    Meet a Few of our Industry Experts 🚀 Your Pathway to IT Career

    Pratap

    Mobile: +91 9446600368
    Location: Odisha, Online (Toronto)
    Qualification: Bsc graduate in computer science

    Experience: As an IT fresher gaining proficiency in programming languages such as Java or C++ is essential Familiarity with database management  more..

    Dhananjay

    Mobile: +91 91884 77559
    Location: Maharashtra, Online (Toronto)
    Qualification: Btech

    Experience: 4 year experience Wordpress wordpress work https: squareinches in https: letmeanalyze com https: www restrofit com https: www teekmarkjobs com  more..

    Vinod

    Mobile: +91 9895490866
    Location: Karnataka, Online (Toronto)
    Qualification: Diploma

    Experience: I have strong knowledge and experience in frontend with ReactJS and DSA with Python and contributed to open-source Also working  more..

    Sapavat

    Mobile: +91 91884 77559
    Location: Telangana, Online (Toronto)
    Qualification: B. Tech

    Experience: Manual testing core java c programming Experience : 1 year |   more..

    Piyush

    Mobile: +91 91884 77559
    Location: Maharashtra, Online (Toronto)
    Qualification: Bsc graduate

    Experience: I completed this course big data data engineer data analytics python language aslo  more..

    D

    Mobile: +91 91884 77559
    Location: Andhra Pradesh, Online (Toronto)
    Qualification: B Tech

    Experience: C C++ Java Python I have Java and python certificates   more..

    Priyanshu

    Mobile: +91 9895490866
    Location: Haryana, Online (Toronto)
    Qualification: BCA

    Experience: Flutter developer fresher  more..

    Harikrishnan

    Mobile: +91 98474 90866
    Location: Pathanamthitta , Online (Toronto)
    Qualification: Graduate

    Experience: Graduate from Mahatma Gandhi University Kerala with a degree in BSc Computer Science Completed Full Stack course in Angular and  more..

    Shweta

    Mobile: +91 91884 77559
    Location: Dombivli , Online (Toronto)
    Qualification: Msc IT

    Experience: Knowledge of c sql python html css  more..

    Jeet

    Mobile: +91 91884 77559
    Location: Gujarat, Online (Toronto)
    Qualification: Graphic design

    Experience: Dear hiring manager I am writing to express my fervent interest in the Graphic Designer position at nestsoft With a Four-year  more..

    Akash

    Mobile: +91 9895490866
    Location: Maharashtra, Online (Toronto)
    Qualification: BCA

    Experience: I have knowledge of python and django with industry experience of 2 month also i know Sql java backend Technology  more..

    Soundarya

    Mobile: +91 8301010866
    Location: Karwar, Online (Toronto)
    Qualification: Bachelor of computer Application

    Experience: I'm a fresher And I'm unskilled in programming language Ms Word Ms power point Ms excel also graphic design and  more..

    Fathima

    Mobile: +91 9446600368
    Location: Eranakulam, Online (Toronto)
    Qualification: Bca

    Experience: Programming language: python Web technology: html css Web framework: django Software: visual studio Cody IDLE others: Microsoft word Microsoft PowerPoint  more..

    JICKSY

    Mobile: +91 8301010866
    Location: Ernakulam, Online (Toronto)
    Qualification: MCA

    Experience: I have five month experience in php developer and also i have one year computer teacher experience   more..

    Swalha

    Mobile: +91 91884 77559
    Location: Kerala, Online (Toronto)
    Qualification: Bsc Maths

    Experience: Hello sir Madam My name is Swalha Saleem I have completed my graduation in BSC Mathematics I am capable of  more..

    Sonika

    Mobile: +91 98474 90866
    Location: Dehradun, Online (Toronto)
    Qualification: B.Tech CSE

    Experience: 2 5 years of experience in manual and automation testing Skills include Selenium java functional regression smoke retesting defect management  more..

    Meenakshi

    Mobile: +91 9895490866
    Location: Maharashtra, Online (Toronto)
    Qualification: BE

    Experience: Manual testing Smoke Testing Sanity Testing Database Testing Performance testing Functional Testing Integration testing User Interface Testing Retesting Regression testing  more..

    Ashish

    Mobile: +91 9446600368
    Location: Maharashtra, Online (Toronto)
    Qualification: B.e Mechanical

    Experience: Cad Softwares Machine design Technical proficiency  more..

    Shivani

    Mobile: +91 8301010866
    Location: Indore, Online (Toronto)
    Qualification: MBA IT, HR

    Experience: I have 6 months of experience as QA intern in an IT company I have learnt java karate framework Selenium  more..

    Dhivagar

    Mobile: +91 9446600368
    Location: Tamil Nadu, Online (Toronto)
    Qualification: Bsc

    Experience: Python developer i am worked in as a developer for django in a thaagam foundation chennai  more..

    Abhijeet

    Mobile: +91 9895490866
    Location: Maharashtra, Online (Toronto)
    Qualification: BSc IT

    Experience: A professional having experience in Automation and Manual testing in Banking Finance service Healthcare Education Ecommerce domain Extensive working experience  more..

    Chandni

    Mobile: +91 9895490866
    Location: Indore, Online (Toronto)
    Qualification: B.tech

    Experience: I have certified knowledge of React js html css c c++ programming languages And I have 6 months experience of  more..

    Manimegalai

    Mobile: +91 9446600368
    Location: Tamil Nadu, Online (Toronto)
    Qualification: Bsc.Information technology

    Experience: SQL- 1 year Functional testing -3 years Citrix tool-3 years ALM - 3 years sahi pro -1 year selenium Java  more..

    Akash

    Mobile: +91 8301010866
    Location: Gwalior, Online (Toronto)
    Qualification: Btech

    Experience: Learning python and power-Bi  more..

    Manoj

    Mobile: +91 8301010866
    Location: Madhya Pradesh, Online (Toronto)
    Qualification: MCA

    Experience: I know Python and robotic automation and I have 3 years of experience in Python development  more..

    Christine

    Mobile: +91 89210 61945
    Location: Maharashtra, Online (Toronto)
    Qualification: BSc. I.T. ,M.C.A.

    Experience: Web developer adept in JavaScript PHP HTML CSS Bootstrap MySQL Proficient in WordPress and Shopify with strong problem-solving skills   more..

    Sreenath

    Mobile: +91 9895490866
    Location: Alappuzha , Online (Toronto)
    Qualification: Bsc computer science

    Experience: I have completed a course in python and django and also have basic knowledge in web development   more..

    Aryaman

    Mobile: +91 91884 77559
    Location: Uttar Pradesh, Online (Toronto)
    Qualification: Btech

    Experience: SKILLS 1 **Conceptual Understanding**: - Ability to explain complex mathematical concepts in a clear and understandable manner - Emphasis on  more..

    Nabhani

    Mobile: +91 89210 61945
    Location: Gujarat, Online (Toronto)
    Qualification: Graduate in B.Tech

    Experience: I have extensive experience in cybersecurity demonstrated through various internships and freelance work At AppsTech Solution as a Penetration Tester  more..

    Sainath

    Mobile: +91 91884 77559
    Location: Mumbai , Online (Toronto)
    Qualification: Diploma in Animation and VFX

    Experience: Video Editing Graphic design photography videography digital marketing   more..

    Rohit

    Mobile: +91 91884 77559
    Location: Uttar Pradesh, Online (Toronto)
    Qualification: Btech

    Experience: Python django javascript html css react |   more..

    Ali

    Mobile: +91 91884 77559
    Location: Lakshadweeo, Online (Toronto)
    Qualification: B.com

    Experience: Ms office ms excel ms access ms powerpoit fast english typing (KGTE) typing malayalam graphic design programming assistent data entry  more..

    Abhilash

    Mobile: +91 8301010866
    Location: Odisha, Online (Toronto)
    Qualification: Btech

    Experience: 1 Expertise in teaching diverse mathematical concepts from algebra to calculus 2 Proficient in coding languages (Python Java) for interactive  more..

    Bhagyashree

    Mobile: +91 98474 90866
    Location: Maharashtra, Online (Toronto)
    Qualification: Bcs

    Experience: Manual testing SQL java  more..

    Aswanth

    Mobile: +91 9446600368
    Location: Kerala, Online (Toronto)
    Qualification: Bsc computer science

    Experience: Python django html css bootstrap SQL javascript jquary 4 month internship 6 month experience as software associative 1 year experience  more..

    Omkar

    Mobile: +91 91884 77559
    Location: Maharashtra, Online (Toronto)
    Qualification: M.SC(computer science)

    Experience: Dear hiring manager My technical skills a manual testing & automation testing please consider my name I found 100+ bugs  more..

    Puja

    Mobile: +91 91884 77559
    Location: Bihar, Online (Toronto)
    Qualification: B.tech

    Experience: I have 3 years 10 months experience in manual testing   more..

    Febin

    Mobile: +91 9895490866
    Location: Kochi, Online (Toronto)
    Qualification: Diploma in Web technology & Graphic designing

    Experience: Graphic design skills web tech proficiency creative vision project management ability   more..

    Anusha

    Mobile: +91 9895490866
    Location: Tamil Nadu, Online (Toronto)
    Qualification: MBA

    Experience: 5 years of experience in business development management and customer relationship with good communication skills Soft spoken hard working good  more..

    Sneha

    Mobile: +91 9895490866
    Location: Kerala, Online (Toronto)
    Qualification: Mca

    Experience: Programming knowledge about c c++ sql html css and javascript Knowledge about php java python Knowledge about database management system  more..

    Tushar

    Mobile: +91 9446600368
    Location: Ajmer Rajasthan , Online (Toronto)
    Qualification: B.tech

    Experience: I have good knowledge while working with python and also made some projects with the help of django restframework Application  more..

    jyoti

    Mobile: +91 9895490866
    Location: Maharashtra, Online (Toronto)
    Qualification: MCA

    Experience: 2 year experience in flutter Developer also knowledge of firebase clean architecture  more..

    Nimisha

    Mobile: +91 9446600368
    Location: Kerala, Online (Toronto)
    Qualification: Btech in information technology

    Experience: Java html css javascript python c machine learning  more..

    Devarshi

    Mobile: +91 91884 77559
    Location: Maharashtra, Online (Toronto)
    Qualification: B.tech

    Experience: I have specialize skills in python flask html css js sql mysql excel powerbi  more..

    Athira

    Mobile: +91 8301010866
    Location: Kerala, Online (Toronto)
    Qualification: B.Tech

    Experience: I am submitting my resume for the position of Software Testing I have 3 month intern experienced in testing and  more..

    Ashlesha

    Mobile: +91 9446600368
    Location: Maharashtra, Online (Toronto)
    Qualification: B. Sc. IT

    Experience: critical thinking team collaboration communication skills analytical thinking programming skills incident response   more..

    chandan

    Mobile: +91 9895490866
    Location: Delhi, Online (Toronto)
    Qualification: BCA

    Experience: python -1 year Django -1 year Django RestFramework - 1year Html-8 months css - 8 months javascript - 6 months  more..

    Jerlin

    Mobile: +91 8301010866
    Location: Kerala, Online (Toronto)
    Qualification: Bca

    Experience: Manual and automation testing  more..

    Chandan

    Mobile: +91 91884 77559
    Location: Karnataka, Online (Toronto)
    Qualification: B E

    Experience: I know Java Sql Manual testing and Jira tool and Automation testing (Java Selenium) and I have a 6months experience  more..

    Chittireddi

    Mobile: +91 8301010866
    Location: Telangana, Online (Toronto)
    Qualification: Degree bsc

    Experience: Manual testing automation testing |   more..

    Manoj

    Mobile: +91 91884 77559
    Location: Bhiwandi, Online (Toronto)
    Qualification: Graduation

    Experience: 2 years of Experience in Graphic design Software - Adobe Illustrator and Photoshop and CANVA   more..

    Varsha

    Mobile: +91 8301010866
    Location: Pune, Online (Toronto)
    Qualification: Bachelor of engineering

    Experience: Python programming Application for Python Django  more..

    nilam

    Mobile: +91 98474 90866
    Location: Gujarat, Online (Toronto)
    Qualification: B.E

    Experience: I have 2 years of experience in odoo knowledge of e-commerce sales apps and also good knowledge of odoo development  more..

    hozefa

    Mobile: +91 8301010866
    Location: Maharashtra, Online (Toronto)
    Qualification: 12th and persuing bachelors of animation and graphic design 3rd year

    Experience: 2 year of experience in graphic design and there i have design logos brochure bannner etc fot the us client  more..

    Sumera

    Mobile: +91 98474 90866
    Location: Telangana, Online (Toronto)
    Qualification: MSc BEd, MA English

    Experience: I am excited to apply for the English tutor position currently open at your organization With over seven years of  more..

    Aditya

    Mobile: +91 9446600368
    Location: Delhi, Online (Toronto)
    Qualification: Diploma

    Experience: I've been a flutter developer for almost 2 years and developed projects ranging from simple UI apps to complex AI  more..

    sabiya

    Mobile: +91 9895490866
    Location: Jammu and Kashmir, Online (Toronto)
    Qualification: B.Tech

    Experience: Experience: 1 Proficiency in programming language in Java Selenium Python Ruby C# Cucumber and Karate 2 Hand-on experience with automation  more..

    john

    Mobile: +91 91884 77559
    Location: Maharashtra, Online (Toronto)
    Qualification: BCOM

    Experience: I am writing to express my interest in the Web Designer Graphic Designer position With a strong background in web  more..

    sailakshmi

    Mobile: +91 91884 77559
    Location: auckland, Online (Toronto)
    Qualification: mtech

    Experience: python data science artificial intelligence machine learning| Application for Python Data Science Machine Learning Artificial Intelligence  more..

    Pulkit

    Mobile: +91 91884 77559
    Location: Bhopal, Online (Toronto)
    Qualification: Btech in computer science and engineering

    Experience: I am good flutter developer I have around 1 year experience with flutter and have implemented external API Google maps  more..

    Success Stories

    The enviable salary packages and track record of our previous students are the proof of our excellence. Please go through our students' reviews about our training methods and faculty and compare it to the recorded video classes that most of the other institutes offer. See for yourself how TechnoMaster is truly unique.

    Photos of Training / Internships

    Internship/projects in toronto
    Internship/projects in toronto
    Internship/projects in toronto
    Internship/projects in toronto
    Internship/projects in toronto
    Internship/projects in toronto
    Internship/projects in toronto
    Internship/projects in toronto
    Internship/projects in toronto
    Internship/projects in toronto
    Internship/projects in toronto
    Internship/projects in toronto

    Trained more than 10000+ students who trust Nestsoft TechnoMaster

    Get Your Personal Trainer