diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000..d7612b9 --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,64 @@ +name: Deploy Next.js site to Pages + +on: + # Runs on pushes targeting the working branch + push: + branches: + - working + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages +permissions: + contents: read + pages: write + id-token: write + +# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. +# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. +concurrency: + group: "pages" + cancel-in-progress: false + +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Install Node.js + uses: actions/setup-node@v4 + with: + node-version: 18 + + - name: Run install + uses: borales/actions-yarn@v4 + with: + cmd: install # will run `yarn install` command + + - name: Build production bundle + uses: borales/actions-yarn@v4 + with: + cmd: build # will run `yarn build` command + + - name: Setup Pages + id: setup_pages + uses: actions/configure-pages@v5 + + - name: Upload artifact + uses: actions/upload-pages-artifact@v3 + with: + path: ./out + + deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + needs: build + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 diff --git a/.gitignore b/.gitignore index 4d29575..b7bf09a 100644 --- a/.gitignore +++ b/.gitignore @@ -21,3 +21,7 @@ npm-debug.log* yarn-debug.log* yarn-error.log* + +#next +.next +.vscode \ No newline at end of file diff --git a/README.md b/README.md deleted file mode 100644 index 9d6fa78..0000000 --- a/README.md +++ /dev/null @@ -1,22 +0,0 @@ -# Personal Website - -Hey there, welcome to my personal website. -This is a portfolio website built on the theme of MacOS made with ReactJs and TailwindCSS. -This is currently under development. - -# UNDER DEVELOPMENT :construction: on :apple: - -## Features present currently - -* MacOs Bash terminal support for basic commands like ls, cd ,clear. -* Opening of multiple windows -* Changing of desktop background -* And Obviously - My Portfolio in a window ( working on it). - -## Contributions are most welcome - -If you think you can help grow this website, consider forking the main repo and making a pull request. Will be more than happy to integrate it. - -### Disclaimer - -All trademarks(including logos and icons) remain the property of their respective owners. Unless specified or identified, the use of the trademarks does not indicate any relationship, endorsement or sponsorship. All references are to identify the corresponding third party goods. \ No newline at end of file diff --git a/asset-manifest.json b/asset-manifest.json new file mode 100644 index 0000000..1d4ff11 --- /dev/null +++ b/asset-manifest.json @@ -0,0 +1,35 @@ +{ + "files": { + "main.css": "/static/css/main.fcc773a3.chunk.css", + "main.js": "/static/js/main.e15adbfb.chunk.js", + "main.js.map": "/static/js/main.e15adbfb.chunk.js.map", + "runtime-main.js": "/static/js/runtime-main.beb17d61.js", + "runtime-main.js.map": "/static/js/runtime-main.beb17d61.js.map", + "static/css/2.cbee07c5.chunk.css": "/static/css/2.cbee07c5.chunk.css", + "static/js/2.c7591f6e.chunk.js": "/static/js/2.c7591f6e.chunk.js", + "static/js/2.c7591f6e.chunk.js.map": "/static/js/2.c7591f6e.chunk.js.map", + "static/js/3.b39ae24a.chunk.js": "/static/js/3.b39ae24a.chunk.js", + "static/js/3.b39ae24a.chunk.js.map": "/static/js/3.b39ae24a.chunk.js.map", + "e8c6accbe6ccad797504a6374f977aa0.js": "/e8c6accbe6ccad797504a6374f977aa0.js", + "e8c6accbe6ccad797504a6374f977aa0.js.LICENSE.txt": "/e8c6accbe6ccad797504a6374f977aa0.js.LICENSE.txt", + "index.html": "/index.html", + "static/css/2.cbee07c5.chunk.css.map": "/static/css/2.cbee07c5.chunk.css.map", + "static/css/main.fcc773a3.chunk.css.map": "/static/css/main.fcc773a3.chunk.css.map", + "static/js/2.c7591f6e.chunk.js.LICENSE.txt": "/static/js/2.c7591f6e.chunk.js.LICENSE.txt", + "static/media/hdd.9b8dbc3b.png": "/static/media/hdd.9b8dbc3b.png", + "static/media/photo.fa388ab8.jpg": "/static/media/photo.fa388ab8.jpg", + "static/media/pic1.e4635060.jpg": "/static/media/pic1.e4635060.jpg", + "static/media/pic2.3aa4b35e.jpg": "/static/media/pic2.3aa4b35e.jpg", + "static/media/pic3.69728d7f.jpg": "/static/media/pic3.69728d7f.jpg", + "static/media/profile.789992e9.svg": "/static/media/profile.789992e9.svg", + "static/media/project.cb868764.svg": "/static/media/project.cb868764.svg", + "static/media/research.8335af3b.svg": "/static/media/research.8335af3b.svg" + }, + "entrypoints": [ + "static/js/runtime-main.beb17d61.js", + "static/css/2.cbee07c5.chunk.css", + "static/js/2.c7591f6e.chunk.js", + "static/css/main.fcc773a3.chunk.css", + "static/js/main.e15adbfb.chunk.js" + ] +} \ No newline at end of file diff --git a/components/mac/Constants/timelineData.json b/components/mac/Constants/timelineData.json new file mode 100644 index 0000000..83d2bf6 --- /dev/null +++ b/components/mac/Constants/timelineData.json @@ -0,0 +1,47 @@ +[ + { + "title": "CICBA", + "description": "Gave a presentation on my paper at CICBA", + "date": "7-9 January 2021" + }, + { + "title": "First Paper Acceptance", + "description": "My Paper on Knowledge Distillation got accepted at CICBA International Conference", + "date": "22 December 2020" + }, + { + "title": "Blogging", + "description": "Wrote many blogs on platforms like medium and GFG", + "date": "Sep-Oct 2020" + }, + { + "title": "Amazon SDE intern", + "description": "Selected as an Amazon Summer SDE Intern through campus internship drive of Jadavpur University", + "date": "8 September 2020" + }, + { + "title": "SIH Winner", + "description": "My team become the winners of SIH 2020 for our app - EcoEden ( written in flutter )", + "date": "3 July 2020" + }, + { + "title": "Analytical Intern at My Ways", + "description": "Started working as an analytical intern at My Ways", + "date": "4 June 2020" + }, + { + "title": "Undergraduate Reasearch Intern at IIT Bombay", + "description": "Started working under professor Biblab Banerjee of IIT Bombay.", + "date": "4 April 2020" + }, + { + "title": "Undergraduate Reasearch Intern at Jadavpur University", + "description": "Started working as an undergraduate researcher in CMATER(DVLP) Lab of Jadavpur University under Professor Nibaran Das.", + "date": "24 April 2019" + }, + { + "title": "Jadavpur University, Kolkata ( CS 2022 Batch )", + "description": "My journey with Computer Science started with the orientation.", + "date": "2 August 2018" + } +] \ No newline at end of file diff --git a/components/mac/Screens/About.tsx b/components/mac/Screens/About.tsx new file mode 100644 index 0000000..e108616 --- /dev/null +++ b/components/mac/Screens/About.tsx @@ -0,0 +1,42 @@ +import React from 'react'; +import Image from 'next/image' +import Typewriter from 'typewriter-effect'; + + +const About = () : any => { + return ( +
+ ) +} + +export default About; \ No newline at end of file diff --git a/components/mac/Screens/Projects.tsx b/components/mac/Screens/Projects.tsx new file mode 100644 index 0000000..a314f6b --- /dev/null +++ b/components/mac/Screens/Projects.tsx @@ -0,0 +1,44 @@ +import React from 'react'; +const Projects = () => { + + const projectList = [ + { + title : 'Jadavpur University Compiler Compiler', + description : 'A LL(1) parser written in C++. It supports dynamic grammar files for parsing different languages and visualizes the abstract syntax tree using Treant.js', + link: 'https://github.com/TheSYNcoder/JuCC', + featImage: 'https://user-images.githubusercontent.com/42897033/116920657-8acdf480-ac70-11eb-8d3f-46cf27fcb1a1.png' , + }, + { + title : 'An Assembler', + description: 'Implementation of a two-pass assembler involving tries for fast in-memory opcode fetch and has implementation of loader and linkers for linking the object file created to make an executable file.', + link: 'https://github.com/TheSYNcoder/ProprietaryAssembler', + featImage: 'https://images.unsplash.com/photo-1583109193439-1ebb113bceac?ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&ixlib=rb-1.2.1&auto=format&fit=crop&w=1237&q=80' , + }, + // { + // title : 'Budgify', + // description: 'A personal savings app to maintain your day to day expenses and incomes. The app has many features such as tracking expenses and visualizing them', + // link: 'https://play.google.com/store/apps/details?id=com.budgify', + // featImage: 'https://play-lh.googleusercontent.com/WN77wvQymKgTcOBXt1o-C6hSQfTOcorhkYr6VpXAWf0bvm5tDHSAPPRNC7ev-nn3fPM=s180-rw', + // }, + ] + + return ( ++ {te.description} +
+2&&void 0!==arguments[2]&&arguments[2],r=e.gen,s=e.num;if(t.gen!==r)throw new o.XRefEntryException("Inconsistent generation in XRef: ".concat(e));var c=this.stream.makeSubStream(t.offset+this.stream.start),l=new i.Parser({lexer:new i.Lexer(c),xref:this,allowStreams:!0}),u=l.getObj(),h=l.getObj(),f=l.getObj();if(u!==s||h!==r||!(f instanceof n.Cmd))throw new o.XRefEntryException("Bad (uncompressed) XRef entry: ".concat(e));if("obj"!==f.cmd){if(f.cmd.startsWith("obj")&&(s=parseInt(f.cmd.substring(3),10),!Number.isNaN(s)))return s;throw new o.XRefEntryException("Bad (uncompressed) XRef entry: ".concat(e))}return t=this.encrypt&&!a?l.getObj(this.encrypt.createCipherTransform(s,r)):l.getObj(),(0,n.isStream)(t)||this._cacheMap.set(s,t),t},fetchCompressed:function(e,t){var a=t.offset,s=this.fetch(n.Ref.get(a,0));if(!(0,n.isStream)(s))throw new r.FormatError("bad ObjStm stream");var c=s.dict.get("First"),l=s.dict.get("N");if(!Number.isInteger(c)||!Number.isInteger(l))throw new r.FormatError("invalid first and n parameters for ObjStm stream");for(var u=new i.Parser({lexer:new i.Lexer(s),xref:this,allowStreams:!0}),h=new Array(l),f=0;f p))return t.fetchIfRef(u[g+1]);h=g+2}}(0,r.info)('Falling back to an exhaustive search, for key "'.concat(e,'", ')+'in "'.concat(this._type,'" tree.'));for(var m=0,v=u.length;m 0;)C[f++]=k}u=this.generateHuffmanTable(C.subarray(0,d)),h=this.generateHuffmanTable(C.subarray(d,w))}for(var A=(o=this.buffer)?o.length:0,I=this.bufferLength;;){var F=this.getCode(u);if(F<256)I+1>=A&&(A=(o=this.ensureBuffer(I+1)).length),o[I++]=F;else{if(256===F)return void(this.bufferLength=I);var T=(F=t[F-=257])>>16;T>0&&(T=this.getBits(T)),s=(65535&F)+T,F=this.getCode(h),(T=(F=a[F])>>16)>0&&(T=this.getBits(T));var O=(65535&F)+T;I+s>=A&&(A=(o=this.ensureBuffer(I+s)).length);for(var E=0;E =e?B<<=1:B=B<<1|x[P][_];for(f=0;f=C||_<0||_>=w?B<<=1:B=B<<1|r[P][_];var M=A.readBit(I,B);O[E]=M}}return x}function m(e,t,r,n,i,o,l,u,h,f,d,g,m,v,b,y,k,w,C){if(e&&t)throw new s("refinement with Huffman is not supported");var S,x,A=[];for(S=0;S15))throw new r.FormatError("Unsupported predictor: ".concat(i));this.readBlock=2===i?this.readBlockTiff:this.readBlockPng,this.str=e,this.dict=e.dict;var o=this.colors=a.get("Colors")||1,s=this.bits=a.get("BitsPerComponent")||8,l=this.columns=a.get("Columns")||1;return this.pixBytes=o*s+7>>3,this.rowBytes=l*o*s+7>>3,c.call(this,t),this}return e.prototype=Object.create(c.prototype),e.prototype.readBlockTiff=function(){var e=this.rowBytes,t=this.bufferLength,a=this.ensureBuffer(t+e),r=this.bits,n=this.colors,i=this.str.getBytes(e);if(this.eof=!i.length,!this.eof){var o,s=0,c=0,l=0,u=0,h=t;if(1===r&&1===n)for(o=0;o>>0}var o=i(1),s=i(1)?i(1)?i(1)?i(1)?i(1)?i(32)+4436:i(12)+340:i(8)+84:i(6)+20:i(4)+4:i(2);return 0===o?s:s>0?-s:null}function c(e,t,a){for(var r=e.getContexts("IAID"),n=1,i=0;i=B&&I>15&1,this.clow=this.clow<<1&65535,this.ct--}while(0===(32768&c));return this.a=c,e[t]=n<<1|i,a}}]),e}();t.ArithmeticDecoder=n},function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.JpegStream=void 0;var r=a(12),n=a(5),i=a(19),o=a(2),s=function(){function e(e,t,a,n){for(var i;-1!==(i=e.getByte());)if(255===i){e.skip(-1);break}this.stream=e,this.maybeLength=t,this.dict=a,this.params=n,r.DecodeStream.call(this,t)}return e.prototype=Object.create(r.DecodeStream.prototype),Object.defineProperty(e.prototype,"bytes",{get:function(){return(0,o.shadow)(this,"bytes",this.stream.getBytes(this.maybeLength))},configurable:!0}),e.prototype.ensureBuffer=function(e){},e.prototype.readBlock=function(){if(!this.eof){var e={decodeTransform:void 0,colorTransform:void 0},t=this.dict.getArray("Decode","D");if(this.forceRGB&&Array.isArray(t)){for(var a=this.dict.get("BitsPerComponent")||8,r=t.length,o=new Int32Array(r),s=!1,c=(1<0&&void 0!==arguments[0]?arguments[0]:{},t=e.decodeTransform,a=void 0===t?null:t,r=e.colorTransform,n=void 0===r?-1:r;this._decodeTransform=a,this._colorTransform=n}function p(e,t){for(var a,r,n=0,i=[],o=16;o>0&&!e[o-1];)o--;i.push({children:[],index:0});var s,c=i[0];for(a=0;a>s,f=t.tby0>>c,d=t.tbx1+l-1>>s,g=t.tby1+u-1>>c,p=t.resolution.precinctParameters,m=[],v=[];for(n=f;n=1;--c){a=i[13],i[13]=i[9],i[9]=i[5],i[5]=i[1],i[1]=a,a=i[14],r=i[10],i[14]=i[6],i[10]=i[2],i[6]=a,i[2]=r,a=i[15],r=i[11],n=i[7],i[15]=i[3],i[11]=a,i[7]=r,i[3]=n;for(var l=0;l<16;++l)i[l]=this._inv_s[i[l]];for(var u=0,h=16*c;u<16;++u,++h)i[u]^=t[h];for(var f=0;f<16;f+=4){var d=this._mix[i[f]],g=this._mix[i[f+1]],p=this._mix[i[f+2]],m=this._mix[i[f+3]];a=d^g>>>8^g<<24^p>>>16^p<<16^m>>>24^m<<8,i[f]=a>>>24&255,i[f+1]=a>>16&255,i[f+2]=a>>8&255,i[f+3]=255&a}}a=i[13],i[13]=i[9],i[9]=i[5],i[5]=i[1],i[1]=a,a=i[14],r=i[10],i[14]=i[6],i[10]=i[2],i[6]=a,i[2]=r,a=i[15],r=i[11],n=i[7],i[15]=i[3],i[11]=a,i[7]=r,i[3]=n;for(var v=0;v<16;++v)i[v]=this._inv_s[i[v]],i[v]^=t[v];return i}},{key:"_encrypt",value:function(e,t){var a,r,n,i=this._s,o=new Uint8Array(16);o.set(e);for(var s=0;s<16;++s)o[s]^=t[s];for(var c=1;c0&&void 0!==arguments[0]&&arguments[0];this.optimizer.flush();var t=this.length;this._totalLength+=t,this._streamSink.enqueue({fnArray:this.fnArray,argsArray:this.argsArray,lastChunk:e,length:t},1,this._transfers),this.dependencies.clear(),this.fnArray.length=0,this.argsArray.length=0,this.weight=0,this.optimizer.reset()}},e}();t.OperatorList=o},function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.writeDict=o,t.incrementalUpdate=function(e,t,a){var s,u,h=new n.Dict(null),f=t.newRef,d=e[e.length-1];10===d||13===d?(s=[],u=e.length):(s=["\n"],u=e.length+1);h.set("Size",f.num+1),h.set("Prev",t.startXRef),h.set("Type",n.Name.get("XRef")),null!==t.rootRef&&h.set("Root",t.rootRef);null!==t.infoRef&&h.set("Info",t.infoRef);null!==t.encrypt&&h.set("Encrypt",t.encrypt);a.push({ref:f,data:""}),a=a.sort((function(e,t){return e.ref.num-t.ref.num}));var g,p=[[0,1,65535]],m=[0,1],v=0,b=_createForOfIteratorHelper(a);try{for(b.s();!(g=b.n()).done;){var y=g.value,k=y.ref,w=y.data;v=Math.max(v,u),p.push([1,u,Math.min(k.gen,65535)]),u+=w.length,m.push(k.num),m.push(1),s.push(w)}}catch(L){b.e(L)}finally{b.f()}if(h.set("Index",m),0!==t.fileIds.length){var C=function(e,t){for(var a=Math.floor(Date.now()/1e3),n=t.filename||"",o=[a.toString(),n,e.toString()],s=o.reduce((function(e,t){return e+t.length}),0),c=0,u=Object.values(t.info);cl&&(0,r.info)("Command ".concat(o,": expected [0, ").concat(l,"] args, ")+"but received ".concat(u," args."));else{if(u!==l){for(var h=this.nonProcessedArgs;u>l;)h.push(a.shift()),u--;for(;u>24&255,n[u]=d>>16&255,n[h]=d>>8&255,n[f]=255&d}}}]),e}(),w=function(){function e(t){_classCallCheck(this,e),this.cff=t}return _createClass(e,[{key:"compile",value:function(){var e=this.cff,t={data:[],length:0,add:function(e){this.data=this.data.concat(e),this.length=this.data.length}},a=this.compileHeader(e.header);t.add(a);var n=this.compileNameIndex(e.names);if(t.add(n),e.isCIDFont&&e.topDict.hasName("FontMatrix")){var i=e.topDict.getByName("FontMatrix");e.topDict.removeByName("FontMatrix");for(var o=0,s=e.fdArray.length;o=-107&&e<=107?[e+139]:e>=108&&e<=1131?[247+((e-=108)>>8),255&e]:e>=-1131&&e<=-108?[251+((e=-e-108)>>8),255&e]:e>=-32768&&e<=32767?[28,e>>8&255,255&e]:[29,e>>24&255,e>>16&255,e>>8&255,255&e]}},{key:"compileHeader",value:function(e){return[e.major,e.minor,e.hdrSize,e.offSize]}},{key:"compileNameIndex",value:function(e){for(var t=new f,a=0,n=e.length;a