Motta
Motta
1. Table of Contents
2. Acknowledgement
3. Internship Certificate
4. Company information
7. Technology
8. Coding
9. Screenshots
11. Conclusion
12. Bibliography
1
2. ACKNOWLEDGEMENT
I would like to express my sincere gratitude to MindForce Technology Pvt Ltd. for providing me with the
opportunity to complete my internship as a Web Developer.
The experience has been incredibly valuable and has helped me gain practical knowledge in the field of
web design and development.
I am especially thankful to my internship for his constant guidance, encouragement, and constructive
feedback throughout my training period. His mentorship has helped me improve my technical as well as
problem-solving skills.
I also extend my heartfelt thanks to all the team members at MindForce Technology for their support and
cooperation during the internship. Working with such a talented team gave me insights into real-world
project development and teamwork.
I am deeply grateful to my college faculty and department for arranging this internship and for their
continuous support throughout my academic journey.
Finally, I would like to thank my family and friends for their motivation and encouragement, which helped
me successfully complete this internship and report.
Sharan S
MCA
3. INTERNSHIP CERTIFICATE
3
4. COMPANY INFORMATION
Company Name: MindForce Technology Pvt. Ltd.
Address: No. 959/21A, Velachery Main Road, Camproad Junction, Selaiyur, Chennai – 600 073, Tamil
Nadu, India
Website: [Link]
Email: contact@[Link]
MindForce Technology Pvt. Ltd. is an information technology company that provides innovative software
and web solutions to clients across various industries. The company focuses on delivering high-quality IT
services, including web development, software development, digital transformation, and real-time business
solutions.
The organization emphasizes learning, creativity, and innovation, enabling interns and employees to gain
practical exposure to modern tools, technologies, and methodologies in the IT sector.
4
5. INTERNSHIP DESCRIPTION
My internship at MindForce Technology Pvt. Ltd., Chennai, was carried out from September 8, 2025 to
September 24, 2025 as part of my academic program for the MCA Department of Computer Science,
Bharath Institute of Higher Education & Research. The internship was focused on Web Development and
aimed to provide real-time exposure to professional software development environments.
During the internship, I was given the opportunity to work under the guidance of experienced developers
and mentors who helped me understand the complete process of web application design and development. I
actively participated in both front-end and back-end development tasks, including designing user interfaces,
writing clean and efficient code, and performing testing and debugging.
The main objective of my internship was to gain practical experience in creating dynamic and responsive
websites using technologies like HTML, CSS, JavaScript, PHP, and MySQL. I also learned about project
workflows, version control (GitHub), and web hosting techniques.
Throughout the internship, I was involved in developing a personal portfolio website, which helped me
apply my technical knowledge to a real-world project. This experience improved my problem-solving skills,
enhanced my coding efficiency, and gave me valuable insights into teamwork, project management, and
client communication.
Overall, the internship at MindForce Technology Pvt. Ltd. provided me with essential professional skills,
strengthened my technical foundation, and gave me confidence to pursue a career in web development.
6. INTRODUCTION
The internship program is an essential part of the academic curriculum that bridges the gap between
theoretical learning and practical application. It provides students with the opportunity to gain hands-on
experience in a real work environment and understand the functioning of the industry.
This internship helped me enhance my technical knowledge, improve my problem-solving skills, and gain
valuable professional experience that will support my future career in the IT field.
Development Process:
I followed a systematic web development process that covered all key stages of building a functional and
user-friendly website. The development process was based on the Software Development Life Cycle
(SDLC) and Agile methodology, which ensured continuous improvement and collaboration.
1. Requirement Analysis
The first stage involved understanding the client’s needs and project goals. I discussed with the team to
gather information about the website’s purpose, target audience, design preferences, and key functionalities
such as user login, content display, and contact forms.
3. Front-End Development
In this phase, I developed the user interface using HTML, CSS, and JavaScript. I ensured the design was
responsive and attractive by applying CSS styling and Bootstrap frameworks. JavaScript was used to add
interactivity and dynamic features to the web pages.
4. Back-End Development
For the back-end, I used PHP as the server-side scripting language and MySQL as the database. This part
involved connecting the website to the database, managing data storage, and enabling user authentication
and data retrieval functions.
Project Overview:
During my internship I worked on a web development project that aimed to design and develop a
responsive and interactive website. The project allowed me to apply my technical knowledge and improve
my understanding of both front-end and back-end development processes.
The main objective of the project was to create a user-friendly website that provides smooth navigation,
appealing design, and efficient data management. The project also helped me learn how to integrate
databases, handle user input, and deploy the website to a live environment.
Throughout the project, I gained valuable experience in using web technologies, understanding client
requirements, implementing responsive design, and testing the final product to ensure it met performance
and usability standards.
Front-End Development:
7
Back-End Development:
use Cases
Use CaseUse Case NameDescription
ID Admin Login Admin logs into the system using valid
UC1 Manage Profilecredentials
UC2 Manage Admin updates personal and skill details
UC3 Projects Admin adds, edits, or deletes projects
UC4 View Portfolio Visitors view the personal portfolio
UC5 Contact Form Visitors send messages to the admin
Technology Used
10
TermDefinition
HTMHypertext Markup
L Language
CSS Cascading Style Sheets
PHP Hypertext Preprocessor
SQL Structured Query Language
UI User Interface
UX User Experience
11
8. Technology Used
During my internship I worked with a combination of front-end and back-end technologies to develop a
dynamic and responsive web application. These technologies helped me understand how to design, code,
test, and deploy a complete website efficiently.
1. Front-End Technologies
2. Back-End Technologies
• Visual Studio Code: Used as the main code editor for writing and managing the source code.
• GitHub: Used for version control and maintaining the project repository.
• Figma/Canva: Used for creating wireframes and designing visual layouts before implementation.
• Browser Developer Tools: Used for debugging, inspecting elements, and testing responsiveness.
12
Architecture diagram:
13
9. CODING
[Link]:
<?php require_once('../[Link]') ?>
<!DOCTYPE html>
<html lang="en" class="" style="height: auto;">
<?php require_once('inc/[Link]')?>
<body class="hold-transition login-page bg-black">
<script> start_loader()
</script>
<h2 class="text-center mb-4 pb-3"><?php echo $_settings->info('name') ?></h2>
<div class="login-box">
<!-- /.login-logo -->
<div class="card card-outline card-primary">
<div class="card-body">
<p class="login-box-msg text-dark">Sign in to start your session</p>
<form id="login-frm" action="" method="post">
<div class="input-group mb-3">
<input type="text" class="form-control" name="username" placeholder="Username" autofocus>
<div class="input-group-append">
<div class="input-group-text">
<span class="fas fa-user"></span>
</div>
</div>
</div>
<div class="input-group mb-3">
<input type="password" class="form-control" name="password" placeholder="Password">
<div class="input-group-append">
<div class="input-group-text">
<span class="fas fa-lock"></span>
</div>
</div>
</div>
<div class="row justify-conten-center">
<!-- /.col -->
<button type="submit" class="btn btn-primary btn-block">Sign In</button> <!-- /.col
-->
</div></form></div><!-- /.card-body --></div>
<script src="plugins/jquery/[Link]"></script>
<script src="dist/js/[Link]"></script>
14
<script>
$(document).ready(function() { end_loader(); })
</script>
</body>
</html>
[Link]
<?php require_once('../[Link]'); ?>
<!DOCTYPE html>
<html lang="en" class="" style="height: auto;">
<?php require_once('inc/[Link]') ?>
<body class="sidebar-mini layout-fixed control-sidebar-slide-open layout-navbar-fixed sidebarminimd
sidebar-mini-xs" data-new-gr-c-s-check-loaded="14.991.0" data-gr-ext-installed="" style="height:
auto;"> <div class="wrapper">
<?php require_once('inc/[Link]') ?>
<?php require_once('inc/[Link]') ?>
15
</div>
<div class="modal-body">
<div id="delete_content"></div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary" id='confirm' onclick="">Continue</button> <button
type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
<div class="modal fade" id="uni_modal" role='dialog'>
<div class="card-header">
<h3 class="card-title">Buget Management</h3>
<div class="card-tools">
<a href="javascript:void(0)" id="manage_budget" class="btn btn-flat btn-sm btnprimary"><span
class="fas fa-plus"></span> Add New</a>
</div>
</div>
<div class="card-body">
<div class="container-fluid">
<div class="container-fluid">
<table class="table table-bordered table-stripped">
<colgroup>
<col width="5%">
<col width="15%">
19
<col width="20%">
<col width="15%">
<col width="30%">
<col width="15%">
</colgroup>
<thead>
<tr>
<th>#</th>
<th>Date Created</th>
17
<th>Category</th>
<th>Amount</th>
<th>Remarks</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php
$i = 1;
$qry = $conn->query("SELECT r.*,[Link],[Link] from `running_balance` r inner join
`categories` c on r.category_id = [Link] where [Link]=1 and r.balance_type = 1 order by
unix_timestamp(r.date_created) desc"); while($row = $qry->fetch_assoc()): foreach($row as $k=>
$v){ $row[$k] = trim(stripslashes($v));
}
$row['remarks'] = strip_tags(stripslashes(html_entity_decode($row['remarks']))); ?> <tr>
<td class="text-center"><?php echo $i++; ?></td>
<td><?php echo date("Y-m-d H:i",strtotime($row['date_created'])) ?></td> <td><?php
echo $row['category'] ?></td>
<td ><p class="m-0 text-right"><?php echo number_format($row['amount']) ?></p></td>
<td ><p class="m-0 truncate"><?php echo ($row['remarks']) ?></p></td> <td align="center">
<button type="button" class="btn btn-flat btn-default btn-sm dropdown-toggle dropdown-icon" data-
toggle="dropdown">
Action
<span class="sr-only">Toggle Dropdown</span>
</button>
<div class="dropdown-menu" role="menu">
20
<a class="dropdown-item manage_budget" href="javascript:void(0)" dataid="<?php echo $row['id']
?>"><span class="fa fa-edit text-primary"></span> Edit</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item delete_data" href="javascript:void(0)" dataid="<?php echo $row['id'] ?>" data-
category_id="<?php echo $row['category_id'] ?>"><span class="fa fa-trash text-danger"></span>
Delete</a>
</div>
</td>
</tr>
<?php endwhile; ?>
</tbody>
</table>
</div>
</div>
</div>
18
</div>
<script>
$(document).ready(function(){ $('#manage_budget').click(function(){
uni_modal("<i class='fa fa-plus'></i> Add New Budget",'budget/manage_budget.php')
})
$('.manage_budget').click(function(){ uni_modal("<i
class='fa fa-edit'></i> Update
Budget",'budget/manage_budget.php?id='+$(this).attr('data-id'))
})
$('.delete_data').click(function(){ _conf("Are you sure to delete this budget
permanently?","delete_budget",[$(this).attr('dataid'),$(this).attr('data-category_id')]) })
$('#uni_modal').on('[Link]',function(){
$
('.summernote').summernote({ height:
200, toolbar: [
[ 'font', [ 'bold', 'italic', 'underline', 'strikethrough', 'superscript', 'subscript', 'clear'] ], [ 'fontsize',
[ 'fontsize' ] ],
[ 'para', [ 'ol', 'ul' ] ],
[ 'view', [ 'undo', 'redo'] ]
]
})
})
$('.table').dataTable({ columnDefs: [
21
{ orderable: false, targets: 5 }
],
order: [[0, 'asc']]
});
})
function delete_budget($id,$category_id){
start_loader(); $.ajax({ url:_base_url_+"classes/[Link]?
f=delete_budget", method:"POST", data:{id: $id,category_id:
$category_id}, dataType:"json", error:err=>{ [Link](err)
alert_toast("An error occured.",'error'); end_loader();
},
success:function(resp){ if(typeof resp== 'object' && [Link] ==
'success'){ [Link]();
}else{ alert_toast("An error
occured.",'error');
end_loader();
}
}
})
}
</script>
19
<!-- /.Expense -->
<?php if($_settings->chk_flashdata('success')): ?>
<script>
alert_toast("<?php echo $_settings->flashdata('success') ?>",'success') </script>
<?php endif;?>
<div class="card card-outline card-primary">
<div class="card-header">
<h3 class="card-title">Expense Management</h3>
<div class="card-tools">
<a href="javascript:void(0)" id="manage_expense" class="btn btn-flat btn-sm btnprimary"><span
class="fas fa-plus"></span> Add New</a>
</div>
</div>
22
<div class="card-body">
<div class="container-fluid">
<div class="container-fluid">
<table class="table table-bordered table-stripped">
<colgroup>
<col width="5%">
<col width="15%">
<col width="20%">
<col width="15%">
<col width="30%">
<col width="15%">
</colgroup>
<thead>
<tr>
<th>#</th>
<th>Date Created</th>
<th>Category</th>
<th>Amount</th>
<th>Remarks</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php
$i = 1;
$qry = $conn->query("SELECT r.*,[Link],[Link] from `running_balance` r
inner join `categories` c on r.category_id = [Link] where [Link]= 1 and r.balance_type = 2 order by
unix_timestamp(r.date_created) desc"); while($row = $qry->fetch_assoc()): foreach($row as
$k=> $v){ $row[$k] =
trim(stripslashes($v)); }
20
$row['remarks'] = strip_tags(stripslashes(html_entity_decode($row['remarks']))); ?> <tr>
<td class="text-center"><?php echo $i++; ?></td>
<td><?php echo date("Y-m-d H:i",strtotime($row['date_created'])) ?></td>
<td><?php echo $row['category'] ?></td>
<td ><p class="m-0 text-right"><?php echo number_format($row['amount']) ?></p></td>
<td ><p class="m-0 truncate"><?php echo ($row['remarks']) ?></p></td> <td
align="center"> 23
<button type="button" class="btn btn-flat btn-default btn-sm dropdown-toggle dropdown-icon" data-
toggle="dropdown">
Action
<span class="sr-only">Toggle Dropdown</span>
</button>
<div class="dropdown-menu" role="menu">
<a class="dropdown-item manage_expense" href="javascript:void(0)" dataid="<?php echo $row['id']
?>"><span class="fa fa-edit text-primary"></span> Edit</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item delete_data" href="javascript:void(0)" dataid="<?php echo $row['id'] ?>" data-
category_id="<?php echo $row['category_id'] ?>"><span class="fa fa-trash text-danger"></span>
Delete</a>
</div>
</td>
</tr>
<?php endwhile; ?>
</tbody>
</table>
</div>
</div>
</div> </div>
<script>
$(document).ready(function(){ $('#manage_expense').click(function(){
uni_modal("<i class='fa fa-plus'></i> Add New Expense",'expense/manage_expense.php')
})
$('.manage_expense').click(function(){ uni_modal("<i
class='fa fa-edit'></i> Update
Expense",'expense/manage_expense.php?id='+$(this).attr('data-id'))
})
$('.delete_data').click(function()
{ _conf("Are you sure to delete this expense
permanently?","delete_expense",[$(this).attr('dataid'),$(this).attr('data-category_id')]) })
$('#uni_modal').on('[Link]',function(){
$('.summernote').summernote({
21
height: 200, toolbar: [
[ 'font', [ 'bold', 'italic', 'underline', 'strikethrough', 'superscript', 'subscript', 'clear'] ], [ 'fontsize',
[ 'fontsize' ] ],
[ 'para', [ 'ol', 'ul' ] ],
24
[ 'view', [ 'undo', 'redo'] ]
]
})
})
$('.table').dataTable({ columnDefs: [
{ orderable: false, targets: 5 }
],
order: [[0, 'asc']]
});
})
function delete_expense($id,$category_id){
start_loader(); $.ajax({ url:_base_url_+"classes/[Link]?
f=delete_expense", method:"POST", data:{id: $id,category_id:
$category_id}, dataType:"json", error:err=>{ [Link](err)
alert_toast("An error occured.",'error'); end_loader();
},
success:function(resp){
if(typeof resp== 'object' && [Link] == 'success'){ [Link]();
}else{
alert_toast("An error occured.",'error'); end_loader();
}
}
})
}
</script>
<!-- /.Maintance -->
<?php if($_settings->chk_flashdata('success')): ?>
<script>
alert_toast("<?php echo $_settings->flashdata('success') ?>",'success')
</script>
<?php endif;?>
<div class="card card-outline card-primary">
<div class="card-header">
25
<h3 class="card-title">List of Packages</h3>
22
<div class="card-tools">
<a href="?page=packages/manage" class="btn btn-flat btn-primary"><span class="fas faplus"></span>
Create New</a>
</div>
</div>
<div class="card-body">
<div class="container-fluid">
<div class="container-fluid">
<table class="table table-bordered table-stripped">
<colgroup>
<col width="5%">
<col width="15%">
<col width="20%">
<col width="35%">
<col width="10%">
<col width="15%">
</colgroup>
<thead>
<tr>
<th>#</th>
<th>Date Created</th>
<th>Package</th>
<th>Description</th>
<th>Status</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php
$i = 1;
$qry = $conn->query("SELECT * from `packages` order by date(date_created) desc
");
while($row = $qry->fetch_assoc()):
$row['description'] =
strip_tags(stripslashes(html_entity_decode($row['description']))); ?>
<tr>
<td class="text-center"><?php echo $i++; ?></td>
<td><?php echo date("Y-m-d H:i",strtotime($row['date_created'])) ?></td>
<td><?php echo $row['title'] ?></td>
<td ><p class="truncate-1 m-0"><?php echo $row['description'] ?></p></td> 26
<td class="text-center">
$(document).ready(function(){ $('.summernote').summernote({
height: 200, toolbar: [ [ 'style', [ 'style' ] ],
[ 'font', [ 'bold', 'italic', 'underline', 'strikethrough', 'superscript', 'subscript', 'clear'] ],
[ 'fontname', [ 'fontname' ] ],
[ 'fontsize', [ 'fontsize' ] ],
[ 'color', [ 'color' ] ],
[ 'para', [ 'ol', 'ul', 'paragraph', 'height' ] ],
[ 'table', [ 'table' ] ],
[ 'view', [ 'undo', 'redo', 'fullscreen', 'codeview', 'help' ] ]
]
})
})
</script>
<--/.User -->
<?php
$user = $conn->query("SELECT * FROM users where id ='".$_settings->userdata('id')."'");
foreach($user>fetch_array() as $k =>$v){
$meta[$k] = $v;
}
?>
<?php if($_settings->chk_flashdata('success')): ?>
33 <script>
alert_toast("<?php echo $_settings->flashdata('success') ?>",'success') </script>
<?php endif;?>
<div class="card card-outline card-primary">
<div class="card-body">
<div class="container-fluid">
<div id="msg"></div>
<form action="" id="manage-user">
<input type="hidden" name="id" value="<?php echo $_settings->userdata('id') ?>">
<div class="form-group">
<label for="name">First Name</label>
<input type="text" name="firstname" id="firstname" class="form-control" value="<?php echo
isset($meta['firstname']) ? $meta['firstname']: '' ?>" required>
</div>
<div class="form-group">
<label for="name">Last Name</label>
29
<input type="text" name="lastname" id="lastname" class="form-control" value="<?php echo
isset($meta['lastname']) ? $meta['lastname']: '' ?>" required>
</div>
<div class="form-group">
<label for="username">Username</label>
<input type="text" name="username" id="username" class="form-control" value="<?php
echo isset($meta['username']) ? $meta['username']: '' ?>" required autocomplete="off">
</div>
<div class="form-group">
<label for="password">Password</label>
<input type="password" name="password" id="password" class="form-control" value=""
autocomplete="off">
<small><i>Leave this blank if you dont want to change the password.</i></small> </div>
<div class="form-group">
<label for="" class="control-label">Avatar</label>
<div class="custom-file">
<input type="file" class="custom-file-input rounded-circle" id="customFile" name="img"
onchange="displayImg(this,$(this))">
<label class="custom-file-label" for="customFile">Choose file</label> </div>
</div>
<div class="form-group d-flex justify-content-center">
34
<img src="<?php echo validate_image(isset($meta['avatar']) ? $meta['avatar'] :'') ?>" alt="" id="cimg"
class="img-fluid img-thumbnail">
</div>
</form>
</div>
</div>
<div class="card-footer">
<div class="col-md-12">
<div class="row">
<button class="btn btn-sm btn-primary" form="manage-user">Update</button> </div></div>
</div></div>
<style> img#cimg{ height:
15vh; width:
15vh; object-fit: cover;
border-radius:
100% 100%;
}
</style> <script> function
displayImg(input,_this) { if
([Link] && [Link][0])
{ var reader = new FileReader();
[Link] = function (e) {
$('#cimg').attr('src', [Link]);
30
}
[Link]([Link][0]);
}
}
$('#manage-user').submit(function(e){
[Link](); start_loader() $.ajax({ url:_base_url_+'classes/[Link]?
f=save', data:
new FormData($(this)[0]),
cache: false, contentType:
false, processData: false,
method: 'POST', type:
'POST',
success:function(resp){
35 if(resp ==1)
{ [Link]() }el
se{
$('#msg').html('<div class="alert alert-danger">Username already exist</div>') end_loader()
}
}
})
})
</script> </body>
</html>
font-family:
monospace;
}
.CodeMirror-dialog button { font-size:
70%;
}
}else{
$qry = $this->conn->query("INSERT into system_info set meta_value = '{$fname}',meta_field
= 'logo' ");
}
}
32
$update = $this->update_system_info();
$flash = $this->set_flashdata('success','System Info Successfully
Updated.'); if($update && $flash){ // var_dump($_SESSION); return
true; }
}
function set_userdata($field='',$value=''){ if(!empty($field)
&& !empty($value)){
$_SESSION['userdata'][$field]= $value;
} }
function userdata($field = ''){ if(!empty($field)){
if(isset($_SESSION['userdata'][$field]))
44
return $_SESSION['userdata'][$field];
else return
null; }else{
return false;
}
}
function set_flashdata($flash='',$value=''){ if(!empty($flash)
&& !empty($value)){ $_SESSION['flashdata'][$flash]=
$value;
return true;
}
}
function chk_flashdata($flash = ''){ if(isset($_SESSION['flashdata'][$flash])){
return true; }else{ return
false; } } function
flashdata($flash = ''){ if(!
empty($flash)){
$_tmp = $_SESSION['flashdata'][$flash]; unset($_SESSION['flashdata']);
return
$_tmp; }else{ return false;
}
} function
sess_des(){
if(isset($_SESSION['userdata'])){
unset($_SESSION['userdata']);
return true; } return true; }
function info($field=''){ if(!empty($field)){
if(isset($_SESSION['system_info'][$field]))
return $_SESSION['system_info'][$field];
else return false; }else{ return false;
33
} }
function set_info($field='',$value=''){ if(!empty($field)
&& !empty($value)){
$_SESSION['system_info'][$field] = $value;
}
}
}
$_settings = new SystemSettings();
$_settings->load_system_info();
$action = !isset($_GET['f']) ? 'none' : strtolower($_GET['f']);
$sysset = new SystemSettings(); switch
($action) { case 'update_settings':
echo $sysset->update_settings_info();
break; default:
// echo $sysset->index(); break;}?>
34
LOGIN PAGE
35
Home page
36
10. SKILLS LEARNED
During my internship at I learned many useful skills related to web development. I improved both my
technical knowledge and professional abilities.
• Learned to create web pages using HTML, CSS, JavaScript, and Bootstrap.
• Gained experience in PHP and MySQL for backend development and database handling.
• Understood how to design and connect databases to websites.
• Learned how to test and fix errors in web applications.
• Improved communication and teamwork skills while working with others.
• Learned time management and how to complete tasks before deadlines.
• Got practical experience in developing and hosting web projects.
•
Overall, this internship helped me apply what I learned in college to real-world projects and improved my
confidence as a web developer.
37