Skip to content

Commit b1727ab

Browse files
committed
added research area
1 parent f26c37c commit b1727ab

File tree

8 files changed

+54
-52
lines changed

8 files changed

+54
-52
lines changed

public/index.html

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,12 @@
99
name="description"
1010
content="Personal Website of Shuvayan Ghosh Dastidar"
1111
/>
12+
<meta property="og:title" content="Shuvayan's Portfolio Website">
13+
<meta property="og:description" content="Personal website of Shuvayan Ghosh Dastidar written in ReactJs and tailwindcss.">
14+
<meta property="og:image" content="./pic1.jpg">
15+
<meta property="og:url" content="https://thesyncoder.github.io">
16+
17+
<meta name="twitter:image" content="./pic1.jpg">
1218
<link rel="apple-touch-icon" href="%PUBLIC_URL%/logo192.png" />
1319

1420
<link rel="manifest" href="%PUBLIC_URL%/manifest.json" />

public/pic1.jpg

102 KB
Loading

src/App.js

Lines changed: 0 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -24,19 +24,6 @@ import Mail from "./Components/Mail";
2424
const Component = () => {
2525
const { theme, setTheme } = useTheme();
2626
const [ state, dispatch ] = useContext(Context);
27-
const options = {
28-
cMapUrl: 'cmaps/',
29-
cMapPacked: true,
30-
};
31-
32-
// const [file, setFile] = React.useState(pdfFile);
33-
// const [numPages, setNumPages] = React.useState(null);
34-
// const [pageNumber, setPageNumber] = React.useState(1);
35-
36-
// function onDocumentLoadSuccess({ numPages: nextNumPages }) {
37-
// console.log('doc loaded');
38-
// setNumPages(nextNumPages);
39-
// }
4027

4128
React.useEffect(() => {
4229
setTheme('dark');
@@ -61,43 +48,13 @@ const Component = () => {
6148

6249
return (
6350
<div className="relative bg-transparent" style={{zIndex :2}}>
64-
{/* <div className="flex justify-items-center align-middle">
65-
<button className="rounded-xl h-6 w-12 bg-red-400 dark:bg-white text-black focus:outline-none"
66-
onClick={() => {
67-
setTheme(theme === 'dark' ? 'light' : 'dark'
68-
);
69-
}}
70-
>Toggle</button>
71-
<button className="rounded-xl h-6 w-12 bg-red-400 dark:bg-white text-black focus:outline-none"
72-
onClick = {() => dispatch({type : "NEW_WINDOW" , payload : { id : '123343', header : true }})}
73-
>Click to open</button>
74-
<button className="rounded-xl h-24 w-24 ml-5 bg-red-400 dark:bg-white text-black focus:outline-none"
75-
onClick = {() => dispatch({type : "NEW_WINDOW" , payload : { id : '1231ew43', header : true }})}
76-
>Click to open different</button>
77-
<button className="rounded-xl h-40 w-24 ml-5 bg-red-400 dark:bg-white text-black focus:outline-none"
78-
onClick = {() => dispatch({type : "NEW_WINDOW" , payload : { id : 'PROFILE', header : true }})}
79-
>Click to open Profile</button>
80-
<button className="rounded-xl h-40 w-24 ml-5 bg-red-400 dark:bg-white text-black focus:outline-none"
81-
onClick = {() => dispatch({type : "NEW_WINDOW" , payload : { id : 'TERMINAL', header : true, title :"Terminal" }})}
82-
>Click to open terminal</button>
83-
</div> */}
8451
<div>
8552
{state.windowsOpen.map(w =>
8653
<Draggable key={w.id} id={w.id} header={w.header} title={w.title} >
8754
{ getComponent(w.id) }
8855
</Draggable>
89-
9056
)}
9157
</div>
92-
{/* <div className="relative z-20 w-2/3">
93-
<Document
94-
file={file}
95-
onLoadSuccess={onDocumentLoadSuccess}
96-
options={options}
97-
>
98-
<Page pageNumber={pageNumber} width={600} />
99-
</Document>
100-
</div> */}
10158
</div>
10259
);
10360
}

src/Assets/Shuvayan.pdf

91 KB
Binary file not shown.

src/Components/Profile.js

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import About from './Screens/About';
44
import Projects from './Screens/Projects';
55
import Research from './Screens/Research';
66
import Timeline from "./Timeline";
7+
import Resume from "./Screens/Resume";
78

89
import AboutSVG from "../Assets/profile.svg"
910
import ProjectSVG from "../Assets/project.svg"
@@ -20,7 +21,8 @@ const Profile = (props) => {
2021
'about' : <About/>,
2122
'projects' : <Projects/>,
2223
'research' : <Research/>,
23-
'timeline' : <Timeline/>
24+
'timeline' : <Timeline/>,
25+
'resume' : <Resume />,
2426
}
2527

2628
const changeScreen = (e) => {
@@ -58,6 +60,10 @@ const Profile = (props) => {
5860
<img className=" w-2 md:w-4 " alt="Timeline" src={ Clock }/>
5961
<span className=" ml-1 md:ml-2 text-black text-xs dark:text-white">Timeline</span>
6062
</div>
63+
<div tabIndex="0" onFocus={() => changeScreen('resume')} className={(activeScreen === "resume" ? " bg-gray-300 bg-opacity-100 hover:bg-opacity-95" : " hover:bg-gray-50 hover:bg-opacity-5 ") + " w-28 md:w-full rounded-lg cursor-default outline-none py-1.5 focus:outline-none duration-100 my-0.5 flex items-center pl-2 md:pl-2.5"}>
64+
<img className=" w-2 md:w-4 " alt="Timeline" src={ Clock }/>
65+
<span className=" ml-1 md:ml-2 text-black text-xs dark:text-white">Resume</span>
66+
</div>
6167

6268
</div>
6369
);

src/Components/Screens/Research.js

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,26 @@ import React from 'react';
22

33
const Research = () => {
44
return (
5-
<div className="text-black">Research</div>
5+
<div>
6+
<div className="items-center flex flex-col h-full w-full">
7+
<div className="text-xl dark:text-white text-black font-black">Research Work</div>
8+
<div className="flex mx-7 my-3">
9+
<ul className="list-none">
10+
<li className="text-md font-medium dark:text-white text-black my-2">Worked at Jadavapur University CMATER (DVLP) Lab and was involved in making classification and segmentation models for the task of scene text detection. Also worked on making of the <a className="border-b-2 border-black dark:border-white" href="https://dvlp.herokuapp.com/">Lab website</a></li>
11+
<li className="text-md font-medium dark:text-white text-black my-2">Worked under Prof. Biplab Banerjee of Indian Institute of Technology, Bombay to develop models for screening of covid affected patients from Chest-Xray images. Many appraches were experimented upon including an adversarial approach involving domain adaptation.</li>
12+
</ul>
13+
</div>
14+
<div className="text-xl dark:text-white text-black font-black">Publications and Blogs</div>
15+
<div className="flex mx-7 my-3">
16+
<ul className="list-decimal">
17+
<li className="text-md font-medium dark:text-white text-black my-2">Accepted at CICBA international conference - Exploring Knowledge Distillation of a Deep Neural Network for Multi-Script identification . <a className="border-b-2 border-black dark:border-white" href="https://arxiv.org/abs/2102.10335">[Link]</a> . <a className="border-b-2 border-black dark:border-white" href="https://drive.google.com/file/d/1ReOFt0V73ASUDIk02pL1ubYUb_duEVgH/view?usp=sharing">[Certificate]</a> </li>
18+
<li className="text-md font-medium dark:text-white text-black my-2">Image processing with OpenCV published in medium publication - Towards AI. <a className="border-b-2 border-black dark:border-white" href="https://pub.towardsai.net/image-processing-basics-through-opencv-e9cbc6130821">[Link]</a></li>
19+
<li className="text-md font-medium dark:text-white text-black my-2">Spring Boot web application and making a docker container and dockerizing it in medium publication - Geek Culture. <a className="border-b-2 border-black dark:border-white" href="https://medium.com/geekculture/a-full-stack-e-commerce-application-using-spring-boot-and-making-a-docker-container-eff46f6f4e14">[Link]</a></li>
20+
<li className="text-md font-medium dark:text-white text-black my-2">A React frontend for a spring boot application in medium publication - Geek Culture. <a className="border-b-2 border-black dark:border-white" href="https://medium.com/geekculture/a-reactjs-web-application-with-a-spring-boot-backend-and-containerizing-it-using-docker-3eeaed8cb45a">[Link]</a></li>
21+
</ul>
22+
</div>
23+
</div>
24+
</div>
625
)
726
}
827

src/Components/Screens/Resume.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
2+
import Shuvayan from "../../Assets/Shuvayan.pdf";
3+
const Resume = () => {
4+
return <iframe className="h-full w-full" src={Shuvayan} title="Shuvayan's Resume"></iframe>
5+
}
6+
7+
export default Resume;

src/Components/Terminal.js

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -197,21 +197,28 @@ const Terminal = (props) => {
197197
var validDir = currDir === 'shuvayan' ? Object.keys(dirStr) : dirStr[currDir];
198198
var filenames = Object.keys(JSON.parse(localStorage.getItem('files')));
199199
// cannot open files
200-
const appname =tokens[1];
200+
const appname =tokens[1].toLowerCase();
201201
if ( filenames.indexOf( currDir + '/' + appname ) !== -1){
202202
return [ 'open: error: cannot open file : ' + appname];
203203
}
204204
// open finder on not app
205205

206206
// TODO fix implementation of finder and mail apps
207-
var dirs = Object.keys(JSON.parse(localStorage.getItem('localstructure')));
208-
if ( dirs.indexOf( currDir + '/' + appname ) !== -1){
209-
dispatch({ type: "NEW_WINDOW", payload: { id: 'RANDOM', header: true, title : appname } })
210-
return ret;
211-
}
207+
// var dirs = Object.keys(JSON.parse(localStorage.getItem('localstructure')));
208+
// if ( dirs.indexOf( currDir + '/' + appname ) !== -1){
209+
// dispatch({ type: "NEW_WINDOW", payload: { id: 'RANDOM', header: true, title : appname } })
210+
// return ret;
211+
// }
212212
var validApps = dirStr['shuvayan/applications'].map(e => e.toLowerCase());
213213
if (currDir === 'shuvayan/applications' && validApps.indexOf(appname) !== -1){
214-
dispatch({ type: "NEW_WINDOW", payload: { id: 'RANDOM', header: true, title: appname } })
214+
if ( appname === 'terminal.app'){
215+
dispatch({ type: "NEW_WINDOW", payload: { id: 'TERMINAL', header: true, title: appname } })
216+
} else if ( appname === 'mail.app'){
217+
dispatch({ type: "NEW_WINDOW", payload: { id: 'MAIL', header: true, title: appname } });
218+
} else {
219+
dispatch({ type: "NEW_WINDOW", payload: { id: 'PROFILE', header: true, title: appname } });
220+
}
221+
215222
return ret;
216223
}
217224
return ['open: error: cannot open ' + appname]

0 commit comments

Comments
 (0)