├── Capture.PNG
├── README.md
└── web
├── assets
├── AssetManifest.json
├── FontManifest.json
├── NOTICES
├── assets
│ ├── fonts
│ │ ├── MySocialIcons.ttf
│ │ ├── Ubuntu-Bold.ttf
│ │ ├── Ubuntu-Medium.ttf
│ │ └── Ubuntu-Regular.ttf
│ └── images
│ │ ├── AiVirexlogo.png
│ │ ├── Akshat_logoonlly.jpg
│ │ ├── TATAlogo.png
│ │ ├── Twowaitslogo.png
│ │ ├── digitalgriendlogo.png
│ │ ├── education.png
│ │ ├── iv.png
│ │ ├── man.png
│ │ └── python.png
├── fonts
│ └── MaterialIcons-Regular.otf
└── packages
│ └── cupertino_icons
│ └── assets
│ └── CupertinoIcons.ttf
├── favicon.png
├── flutter_service_worker.js
├── icons
├── Icon-192.png
└── Icon-512.png
├── index.html
├── main.dart.js
├── manifest.json
└── version.json
/Capture.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CRYPTOcoderAS/PortFolio-Flutter-Web/cac833f1935c96a4da35fa711a68a4cabaa2e322/Capture.PNG
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 
5 |
6 |
7 |
8 |
9 | Welcome to my PORTFOLIO 👋
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 | > Portfolio made using Flutter-Web.
21 |
22 | ## SITE PREVIEW
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 | ## Install
31 |
32 | ```sh
33 | flutter pub get
34 | ```
35 |
36 | ## Usage
37 |
38 | ```sh
39 | flutter run
40 | flutter build web
41 | ```
42 |
43 | ## Run tests
44 |
45 | ```sh
46 | f5 / debug
47 | ```
48 |
49 |
50 | ## Author
51 |
52 | 👤 **Akshat Sachan**
53 |
54 | * Website: [PortFolio](https://sachan1.netlify.app/)
55 | * Twitter: [SachanAK36](https://twitter.com/sachanaks36)
56 | * Github: [CryptocoderAS](https://github.com/CryptocoderAS)
57 | * LinkedIn: [Akshat Sachan](https://www.linkedin.com/in/akshat-sachan-58b2921ab/)
58 |
59 | ## Show your support
60 |
61 | Give a ⭐️ if this project helped you!
62 |
63 | ## 📝 License
64 |
65 | Copyright © 2021 [Akshat Sachan](https://github.com/CryptocoderAS).
66 | This project is [Open Source](none) licensed.
67 |
--------------------------------------------------------------------------------
/web/assets/AssetManifest.json:
--------------------------------------------------------------------------------
1 | {"assets/fonts/MySocialIcons.ttf":["assets/fonts/MySocialIcons.ttf"],"assets/fonts/Ubuntu-Bold.ttf":["assets/fonts/Ubuntu-Bold.ttf"],"assets/fonts/Ubuntu-Medium.ttf":["assets/fonts/Ubuntu-Medium.ttf"],"assets/fonts/Ubuntu-Regular.ttf":["assets/fonts/Ubuntu-Regular.ttf"],"assets/images/AiVirexlogo.png":["assets/images/AiVirexlogo.png"],"assets/images/Akshat_logoonlly.jpg":["assets/images/Akshat_logoonlly.jpg"],"assets/images/TATAlogo.png":["assets/images/TATAlogo.png"],"assets/images/Twowaitslogo.png":["assets/images/Twowaitslogo.png"],"assets/images/digitalgriendlogo.png":["assets/images/digitalgriendlogo.png"],"assets/images/education.png":["assets/images/education.png"],"assets/images/iv.png":["assets/images/iv.png"],"assets/images/man.png":["assets/images/man.png"],"assets/images/python.png":["assets/images/python.png"],"packages/cupertino_icons/assets/CupertinoIcons.ttf":["packages/cupertino_icons/assets/CupertinoIcons.ttf"]}
--------------------------------------------------------------------------------
/web/assets/FontManifest.json:
--------------------------------------------------------------------------------
1 | [{"family":"MaterialIcons","fonts":[{"asset":"fonts/MaterialIcons-Regular.otf"}]},{"family":"MySocialIcons","fonts":[{"asset":"assets/fonts/MySocialIcons.ttf"}]},{"family":"Ubuntu","fonts":[{"asset":"assets/fonts/Ubuntu-Regular.ttf"},{"weight":500,"asset":"assets/fonts/Ubuntu-Medium.ttf"},{"weight":700,"asset":"assets/fonts/Ubuntu-Bold.ttf"}]},{"family":"packages/cupertino_icons/CupertinoIcons","fonts":[{"asset":"packages/cupertino_icons/assets/CupertinoIcons.ttf"}]}]
--------------------------------------------------------------------------------
/web/assets/assets/fonts/MySocialIcons.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CRYPTOcoderAS/PortFolio-Flutter-Web/cac833f1935c96a4da35fa711a68a4cabaa2e322/web/assets/assets/fonts/MySocialIcons.ttf
--------------------------------------------------------------------------------
/web/assets/assets/fonts/Ubuntu-Bold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CRYPTOcoderAS/PortFolio-Flutter-Web/cac833f1935c96a4da35fa711a68a4cabaa2e322/web/assets/assets/fonts/Ubuntu-Bold.ttf
--------------------------------------------------------------------------------
/web/assets/assets/fonts/Ubuntu-Medium.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CRYPTOcoderAS/PortFolio-Flutter-Web/cac833f1935c96a4da35fa711a68a4cabaa2e322/web/assets/assets/fonts/Ubuntu-Medium.ttf
--------------------------------------------------------------------------------
/web/assets/assets/fonts/Ubuntu-Regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CRYPTOcoderAS/PortFolio-Flutter-Web/cac833f1935c96a4da35fa711a68a4cabaa2e322/web/assets/assets/fonts/Ubuntu-Regular.ttf
--------------------------------------------------------------------------------
/web/assets/assets/images/AiVirexlogo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CRYPTOcoderAS/PortFolio-Flutter-Web/cac833f1935c96a4da35fa711a68a4cabaa2e322/web/assets/assets/images/AiVirexlogo.png
--------------------------------------------------------------------------------
/web/assets/assets/images/Akshat_logoonlly.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CRYPTOcoderAS/PortFolio-Flutter-Web/cac833f1935c96a4da35fa711a68a4cabaa2e322/web/assets/assets/images/Akshat_logoonlly.jpg
--------------------------------------------------------------------------------
/web/assets/assets/images/TATAlogo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CRYPTOcoderAS/PortFolio-Flutter-Web/cac833f1935c96a4da35fa711a68a4cabaa2e322/web/assets/assets/images/TATAlogo.png
--------------------------------------------------------------------------------
/web/assets/assets/images/Twowaitslogo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CRYPTOcoderAS/PortFolio-Flutter-Web/cac833f1935c96a4da35fa711a68a4cabaa2e322/web/assets/assets/images/Twowaitslogo.png
--------------------------------------------------------------------------------
/web/assets/assets/images/digitalgriendlogo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CRYPTOcoderAS/PortFolio-Flutter-Web/cac833f1935c96a4da35fa711a68a4cabaa2e322/web/assets/assets/images/digitalgriendlogo.png
--------------------------------------------------------------------------------
/web/assets/assets/images/education.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CRYPTOcoderAS/PortFolio-Flutter-Web/cac833f1935c96a4da35fa711a68a4cabaa2e322/web/assets/assets/images/education.png
--------------------------------------------------------------------------------
/web/assets/assets/images/iv.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CRYPTOcoderAS/PortFolio-Flutter-Web/cac833f1935c96a4da35fa711a68a4cabaa2e322/web/assets/assets/images/iv.png
--------------------------------------------------------------------------------
/web/assets/assets/images/man.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CRYPTOcoderAS/PortFolio-Flutter-Web/cac833f1935c96a4da35fa711a68a4cabaa2e322/web/assets/assets/images/man.png
--------------------------------------------------------------------------------
/web/assets/assets/images/python.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CRYPTOcoderAS/PortFolio-Flutter-Web/cac833f1935c96a4da35fa711a68a4cabaa2e322/web/assets/assets/images/python.png
--------------------------------------------------------------------------------
/web/assets/fonts/MaterialIcons-Regular.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CRYPTOcoderAS/PortFolio-Flutter-Web/cac833f1935c96a4da35fa711a68a4cabaa2e322/web/assets/fonts/MaterialIcons-Regular.otf
--------------------------------------------------------------------------------
/web/assets/packages/cupertino_icons/assets/CupertinoIcons.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CRYPTOcoderAS/PortFolio-Flutter-Web/cac833f1935c96a4da35fa711a68a4cabaa2e322/web/assets/packages/cupertino_icons/assets/CupertinoIcons.ttf
--------------------------------------------------------------------------------
/web/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CRYPTOcoderAS/PortFolio-Flutter-Web/cac833f1935c96a4da35fa711a68a4cabaa2e322/web/favicon.png
--------------------------------------------------------------------------------
/web/flutter_service_worker.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const MANIFEST = 'flutter-app-manifest';
3 | const TEMP = 'flutter-temp-cache';
4 | const CACHE_NAME = 'flutter-app-cache';
5 | const RESOURCES = {
6 | "assets/AssetManifest.json": "162d03152cba02f82ee23cda6c4c029e",
7 | "assets/assets/fonts/MySocialIcons.ttf": "345787fe6cbe5bf827f3a84436278f6f",
8 | "assets/assets/fonts/Ubuntu-Bold.ttf": "e00e2a77dd88a8fe75573a5d993af76a",
9 | "assets/assets/fonts/Ubuntu-Medium.ttf": "8e22c2a6e3a3c679787e763a97fa11f7",
10 | "assets/assets/fonts/Ubuntu-Regular.ttf": "2505bfbd9bde14a7829cc8c242a0d25c",
11 | "assets/assets/images/AiVirexlogo.png": "e057b1349aa9f4813b6fbaa081462e5a",
12 | "assets/assets/images/Akshat_logoonlly.jpg": "be7c4ac5b9d1ab194a0ce5766623b182",
13 | "assets/assets/images/digitalgriendlogo.png": "abc96984737cb6458840750619661df9",
14 | "assets/assets/images/education.png": "dd7e2d99738624cd83015530e43ecc3b",
15 | "assets/assets/images/iv.png": "cff017b882282df8a458b6f05335a77a",
16 | "assets/assets/images/man.png": "6459a78b8d655079c08d4249cbcc0db5",
17 | "assets/assets/images/python.png": "bd6746f907d9a3ac771788fec9aed357",
18 | "assets/assets/images/TATAlogo.png": "7de347a1b7496de131561cdc46fb1ad2",
19 | "assets/assets/images/Twowaitslogo.png": "01181499d818d9295ac280a92e2aa39e",
20 | "assets/FontManifest.json": "927f2f13a2d04e1dbe1ab15efbdb72fa",
21 | "assets/fonts/MaterialIcons-Regular.otf": "4e6447691c9509f7acdbf8a931a85ca1",
22 | "assets/NOTICES": "7fa58fc2670cd7f980ea6a7e6b4a7fc8",
23 | "assets/packages/cupertino_icons/assets/CupertinoIcons.ttf": "6d342eb68f170c97609e9da345464e5e",
24 | "favicon.png": "be7c4ac5b9d1ab194a0ce5766623b182",
25 | "icons/Icon-192.png": "be7c4ac5b9d1ab194a0ce5766623b182",
26 | "icons/Icon-512.png": "be7c4ac5b9d1ab194a0ce5766623b182",
27 | "index.html": "0f179064071f7f99e255b532b72bdfa1",
28 | "/": "0f179064071f7f99e255b532b72bdfa1",
29 | "main.dart.js": "70d68e0628f6bf6547ca19c570be628b",
30 | "manifest.json": "4bc99191a8d05a7bd632b666c0617324",
31 | "version.json": "616505ec71fe87329918bfbf3e4f27a7"
32 | };
33 |
34 | // The application shell files that are downloaded before a service worker can
35 | // start.
36 | const CORE = [
37 | "/",
38 | "main.dart.js",
39 | "index.html",
40 | "assets/NOTICES",
41 | "assets/AssetManifest.json",
42 | "assets/FontManifest.json"];
43 | // During install, the TEMP cache is populated with the application shell files.
44 | self.addEventListener("install", (event) => {
45 | self.skipWaiting();
46 | return event.waitUntil(
47 | caches.open(TEMP).then((cache) => {
48 | return cache.addAll(
49 | CORE.map((value) => new Request(value, {'cache': 'reload'})));
50 | })
51 | );
52 | });
53 |
54 | // During activate, the cache is populated with the temp files downloaded in
55 | // install. If this service worker is upgrading from one with a saved
56 | // MANIFEST, then use this to retain unchanged resource files.
57 | self.addEventListener("activate", function(event) {
58 | return event.waitUntil(async function() {
59 | try {
60 | var contentCache = await caches.open(CACHE_NAME);
61 | var tempCache = await caches.open(TEMP);
62 | var manifestCache = await caches.open(MANIFEST);
63 | var manifest = await manifestCache.match('manifest');
64 | // When there is no prior manifest, clear the entire cache.
65 | if (!manifest) {
66 | await caches.delete(CACHE_NAME);
67 | contentCache = await caches.open(CACHE_NAME);
68 | for (var request of await tempCache.keys()) {
69 | var response = await tempCache.match(request);
70 | await contentCache.put(request, response);
71 | }
72 | await caches.delete(TEMP);
73 | // Save the manifest to make future upgrades efficient.
74 | await manifestCache.put('manifest', new Response(JSON.stringify(RESOURCES)));
75 | return;
76 | }
77 | var oldManifest = await manifest.json();
78 | var origin = self.location.origin;
79 | for (var request of await contentCache.keys()) {
80 | var key = request.url.substring(origin.length + 1);
81 | if (key == "") {
82 | key = "/";
83 | }
84 | // If a resource from the old manifest is not in the new cache, or if
85 | // the MD5 sum has changed, delete it. Otherwise the resource is left
86 | // in the cache and can be reused by the new service worker.
87 | if (!RESOURCES[key] || RESOURCES[key] != oldManifest[key]) {
88 | await contentCache.delete(request);
89 | }
90 | }
91 | // Populate the cache with the app shell TEMP files, potentially overwriting
92 | // cache files preserved above.
93 | for (var request of await tempCache.keys()) {
94 | var response = await tempCache.match(request);
95 | await contentCache.put(request, response);
96 | }
97 | await caches.delete(TEMP);
98 | // Save the manifest to make future upgrades efficient.
99 | await manifestCache.put('manifest', new Response(JSON.stringify(RESOURCES)));
100 | return;
101 | } catch (err) {
102 | // On an unhandled exception the state of the cache cannot be guaranteed.
103 | console.error('Failed to upgrade service worker: ' + err);
104 | await caches.delete(CACHE_NAME);
105 | await caches.delete(TEMP);
106 | await caches.delete(MANIFEST);
107 | }
108 | }());
109 | });
110 |
111 | // The fetch handler redirects requests for RESOURCE files to the service
112 | // worker cache.
113 | self.addEventListener("fetch", (event) => {
114 | if (event.request.method !== 'GET') {
115 | return;
116 | }
117 | var origin = self.location.origin;
118 | var key = event.request.url.substring(origin.length + 1);
119 | // Redirect URLs to the index.html
120 | if (key.indexOf('?v=') != -1) {
121 | key = key.split('?v=')[0];
122 | }
123 | if (event.request.url == origin || event.request.url.startsWith(origin + '/#') || key == '') {
124 | key = '/';
125 | }
126 | // If the URL is not the RESOURCE list then return to signal that the
127 | // browser should take over.
128 | if (!RESOURCES[key]) {
129 | return;
130 | }
131 | // If the URL is the index.html, perform an online-first request.
132 | if (key == '/') {
133 | return onlineFirst(event);
134 | }
135 | event.respondWith(caches.open(CACHE_NAME)
136 | .then((cache) => {
137 | return cache.match(event.request).then((response) => {
138 | // Either respond with the cached resource, or perform a fetch and
139 | // lazily populate the cache.
140 | return response || fetch(event.request).then((response) => {
141 | cache.put(event.request, response.clone());
142 | return response;
143 | });
144 | })
145 | })
146 | );
147 | });
148 |
149 | self.addEventListener('message', (event) => {
150 | // SkipWaiting can be used to immediately activate a waiting service worker.
151 | // This will also require a page refresh triggered by the main worker.
152 | if (event.data === 'skipWaiting') {
153 | self.skipWaiting();
154 | return;
155 | }
156 | if (event.data === 'downloadOffline') {
157 | downloadOffline();
158 | return;
159 | }
160 | });
161 |
162 | // Download offline will check the RESOURCES for all files not in the cache
163 | // and populate them.
164 | async function downloadOffline() {
165 | var resources = [];
166 | var contentCache = await caches.open(CACHE_NAME);
167 | var currentContent = {};
168 | for (var request of await contentCache.keys()) {
169 | var key = request.url.substring(origin.length + 1);
170 | if (key == "") {
171 | key = "/";
172 | }
173 | currentContent[key] = true;
174 | }
175 | for (var resourceKey of Object.keys(RESOURCES)) {
176 | if (!currentContent[resourceKey]) {
177 | resources.push(resourceKey);
178 | }
179 | }
180 | return contentCache.addAll(resources);
181 | }
182 |
183 | // Attempt to download the resource online before falling back to
184 | // the offline cache.
185 | function onlineFirst(event) {
186 | return event.respondWith(
187 | fetch(event.request).then((response) => {
188 | return caches.open(CACHE_NAME).then((cache) => {
189 | cache.put(event.request, response.clone());
190 | return response;
191 | });
192 | }).catch((error) => {
193 | return caches.open(CACHE_NAME).then((cache) => {
194 | return cache.match(event.request).then((response) => {
195 | if (response != null) {
196 | return response;
197 | }
198 | throw error;
199 | });
200 | });
201 | })
202 | );
203 | }
204 |
--------------------------------------------------------------------------------
/web/icons/Icon-192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CRYPTOcoderAS/PortFolio-Flutter-Web/cac833f1935c96a4da35fa711a68a4cabaa2e322/web/icons/Icon-192.png
--------------------------------------------------------------------------------
/web/icons/Icon-512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CRYPTOcoderAS/PortFolio-Flutter-Web/cac833f1935c96a4da35fa711a68a4cabaa2e322/web/icons/Icon-512.png
--------------------------------------------------------------------------------
/web/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 | คkŞhคt Şค¢hคຖ
27 |
28 |
29 |
30 |
31 |
32 |
35 |
99 |
100 |
101 |
--------------------------------------------------------------------------------
/web/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "Aksaht Sachan",
3 | "short_name": "Akshat Sachan",
4 | "start_url": ".",
5 | "display": "standalone",
6 | "background_color": "#0175C2",
7 | "theme_color": "#0175C2",
8 | "description": "AKshat's Portfolio",
9 | "orientation": "portrait-primary",
10 | "prefer_related_applications": false,
11 | "icons": [
12 | {
13 | "src": "icons/Icon-192.png",
14 | "sizes": "192x192",
15 | "type": "image/png"
16 | },
17 | {
18 | "src": "icons/Icon-512.png",
19 | "sizes": "512x512",
20 | "type": "image/png"
21 | }
22 | ]
23 | }
24 |
--------------------------------------------------------------------------------
/web/version.json:
--------------------------------------------------------------------------------
1 | {"app_name":"akshatportfolio","version":"1.0.0","build_number":"1"}
--------------------------------------------------------------------------------