├── .gitignore
├── .nvmrc
├── CONTRIBUTING.md
├── README.md
├── bun.lockb
├── env.example.js
├── netlify.toml
├── now.json
├── package.json
├── pwa.config.js
├── src
├── App.vue
├── assets
│ ├── Lookback
│ │ ├── github-repos.svg
│ │ ├── lb_countries.svg
│ │ ├── lb_participant.svg
│ │ ├── lb_prize.svg
│ │ ├── lb_registration.svg
│ │ ├── lb_visitor.svg
│ │ ├── lines-of-code.svg
│ │ └── time.svg
│ ├── Sponsors
│ │ ├── Devfolio.svg
│ │ ├── Devfolio_Logo-Colored.svg
│ │ ├── Portis_Logo-Black.svg
│ │ ├── Tezos_Logo-Colored.svg
│ │ ├── av.png
│ │ ├── aws.png
│ │ ├── cisco.png
│ │ ├── devfolio_logo.svg
│ │ ├── eligible.png
│ │ ├── github.png
│ │ ├── grab-on.png
│ │ ├── hackerearth.png
│ │ ├── hackerrank.png
│ │ ├── matic-gr1.png
│ │ ├── mozilla1.png
│ │ ├── ntd-india.png
│ │ ├── oh-campus.png
│ │ ├── polygon.svg
│ │ ├── top-coder.png
│ │ ├── uber.png
│ │ └── zebronics.png
│ ├── Testimonial
│ │ ├── akshay.jpeg
│ │ ├── corner-even.svg
│ │ ├── corner-odd.svg
│ │ ├── daksh.jpeg
│ │ ├── infosec.jpeg
│ │ ├── khushi.jpeg
│ │ ├── raghav.jpeg
│ │ ├── raj-shukla.jpeg
│ │ ├── shivansh.jpeg
│ │ ├── shravan.jpeg
│ │ └── tourist.jpeg
│ ├── alums
│ │ ├── Abhay.jpg
│ │ ├── Ajeet_Kumar.JPG
│ │ ├── Animesh_Pathak.jpeg
│ │ ├── Atul_Tiwari.jpg
│ │ ├── Dheerendra_Pandey.jpeg
│ │ ├── Dhirendra_Trivedi.jpeg
│ │ ├── Himanshu_Bhalla.jpg
│ │ ├── Kamlesh_Madheshiya.jpg
│ │ ├── Manish_Poddar.jpg
│ │ ├── Manoj_Poddar.jpg
│ │ ├── Mayur_Srivastava.jpeg
│ │ ├── Nitin_Agrawal.jpeg
│ │ ├── Pawan_kumar.jpg
│ │ ├── Pranay_Arya.jpeg
│ │ ├── Prashant_Joshi.jpeg
│ │ ├── Rajesh_Kumar.jpg
│ │ ├── Sudeep_Ghosh.jpg
│ │ ├── Vikas_Gupta.jpg
│ │ ├── linkedin.png
│ │ ├── prabhat_tripathi.jpg
│ │ └── vivek_lakwal.png
│ ├── black-cf20-logo.svg
│ ├── branches.json
│ ├── ca
│ │ ├── about.svg
│ │ ├── faq.svg
│ │ ├── hero.svg
│ │ ├── perks.svg
│ │ └── work.svg
│ ├── cf-chartreuse-logo.svg
│ ├── chartreuse-cf20-logo.svg
│ ├── codefest-star-logo-black.svg
│ ├── codefest-star-logo-chartreuse.svg
│ ├── codefest-star-logo-white.svg
│ ├── codestart
│ │ ├── codestart-S.png
│ │ ├── codestart-light.png
│ │ └── codestart.png
│ ├── countries.json
│ ├── events
│ │ ├── appathon.png
│ │ ├── ctf.png
│ │ ├── decipher.png
│ │ ├── enigma.png
│ │ ├── linguipedia.png
│ │ ├── manthan.png
│ │ ├── mathamania.png
│ │ ├── perplexed.png
│ │ └── vista.png
│ ├── favicons
│ │ ├── favicon120.png
│ │ ├── favicon144.png
│ │ ├── favicon167.png
│ │ ├── favicon192.png
│ │ ├── favicon32.png
│ │ ├── favicon512.png
│ │ ├── favicon57.png
│ │ ├── favicon76.png
│ │ └── favicon96.png
│ ├── fonts
│ │ ├── Aldo the Apache.woff2
│ │ ├── Roboto Mono.woff
│ │ └── harry.woff
│ ├── haxplore
│ │ ├── hax.svg
│ │ ├── hax_white.svg
│ │ ├── logo-landing-black.svg
│ │ ├── logo-landing.svg
│ │ ├── logo-text-black.svg
│ │ ├── logo-text.svg
│ │ ├── prize-consolation.png
│ │ ├── prize-first.svg
│ │ ├── prize-girls.svg
│ │ ├── prize-iitbhu.svg
│ │ ├── prize-second.svg
│ │ ├── prize-third.svg
│ │ └── timeline.svg
│ ├── hero-cf20-logo.svg
│ ├── hero
│ │ ├── background-dark.jpg
│ │ ├── background.jpg
│ │ ├── hero-wrap-dark.svg
│ │ ├── hero-wrap.svg
│ │ ├── logo-codefest20.png
│ │ ├── logo-dark-codefest20.png
│ │ ├── logo-dark.png
│ │ └── logo.png
│ ├── institutes.json
│ ├── link.svg
│ ├── logo-dcse.png
│ ├── logo-iitbhu.png
│ ├── logo.png
│ ├── manifest.json
│ ├── moon-white.svg
│ ├── robots.txt
│ ├── sitemap.xml
│ ├── social
│ │ ├── facebook.png
│ │ ├── github-dark.png
│ │ ├── github-light.png
│ │ └── google.png
│ ├── sun-white.svg
│ ├── twitter_heart.png
│ ├── white-cf20-logo.svg
│ ├── white-cf24-logo.svg
│ └── workbox-v5.1.2.js
├── components
│ ├── Countdown.vue
│ ├── EventDetails
│ │ ├── AppBar.vue
│ │ ├── DevfolioButton.vue
│ │ ├── DiscordButton.vue
│ │ ├── FAQ.vue
│ │ ├── Footer.vue
│ │ ├── FooterN.vue
│ │ ├── GoogleFormButton.vue
│ │ ├── HaxploreSponsors.vue
│ │ ├── Intro.vue
│ │ ├── Landing.vue
│ │ ├── Prizes.vue
│ │ ├── RegisterButton.vue
│ │ ├── Section.vue
│ │ └── Timeline.vue
│ ├── FAQ.vue
│ ├── FloatingButton.vue
│ ├── Footer.vue
│ ├── Hero.vue
│ ├── Intro.vue
│ ├── Leaderboard.vue
│ ├── Lookback.vue
│ ├── Menu
│ │ ├── AppBar.vue
│ │ ├── Slide.vue
│ │ └── index.js
│ ├── QuesAns.vue
│ ├── REPL.vue
│ ├── SectionSidebar.vue
│ ├── SideBar.vue
│ ├── SpecialEvent.vue
│ ├── SponsorCard.vue
│ ├── Sponsors.vue
│ ├── StandardEvent.vue
│ ├── StandardEventDetails.vue
│ ├── StandardEventMobile.vue
│ ├── Terminal.vue
│ ├── Testimonials.vue
│ ├── Timeline.vue
│ ├── TimelineCheckpoint.vue
│ ├── ca
│ │ ├── AboutCA.vue
│ │ ├── CAHero.vue
│ │ ├── ContactCA.vue
│ │ ├── FaqCA.vue
│ │ ├── Perks.vue
│ │ ├── PointsTable.vue
│ │ └── Work.vue
│ ├── codestart
│ │ ├── About.vue
│ │ ├── AppBar.vue
│ │ ├── CodestartSponsors.vue
│ │ ├── DevfolioButton.vue
│ │ ├── DiscordButton.vue
│ │ ├── FAQ.vue
│ │ ├── Footer.vue
│ │ ├── FooterN.vue
│ │ ├── Intro.vue
│ │ ├── Landing.vue
│ │ ├── LoginButton.vue
│ │ ├── Prizes.vue
│ │ └── Timeline.vue
│ ├── dashboard
│ │ ├── DashboardEvent.vue
│ │ ├── DashboardProfile.vue
│ │ └── EventTeam.vue
│ ├── haxplore
│ │ ├── About.vue
│ │ ├── AppBar.vue
│ │ ├── DevfolioButton.vue
│ │ ├── DiscordButton.vue
│ │ ├── FAQ.vue
│ │ ├── Footer.vue
│ │ ├── FooterN.vue
│ │ ├── HaxploreSponsors.vue
│ │ ├── Intro.vue
│ │ ├── Landing.vue
│ │ ├── Prizes.vue
│ │ └── Timeline.vue
│ └── layouts
│ │ ├── AppbarLayout.vue
│ │ ├── CardLayout.vue
│ │ ├── GridLayout.vue
│ │ ├── ResponsiveTwoColumnLayout.vue
│ │ ├── SectionLayout.vue
│ │ ├── TabLayout.vue
│ │ └── TextLayout.vue
├── index.html
├── index.js
├── js
│ ├── api.js
│ ├── commands.js
│ ├── constants.js
│ ├── exceptions.js
│ └── utils.js
├── pages
│ ├── 404.vue
│ ├── CampusAmbassador.vue
│ ├── ChangePassword.vue
│ ├── CodeStart.vue
│ ├── Dashboard.vue
│ ├── EventDetails.vue
│ ├── EventList.vue
│ ├── EventRegistration.vue
│ ├── ForgotPassword.vue
│ ├── Hacksplore.vue
│ ├── Home.vue
│ ├── Login.vue
│ ├── NewEventDetails.vue
│ ├── Privacy.vue
│ ├── ProfileEdit.vue
│ ├── Referral.vue
│ ├── Sponsors.vue
│ └── Team.vue
├── plugins
│ └── filters.js
├── registerServiceWorker.js
├── router
│ └── index.js
├── store
│ ├── auth.js
│ ├── dashboard.js
│ ├── events.js
│ ├── index.js
│ ├── navigation.js
│ └── theme.js
├── styles
│ ├── anims.styl
│ ├── index.styl
│ ├── mixins.styl
│ └── theme
│ │ ├── colors.styl
│ │ ├── index.styl
│ │ └── theme.styl
└── sw.js
├── tsconfig.json
└── vue.config.js
/.nvmrc:
--------------------------------------------------------------------------------
1 | v13.14.0
2 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | ## CodeFest
2 |
3 | ### FRONTEND
4 |
5 | #### Introduction
6 |
7 | Source code for the frontend of CodeFest PWA app. Uses Vue.Js library to develop a PWA for both mobile and desktop alike with rich user-experience.
8 |
9 | #### Technical Stack
10 |
11 | - Node 13.12.0
12 | - NPM 6.14.4
13 | - PWA
14 | - Vue.Js 2.6.7
15 | - SW-Workbox 5.1.2
16 | - Firebase
17 |
18 | ### Development
19 |
20 | - First, ensure that Node.Js and NPM are installed on your system.
21 | - Use `npm install` to install all the dependencies.
22 | - For development server with hot-reload, use `npm run watch`.
23 |
24 | ### Structure
25 |
26 | - Non-Vue-related JS files are in the src/js folder.
27 | - App pages are in src/pages.
28 |
--------------------------------------------------------------------------------
/bun.lockb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/bun.lockb
--------------------------------------------------------------------------------
/env.example.js:
--------------------------------------------------------------------------------
1 | // Copy this file and rename it to env.js and put under src/js folder
2 |
3 | export const KEY_AUTH_TOKEN = "auth-token";
4 |
5 | export const SITE_URL = "http://0.0.0.0:8080";
6 |
7 | export const KEY_THEME = "theme";
8 |
9 | export const BACKEND_URL = "http://0.0.0.0:8000";
10 |
--------------------------------------------------------------------------------
/netlify.toml:
--------------------------------------------------------------------------------
1 | [[redirects]]
2 | # For our Rest API.
3 | from = "/api/*"
4 | to = "https://api.codefest.tech/:splat"
5 | status = 200
6 |
7 | [[redirects]]
8 | # For robots.txt
9 | from = "/robots.txt"
10 | to = "/assets/robots.txt"
11 | status = 200
12 |
13 | [[redirects]]
14 | # For our VueJs SPA.
15 | from = "/*"
16 | to = "/index.html"
17 | status = 200
18 |
19 | [[headers]]
20 | for = "/*"
21 | [headers.values]
22 | Cache-Control = "no-cache, must-revalidate"
23 |
--------------------------------------------------------------------------------
/now.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2,
3 | "scope": "codefest-app",
4 | "redirects": [
5 | {
6 | "source": "/robots.txt",
7 | "destination": "/assets/robots.txt"
8 | }
9 | ]
10 | }
11 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "private": true,
3 | "scripts": {
4 | "build": "pwa build && rm build/*.map && rm build/*.map.gz",
5 | "start": "rm -rf dist && mv build dist && sirv dist -s",
6 | "watch": "pwa watch"
7 | },
8 | "dependencies": {
9 | "@babel/core": "^7.9.0",
10 | "@babel/preset-env": "^7.9.0",
11 | "@saeris/vue-spinners": "^1.0.8",
12 | "anchorme": "^1.1.2",
13 | "firebase": "^7.7.0",
14 | "frisbee": "^2.0.8",
15 | "ganalytics": "^3.1.1",
16 | "sirv-cli": "^0.2.0",
17 | "vue": "~2.6.7",
18 | "vue-carousel": "^0.18.0",
19 | "vue-mq": "^1.0.1",
20 | "vue-recaptcha-v3": "^1.4.0",
21 | "vue-router": "~3.0.0",
22 | "vue-template-compiler": "~2.6.7",
23 | "vue-toasted": "^1.1.26",
24 | "vue-youtube": "^1.3.4",
25 | "vue2-scrollspy": "^2.3.1",
26 | "vuex": "^3.1.0"
27 | },
28 | "devDependencies": {
29 | "@pwa/cli": "latest",
30 | "@pwa/plugin-brotli": "latest",
31 | "@pwa/plugin-gzip": "latest",
32 | "@pwa/preset-vue": "latest",
33 | "babel-cli": "^6.26.0",
34 | "babel-preset-env": "^1.7.0",
35 | "babelify": "^10.0.0",
36 | "eslint": "^5.12.1",
37 | "eslint-loader": "^2.1.1",
38 | "stylus": "^0.54.0",
39 | "stylus-loader": "^3.0.0",
40 | "ts-loader": "^5.3.3",
41 | "typescript": "^3.3.1",
42 | "workbox-webpack-plugin": "^5.1.2"
43 | },
44 | "browserslist": [
45 | ">0.25%",
46 | "last 1 version",
47 | "not ie_mob 11",
48 | "not ie 11",
49 | "not dead"
50 | ],
51 | "name": "codefest",
52 | "version": "2024.1.0",
53 | "main": "index.js",
54 | "author": "",
55 | "license": "ISC",
56 | "description": ""
57 | }
58 |
--------------------------------------------------------------------------------
/pwa.config.js:
--------------------------------------------------------------------------------
1 | const { InjectManifest } = require("workbox-webpack-plugin");
2 | const stylusLoader = require("stylus-loader");
3 | const { join } = require("path");
4 |
5 | exports.webpack = function(config, env) {
6 | // Add module aliases
7 | const src = config.context;
8 | config.resolve.alias["@styles"] = join(src, "styles");
9 | config.resolve.alias["@js"] = join(src, "js");
10 | config.resolve.alias["@store"] = join(src, "store");
11 | config.devServer.host = "0.0.0.0";
12 |
13 | // Add Workbox plugin
14 | config.plugins.push(
15 | new InjectManifest({
16 | swSrc: join(src, "sw.js"),
17 | })
18 | );
19 | config.module.rules.forEach(({ test, use }) => {
20 | if ((test.test(".styl") || test.test(".stylus")) && Array.isArray(use)) {
21 | use.forEach((loader) => {
22 | if (loader.loader === "stylus-loader") {
23 | loader.options.import = [
24 | join(src, "styles/theme/index.styl"),
25 | join(src, "styles/mixins.styl"),
26 | ];
27 | } else loader;
28 | });
29 | }
30 | });
31 | };
32 |
33 | exports.brotli = {
34 | cache: true,
35 | threshold: 0,
36 | minRatio: 0.8,
37 | compressionOptions: {
38 | quality: 11,
39 | size_hint: 0,
40 | lgblock: 0,
41 | lgwin: 22,
42 | mode: 0,
43 | },
44 | };
45 |
--------------------------------------------------------------------------------
/src/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
16 |
17 |
18 |
19 |
89 |
90 |
102 |
--------------------------------------------------------------------------------
/src/assets/Lookback/github-repos.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 | github-repos
4 |
5 |
6 |
--------------------------------------------------------------------------------
/src/assets/Lookback/lb_participant.svg:
--------------------------------------------------------------------------------
1 |
2 | lb_participant
--------------------------------------------------------------------------------
/src/assets/Lookback/lb_prize.svg:
--------------------------------------------------------------------------------
1 |
2 | lb_prize
--------------------------------------------------------------------------------
/src/assets/Lookback/lb_registration.svg:
--------------------------------------------------------------------------------
1 |
2 | lb_registration
--------------------------------------------------------------------------------
/src/assets/Lookback/lb_visitor.svg:
--------------------------------------------------------------------------------
1 |
2 | lb_visitor
--------------------------------------------------------------------------------
/src/assets/Lookback/lines-of-code.svg:
--------------------------------------------------------------------------------
1 |
2 | lines-of-code
--------------------------------------------------------------------------------
/src/assets/Lookback/time.svg:
--------------------------------------------------------------------------------
1 |
2 | time
--------------------------------------------------------------------------------
/src/assets/Sponsors/av.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Sponsors/av.png
--------------------------------------------------------------------------------
/src/assets/Sponsors/aws.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Sponsors/aws.png
--------------------------------------------------------------------------------
/src/assets/Sponsors/cisco.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Sponsors/cisco.png
--------------------------------------------------------------------------------
/src/assets/Sponsors/devfolio_logo.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/assets/Sponsors/eligible.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Sponsors/eligible.png
--------------------------------------------------------------------------------
/src/assets/Sponsors/github.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Sponsors/github.png
--------------------------------------------------------------------------------
/src/assets/Sponsors/grab-on.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Sponsors/grab-on.png
--------------------------------------------------------------------------------
/src/assets/Sponsors/hackerearth.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Sponsors/hackerearth.png
--------------------------------------------------------------------------------
/src/assets/Sponsors/hackerrank.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Sponsors/hackerrank.png
--------------------------------------------------------------------------------
/src/assets/Sponsors/matic-gr1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Sponsors/matic-gr1.png
--------------------------------------------------------------------------------
/src/assets/Sponsors/mozilla1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Sponsors/mozilla1.png
--------------------------------------------------------------------------------
/src/assets/Sponsors/ntd-india.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Sponsors/ntd-india.png
--------------------------------------------------------------------------------
/src/assets/Sponsors/oh-campus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Sponsors/oh-campus.png
--------------------------------------------------------------------------------
/src/assets/Sponsors/top-coder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Sponsors/top-coder.png
--------------------------------------------------------------------------------
/src/assets/Sponsors/uber.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Sponsors/uber.png
--------------------------------------------------------------------------------
/src/assets/Sponsors/zebronics.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Sponsors/zebronics.png
--------------------------------------------------------------------------------
/src/assets/Testimonial/akshay.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Testimonial/akshay.jpeg
--------------------------------------------------------------------------------
/src/assets/Testimonial/corner-even.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | testimonial-2
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/src/assets/Testimonial/corner-odd.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | testimonial-2
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/src/assets/Testimonial/daksh.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Testimonial/daksh.jpeg
--------------------------------------------------------------------------------
/src/assets/Testimonial/infosec.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Testimonial/infosec.jpeg
--------------------------------------------------------------------------------
/src/assets/Testimonial/khushi.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Testimonial/khushi.jpeg
--------------------------------------------------------------------------------
/src/assets/Testimonial/raghav.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Testimonial/raghav.jpeg
--------------------------------------------------------------------------------
/src/assets/Testimonial/raj-shukla.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Testimonial/raj-shukla.jpeg
--------------------------------------------------------------------------------
/src/assets/Testimonial/shivansh.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Testimonial/shivansh.jpeg
--------------------------------------------------------------------------------
/src/assets/Testimonial/shravan.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Testimonial/shravan.jpeg
--------------------------------------------------------------------------------
/src/assets/Testimonial/tourist.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/Testimonial/tourist.jpeg
--------------------------------------------------------------------------------
/src/assets/alums/Abhay.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/alums/Abhay.jpg
--------------------------------------------------------------------------------
/src/assets/alums/Ajeet_Kumar.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/alums/Ajeet_Kumar.JPG
--------------------------------------------------------------------------------
/src/assets/alums/Animesh_Pathak.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/alums/Animesh_Pathak.jpeg
--------------------------------------------------------------------------------
/src/assets/alums/Atul_Tiwari.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/alums/Atul_Tiwari.jpg
--------------------------------------------------------------------------------
/src/assets/alums/Dheerendra_Pandey.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/alums/Dheerendra_Pandey.jpeg
--------------------------------------------------------------------------------
/src/assets/alums/Dhirendra_Trivedi.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/alums/Dhirendra_Trivedi.jpeg
--------------------------------------------------------------------------------
/src/assets/alums/Himanshu_Bhalla.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/alums/Himanshu_Bhalla.jpg
--------------------------------------------------------------------------------
/src/assets/alums/Kamlesh_Madheshiya.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/alums/Kamlesh_Madheshiya.jpg
--------------------------------------------------------------------------------
/src/assets/alums/Manish_Poddar.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/alums/Manish_Poddar.jpg
--------------------------------------------------------------------------------
/src/assets/alums/Manoj_Poddar.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/alums/Manoj_Poddar.jpg
--------------------------------------------------------------------------------
/src/assets/alums/Mayur_Srivastava.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/alums/Mayur_Srivastava.jpeg
--------------------------------------------------------------------------------
/src/assets/alums/Nitin_Agrawal.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/alums/Nitin_Agrawal.jpeg
--------------------------------------------------------------------------------
/src/assets/alums/Pawan_kumar.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/alums/Pawan_kumar.jpg
--------------------------------------------------------------------------------
/src/assets/alums/Pranay_Arya.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/alums/Pranay_Arya.jpeg
--------------------------------------------------------------------------------
/src/assets/alums/Prashant_Joshi.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/alums/Prashant_Joshi.jpeg
--------------------------------------------------------------------------------
/src/assets/alums/Rajesh_Kumar.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/alums/Rajesh_Kumar.jpg
--------------------------------------------------------------------------------
/src/assets/alums/Sudeep_Ghosh.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/alums/Sudeep_Ghosh.jpg
--------------------------------------------------------------------------------
/src/assets/alums/Vikas_Gupta.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/alums/Vikas_Gupta.jpg
--------------------------------------------------------------------------------
/src/assets/alums/linkedin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/alums/linkedin.png
--------------------------------------------------------------------------------
/src/assets/alums/prabhat_tripathi.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/alums/prabhat_tripathi.jpg
--------------------------------------------------------------------------------
/src/assets/alums/vivek_lakwal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/alums/vivek_lakwal.png
--------------------------------------------------------------------------------
/src/assets/branches.json:
--------------------------------------------------------------------------------
1 | [
2 | {"id": 1, "name": "Aerospace Engineering"},
3 | {"id": 2, "name": "Agricultural & Food Engineering"},
4 | {"id": 3, "name": "Biological Sciences and Bioengineering"},
5 | {"id": 4, "name": "Biotechnology"},
6 | {"id": 5, "name": "Biochemical Engineering"},
7 | {"id": 6, "name": "Biomedical Engineering"},
8 | {"id": 7, "name": "Ceramic Engineering"},
9 | {"id": 8, "name": "Chemical Engineering"},
10 | {"id": 9, "name": "Civil Engineering"},
11 | {"id": 10, "name": "Computer Science & Engineering"},
12 | {"id": 11, "name": "Electrical Engineering"},
13 | {"id": 12, "name": "Electronics & Communication Engineering"},
14 | {"id": 13, "name": "Electronics & Electrical Communication Engineering"},
15 | {"id": 14, "name": "Electronics Engineering"},
16 | {"id": 15, "name": "Energy Engineering"},
17 | {"id": 16, "name": "Engineering Physics"},
18 | {"id": 17, "name": "Industrial Engineering"},
19 | {"id": 18, "name": "Production and Industrial Engineering"},
20 | {"id": 19, "name": "Instrumentation Engineering"},
21 | {"id": 20, "name": "Applied Geology"},
22 | {"id": 21, "name": "Chemistry"},
23 | {"id": 22, "name": "Exploration Geophysics"},
24 | {"id": 23, "name": "Industrial Chemistry"},
25 | {"id": 24, "name": "Materials Science and Technology"},
26 | {"id": 25, "name": "Mathematics & Scientific Computing"},
27 | {"id": 26, "name": "Mathematics and Computing"},
28 | {"id": 27, "name": "Mechanical Engineering"},
29 | {"id": 28, "name": "Metallurgical Engineering"},
30 | {"id": 29, "name": "Mining Engineering"},
31 | {"id": 30, "name": "Pharmaceutical Engineering and Technology"},
32 | {"id": 31, "name": "Physics"},
33 | {"id": 32, "name": "Textile Engineering"},
34 | {"id": 33, "name": "Geological Technology"},
35 | {"id": 34, "name": "Information Technology"},
36 | {"id": 35, "name": "Statistics"}
37 | ]
38 |
--------------------------------------------------------------------------------
/src/assets/ca/perks.svg:
--------------------------------------------------------------------------------
1 | ca-perks
--------------------------------------------------------------------------------
/src/assets/cf-chartreuse-logo.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 | cf-new-chartreuse-chartreuse
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/assets/codefest-star-logo-black.svg:
--------------------------------------------------------------------------------
1 | codefest-star-logo-black
--------------------------------------------------------------------------------
/src/assets/codefest-star-logo-chartreuse.svg:
--------------------------------------------------------------------------------
1 | codefest-star-logo-chartreuse
--------------------------------------------------------------------------------
/src/assets/codefest-star-logo-white.svg:
--------------------------------------------------------------------------------
1 | codefest-star-logo-white
--------------------------------------------------------------------------------
/src/assets/codestart/codestart-S.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/codestart/codestart-S.png
--------------------------------------------------------------------------------
/src/assets/codestart/codestart-light.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/codestart/codestart-light.png
--------------------------------------------------------------------------------
/src/assets/codestart/codestart.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/codestart/codestart.png
--------------------------------------------------------------------------------
/src/assets/events/appathon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/events/appathon.png
--------------------------------------------------------------------------------
/src/assets/events/ctf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/events/ctf.png
--------------------------------------------------------------------------------
/src/assets/events/decipher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/events/decipher.png
--------------------------------------------------------------------------------
/src/assets/events/enigma.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/events/enigma.png
--------------------------------------------------------------------------------
/src/assets/events/linguipedia.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/events/linguipedia.png
--------------------------------------------------------------------------------
/src/assets/events/manthan.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/events/manthan.png
--------------------------------------------------------------------------------
/src/assets/events/mathamania.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/events/mathamania.png
--------------------------------------------------------------------------------
/src/assets/events/perplexed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/events/perplexed.png
--------------------------------------------------------------------------------
/src/assets/events/vista.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/events/vista.png
--------------------------------------------------------------------------------
/src/assets/favicons/favicon120.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/favicons/favicon120.png
--------------------------------------------------------------------------------
/src/assets/favicons/favicon144.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/favicons/favicon144.png
--------------------------------------------------------------------------------
/src/assets/favicons/favicon167.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/favicons/favicon167.png
--------------------------------------------------------------------------------
/src/assets/favicons/favicon192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/favicons/favicon192.png
--------------------------------------------------------------------------------
/src/assets/favicons/favicon32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/favicons/favicon32.png
--------------------------------------------------------------------------------
/src/assets/favicons/favicon512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/favicons/favicon512.png
--------------------------------------------------------------------------------
/src/assets/favicons/favicon57.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/favicons/favicon57.png
--------------------------------------------------------------------------------
/src/assets/favicons/favicon76.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/favicons/favicon76.png
--------------------------------------------------------------------------------
/src/assets/favicons/favicon96.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/favicons/favicon96.png
--------------------------------------------------------------------------------
/src/assets/fonts/Aldo the Apache.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/fonts/Aldo the Apache.woff2
--------------------------------------------------------------------------------
/src/assets/fonts/Roboto Mono.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/fonts/Roboto Mono.woff
--------------------------------------------------------------------------------
/src/assets/fonts/harry.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/fonts/harry.woff
--------------------------------------------------------------------------------
/src/assets/haxplore/logo-landing-black.svg:
--------------------------------------------------------------------------------
1 | logo-green
--------------------------------------------------------------------------------
/src/assets/haxplore/logo-landing.svg:
--------------------------------------------------------------------------------
1 | hx-logo-white
--------------------------------------------------------------------------------
/src/assets/haxplore/prize-consolation.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/haxplore/prize-consolation.png
--------------------------------------------------------------------------------
/src/assets/haxplore/prize-first.svg:
--------------------------------------------------------------------------------
1 | golden-trophy
--------------------------------------------------------------------------------
/src/assets/haxplore/prize-girls.svg:
--------------------------------------------------------------------------------
1 | girl-medal
--------------------------------------------------------------------------------
/src/assets/haxplore/prize-iitbhu.svg:
--------------------------------------------------------------------------------
1 | IITBHU-medal IITBHU IITBHU
--------------------------------------------------------------------------------
/src/assets/haxplore/prize-second.svg:
--------------------------------------------------------------------------------
1 | silver-trophy
--------------------------------------------------------------------------------
/src/assets/haxplore/prize-third.svg:
--------------------------------------------------------------------------------
1 | bronze-trophy
--------------------------------------------------------------------------------
/src/assets/hero/background-dark.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/hero/background-dark.jpg
--------------------------------------------------------------------------------
/src/assets/hero/background.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/hero/background.jpg
--------------------------------------------------------------------------------
/src/assets/hero/logo-codefest20.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/hero/logo-codefest20.png
--------------------------------------------------------------------------------
/src/assets/hero/logo-dark-codefest20.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/hero/logo-dark-codefest20.png
--------------------------------------------------------------------------------
/src/assets/hero/logo-dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/hero/logo-dark.png
--------------------------------------------------------------------------------
/src/assets/hero/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/hero/logo.png
--------------------------------------------------------------------------------
/src/assets/link.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/assets/logo-dcse.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/logo-dcse.png
--------------------------------------------------------------------------------
/src/assets/logo-iitbhu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/logo-iitbhu.png
--------------------------------------------------------------------------------
/src/assets/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/logo.png
--------------------------------------------------------------------------------
/src/assets/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "manifest_version": 1,
3 | "version": "2020.3.0",
4 | "name": "CodeFest 2020",
5 | "short_name": "CF",
6 | "description": "Computer Science department fest organised at IIT (BHU), India.",
7 | "background_color": "#222222",
8 | "orientation": "portrait",
9 | "theme_color": "#E47718",
10 | "display": "standalone",
11 | "start_url": "/",
12 | "icons": [
13 | {
14 | "src": "/assets/favicons/favicon32.png",
15 | "type": "image/png",
16 | "sizes": "32x32"
17 | },
18 | {
19 | "src": "/assets/favicons/favicon57.png",
20 | "type": "image/png",
21 | "sizes": "57x57"
22 | },
23 | {
24 | "src": "/assets/favicons/favicon76.png",
25 | "type": "image/png",
26 | "sizes": "76x76"
27 | },
28 | {
29 | "src": "/assets/favicons/favicon96.png",
30 | "type": "image/png",
31 | "sizes": "96x96"
32 | },
33 | {
34 | "src": "/assets/favicons/favicon120.png",
35 | "type": "image/png",
36 | "sizes": "120x120"
37 | },
38 | {
39 | "src": "/assets/favicons/favicon144.png",
40 | "type": "image/png",
41 | "sizes": "144x144"
42 | },
43 | {
44 | "src": "/assets/favicons/favicon167.png",
45 | "type": "image/png",
46 | "sizes": "167x167"
47 | },
48 | {
49 | "src": "/assets/favicons/favicon192.png",
50 | "type": "image/png",
51 | "sizes": "192x192"
52 | },
53 | {
54 | "src": "/assets/favicons/favicon512.png",
55 | "type": "image/png",
56 | "sizes": "512x512"
57 | }
58 | ]
59 | }
60 |
--------------------------------------------------------------------------------
/src/assets/moon-white.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 | moon-white
--------------------------------------------------------------------------------
/src/assets/robots.txt:
--------------------------------------------------------------------------------
1 | User-agent: *
2 | Disallow:
3 |
4 | Sitemap: https://codefest.tech/assets/sitemap.xml
5 |
--------------------------------------------------------------------------------
/src/assets/sitemap.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | https://codefest.tech
5 | weekly
6 |
7 |
8 | https://codefest.tech/haxplore
9 | weekly
10 |
11 |
12 | https://codefest.tech/login
13 | weekly
14 |
15 |
16 | https://codefest.tech/events-timeline
17 | weekly
18 |
19 |
--------------------------------------------------------------------------------
/src/assets/social/facebook.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/social/facebook.png
--------------------------------------------------------------------------------
/src/assets/social/github-dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/social/github-dark.png
--------------------------------------------------------------------------------
/src/assets/social/github-light.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/social/github-light.png
--------------------------------------------------------------------------------
/src/assets/social/google.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/social/google.png
--------------------------------------------------------------------------------
/src/assets/sun-white.svg:
--------------------------------------------------------------------------------
1 | sun-white
--------------------------------------------------------------------------------
/src/assets/twitter_heart.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/assets/twitter_heart.png
--------------------------------------------------------------------------------
/src/assets/workbox-v5.1.2.js:
--------------------------------------------------------------------------------
1 | !(function() {
2 | "use strict";
3 | try {
4 | self["workbox:sw:5.1.2"] && _();
5 | } catch (t) {}
6 | const t = {
7 | backgroundSync: "background-sync",
8 | broadcastUpdate: "broadcast-update",
9 | cacheableResponse: "cacheable-response",
10 | core: "core",
11 | expiration: "expiration",
12 | googleAnalytics: "offline-ga",
13 | navigationPreload: "navigation-preload",
14 | precaching: "precaching",
15 | rangeRequests: "range-requests",
16 | routing: "routing",
17 | strategies: "strategies",
18 | streams: "streams",
19 | };
20 | self.workbox = new (class {
21 | constructor() {
22 | return (
23 | (this.v = {}),
24 | (this.t = {
25 | debug: "localhost" === self.location.hostname,
26 | modulePathPrefix: null,
27 | modulePathCb: null,
28 | }),
29 | (this.s = this.t.debug ? "dev" : "prod"),
30 | (this.o = !1),
31 | new Proxy(this, {
32 | get(e, s) {
33 | if (e[s]) return e[s];
34 | const o = t[s];
35 | return o && e.loadModule(`workbox-${o}`), e[s];
36 | },
37 | })
38 | );
39 | }
40 | setConfig(t = {}) {
41 | if (this.o)
42 | throw new Error(
43 | "Config must be set before accessing workbox.* modules"
44 | );
45 | Object.assign(this.t, t), (this.s = this.t.debug ? "dev" : "prod");
46 | }
47 | loadModule(t) {
48 | const e = this.i(t);
49 | try {
50 | importScripts(e), (this.o = !0);
51 | } catch (s) {
52 | throw (console.error(`Unable to import module '${t}' from '${e}'.`), s);
53 | }
54 | }
55 | i(t) {
56 | if (this.t.modulePathCb) return this.t.modulePathCb(t, this.t.debug);
57 | let e = ["https://storage.googleapis.com/workbox-cdn/releases/5.1.2"];
58 | const s = `${t}.${this.s}.js`,
59 | o = this.t.modulePathPrefix;
60 | return (
61 | o &&
62 | ((e = o.split("/")),
63 | "" === e[e.length - 1] && e.splice(e.length - 1, 1)),
64 | e.push(s),
65 | e.join("/")
66 | );
67 | }
68 | })();
69 | })();
70 |
--------------------------------------------------------------------------------
/src/components/Countdown.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
{{ days | double_digit }}
5 |
6 |
7 |
8 |
9 |
{{ hours | double_digit }}
10 |
11 |
12 |
13 |
14 |
{{ minutes | double_digit }}
15 |
16 |
17 |
18 |
19 |
{{ seconds | double_digit }}
20 |
21 |
22 |
23 |
24 |
25 |
76 |
77 |
106 |
--------------------------------------------------------------------------------
/src/components/EventDetails/DevfolioButton.vue:
--------------------------------------------------------------------------------
1 |
2 |
10 |
11 |
12 |
35 |
36 |
43 |
--------------------------------------------------------------------------------
/src/components/EventDetails/DiscordButton.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Discord Server
6 |
7 |
8 |
9 |
10 |
26 |
27 |
54 |
--------------------------------------------------------------------------------
/src/components/EventDetails/FooterN.vue:
--------------------------------------------------------------------------------
1 |
2 |
38 |
39 |
40 |
43 |
44 |
146 |
--------------------------------------------------------------------------------
/src/components/EventDetails/GoogleFormButton.vue:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
22 |
23 |
42 |
--------------------------------------------------------------------------------
/src/components/EventDetails/Intro.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | HaXplore is going to be the ultimate pit-stop for
7 | developers. From taking care of your accomodation to providing you
8 | with savoury treats; food facilities and refreshments throughout the
9 | competition. Don't worry about your travel costs as well, we'll have
10 | them covered for you!
11 |
12 | And even if you don't win anything, fret not my friend! You'll
13 | go home with loads of goodies, a lot of experience and memories for a
14 | lifetime.
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
52 |
53 |
72 |
--------------------------------------------------------------------------------
/src/components/EventDetails/RegisterButton.vue:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
35 |
54 |
--------------------------------------------------------------------------------
/src/components/EventDetails/Section.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
37 |
38 |
43 |
--------------------------------------------------------------------------------
/src/components/FAQ.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
41 |
42 |
53 |
--------------------------------------------------------------------------------
/src/components/FloatingButton.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | {{ text }}
5 |
6 |
7 |
8 |
35 |
36 |
82 |
--------------------------------------------------------------------------------
/src/components/Footer.vue:
--------------------------------------------------------------------------------
1 |
2 |
39 |
40 |
41 |
44 |
45 |
137 |
--------------------------------------------------------------------------------
/src/components/Leaderboard.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Rank
7 | Name
8 | Referrals
9 |
10 |
11 |
12 |
17 | {{ i + 1 }}
18 | {{ person.name }}
19 | {{ person.referral_count }}
20 |
21 |
22 |
23 |
24 |
25 |
26 |
41 |
70 |
--------------------------------------------------------------------------------
/src/components/Lookback.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
10 |
11 |
12 |
13 |
{{ stat.name }}
14 |
{{ stat.value }}
15 |
16 |
17 |
18 |
19 |
39 |
40 |
88 |
--------------------------------------------------------------------------------
/src/components/Menu/Slide.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
10 |
11 |
12 |
13 |
31 |
--------------------------------------------------------------------------------
/src/components/Menu/index.js:
--------------------------------------------------------------------------------
1 | import Slide from "./Slide.vue";
2 |
3 | export default {
4 | Slide,
5 | };
6 |
--------------------------------------------------------------------------------
/src/components/QuesAns.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {{ item.question }}
6 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
82 |
83 |
128 |
--------------------------------------------------------------------------------
/src/components/SectionSidebar.vue:
--------------------------------------------------------------------------------
1 |
2 |
13 |
14 |
15 |
90 |
91 |
130 |
--------------------------------------------------------------------------------
/src/components/SpecialEvent.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
10 | {{ eventName }}
11 |
12 |
17 |
18 |
22 |
23 |
24 |
25 |
49 |
50 |
155 |
--------------------------------------------------------------------------------
/src/components/SponsorCard.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
{{ item.name }}
18 |
21 |
22 |
Portfolio: {{ item.portfolio }}
23 |
24 |
Graduation Year: {{ item.graduationYear }}
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
43 |
44 |
45 |
120 |
121 |
--------------------------------------------------------------------------------
/src/components/StandardEventMobile.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
{{ event.title }}
13 |
{{ event.summary }}
14 |
15 |
16 |
17 |
18 |
19 |
20 |
39 |
40 |
112 |
--------------------------------------------------------------------------------
/src/components/Timeline.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
22 |
23 |
32 |
--------------------------------------------------------------------------------
/src/components/ca/AboutCA.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 | The CA program is our warm invitation to all you dynamic and enthusiastic students who are eager to represent the spirit of CodeFest’24 team in your campus.
10 |
11 |
12 | Accompanied with the opportunity to foster innovation and build connections, are the exclusive perks, exciting goodies and well-deserved rewards.
13 |
14 |
15 |
16 |
17 |
18 |
19 |
29 |
30 |
75 |
--------------------------------------------------------------------------------
/src/components/ca/FaqCA.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
55 |
56 |
115 |
--------------------------------------------------------------------------------
/src/components/ca/PointsTable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Rank
7 | Name
8 | CA Score
9 |
10 |
11 |
12 |
17 | {{ i + 1 }}
18 | {{ person.name }}
19 | {{ person.ca_score }}
20 |
21 |
22 |
23 |
24 |
25 |
26 |
60 |
89 |
--------------------------------------------------------------------------------
/src/components/codestart/About.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | CodeStart, being the first milestone in the journey of CodeFest, is designed to inspire beginners and provide them with a level platform to explore the dynamic world of technology. It has always strived to be the foundational stepping stone for budding talents, waiting to be discovered and nurtured.
4 | CodeStart offers an immersive experience through a series of insightful workshops, competitive programming events, quant contests, and enlightening talks.
5 | Our primary objective as part of CodeStart is to empower first-year students with the knowledge, skills, and confidence needed to embark on an exciting adventure in the technology arena. We understand that the early years of a student’s academic life are critical, and CodeStart is tailored with a lot of care to lay a strong foundation for their future endeavors.
6 | CodeStart’s focus is not only on technical aspects but also on encouraging the development of problem-solving skills, teamwork, and creativity. It connects students with like-minded peers and professionals, creating a supportive community of future tech leaders.
7 | CodeStart stands for fostering the growth of young minds and becoming a guiding light for them as they venture into the vast world of computer science. It is an invitation to shape the future, one line of code at a time.
8 |
9 |
10 |
11 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/src/components/codestart/DevfolioButton.vue:
--------------------------------------------------------------------------------
1 |
2 |
10 |
11 |
12 |
35 |
36 |
43 |
--------------------------------------------------------------------------------
/src/components/codestart/DiscordButton.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Discord Server
6 |
7 |
8 |
9 |
10 |
26 |
27 |
54 |
55 | // #1a73e8
--------------------------------------------------------------------------------
/src/components/codestart/FooterN.vue:
--------------------------------------------------------------------------------
1 |
2 |
38 |
39 |
40 |
43 |
44 |
142 |
--------------------------------------------------------------------------------
/src/components/codestart/Intro.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | HaXplore is going to be the ultimate pit-stop for
7 | developers. From taking care of your accomodation to providing you
8 | with savoury treats; food facilities and refreshments throughout the
9 | competition. Don't worry about your travel costs as well, we'll have
10 | them covered for you!
11 |
12 | And even if you don't win anything, fret not my friend! You'll
13 | go home with loads of goodies, a lot of experience and memories for a
14 | lifetime.
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
52 |
53 |
72 |
--------------------------------------------------------------------------------
/src/components/codestart/LoginButton.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Register
7 |
8 |
9 |
10 |
11 |
12 |
22 |
23 |
54 |
55 | // #1a73e8
--------------------------------------------------------------------------------
/src/components/codestart/Timeline.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
80 |
81 |
119 |
--------------------------------------------------------------------------------
/src/components/dashboard/DashboardEvent.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
10 |
11 |
12 |
55 |
56 |
64 |
--------------------------------------------------------------------------------
/src/components/haxplore/About.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | Since its inception in 2010, CodeFest has always aspired to be the torchbearer of technology. The idea of HaXplore began with drawing inspiration from the way technology has revolutionized the world. From reminding us for a class to taking a spaceship on another planet, software has transformed almost every sphere of our life. The idea that few lines of code could do such tasks is almost inconceivable.
4 | HaXplore aims to provide a venue where creative heads assemble together to express their world-changing ideas and compete in their endeavour for excellence.
We at HaXplore, promote people from every domain irrespective of their field of study, experience, gender, background or ethnicity. To foster this spirit of inclusivity and diversity, HaXplore also has special prizes for all-girls teams participating in the hackathon.
5 | In essence, HaXplore strives to be the commemoration of the creative attempts by developers across history in order to make a better and a more accessible world; it is the celebration of the spirit of developers who imagine the unimaginable.
6 |
7 |
8 |
9 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/src/components/haxplore/DevfolioButton.vue:
--------------------------------------------------------------------------------
1 |
2 |
10 |
11 |
12 |
35 |
36 |
43 |
--------------------------------------------------------------------------------
/src/components/haxplore/DiscordButton.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Discord Server
6 |
7 |
8 |
9 |
10 |
26 |
27 |
54 |
--------------------------------------------------------------------------------
/src/components/haxplore/FooterN.vue:
--------------------------------------------------------------------------------
1 |
2 |
38 |
39 |
40 |
43 |
44 |
146 |
--------------------------------------------------------------------------------
/src/components/haxplore/Intro.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | HaXplore is going to be the ultimate pit-stop for
7 | developers. From taking care of your accomodation to providing you
8 | with savoury treats; food facilities and refreshments throughout the
9 | competition. Don't worry about your travel costs as well, we'll have
10 | them covered for you!
11 |
12 | And even if you don't win anything, fret not my friend! You'll
13 | go home with loads of goodies, a lot of experience and memories for a
14 | lifetime.
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
52 |
53 |
72 |
--------------------------------------------------------------------------------
/src/components/haxplore/Timeline.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
80 |
81 |
119 |
--------------------------------------------------------------------------------
/src/components/layouts/CardLayout.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
33 |
34 |
69 |
--------------------------------------------------------------------------------
/src/components/layouts/GridLayout.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
35 |
47 |
--------------------------------------------------------------------------------
/src/components/layouts/ResponsiveTwoColumnLayout.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
37 |
38 |
62 |
--------------------------------------------------------------------------------
/src/components/layouts/SectionLayout.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
{{ title }}
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
33 |
34 |
95 |
--------------------------------------------------------------------------------
/src/components/layouts/TabLayout.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
12 |
13 | {{ tab.title }}
14 |
15 |
16 |
17 |
18 |
19 |
30 |
31 |
32 |
33 |
77 |
78 |
146 |
--------------------------------------------------------------------------------
/src/components/layouts/TextLayout.vue:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/codefest-iit-bhu/codefest-app/2f23f575e17c594875b688b8b3ae7339f69b5b93/src/components/layouts/TextLayout.vue
--------------------------------------------------------------------------------
/src/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | CodeFest '24 | IIT (BHU) Varanasi
5 |
6 |
7 |
8 |
9 |
10 |
14 |
18 |
24 |
25 |
26 |
27 |
28 |
32 |
33 |
34 |
35 |
38 |
39 |
44 |
45 |
50 |
51 |
56 |
57 |
61 |
62 |
67 |
73 |
74 |
75 |
79 |
80 |
84 |
88 |
89 |
90 |
91 |
92 |
93 |
94 | Sorry, but enable JavaScript to visit this site.
95 |
96 |
97 |
98 |
99 |
--------------------------------------------------------------------------------
/src/index.js:
--------------------------------------------------------------------------------
1 | import Vue from "vue";
2 | import GAnalytics from "ganalytics";
3 | import vueMq from "vue-mq";
4 | import VueYoutube from "vue-youtube";
5 | import scrollSpy, { Easing } from "vue2-scrollspy";
6 | import firebase from "firebase/app";
7 | import "firebase/auth";
8 | import "firebase/analytics";
9 | import Toasted from "vue-toasted";
10 | import { VueReCaptcha } from "vue-recaptcha-v3";
11 | import { VueSpinners } from "@saeris/vue-spinners";
12 |
13 | import App from "./App";
14 | import router from "./router";
15 | import filters from "./plugins/filters";
16 | import store from "./store";
17 | import wb from "./registerServiceWorker";
18 |
19 | import "./styles/index.styl";
20 |
21 | Vue.config.productionTip = false;
22 | const render = (h) => h(App);
23 |
24 | Vue.use(Toasted, {
25 | position: "bottom-center",
26 | duration: 3000,
27 | iconPack: "fontawesome",
28 | action: {
29 | icon: "times",
30 | onClick: (e, toastObject) => toastObject.goAway(0),
31 | },
32 | fitToScreen: true,
33 | singleton: true,
34 | });
35 |
36 | Vue.toasted.register(
37 | "error_post",
38 | (payload) => {
39 | const msg = payload.message || "Something went wrong!";
40 | return `Oops... ${msg}`;
41 | },
42 | { icon: "exclamation-circle", type: "error", duration: 5000 }
43 | );
44 |
45 | Vue.toasted.register(
46 | "success",
47 | (payload) => {
48 | const msg = payload.message || "Success!";
49 | return `Yay! ${msg}`;
50 | },
51 | { icon: "check", type: "success" }
52 | );
53 |
54 | Vue.use(VueSpinners);
55 |
56 | Vue.use(vueMq, {
57 | breakpoints: {
58 | __: 320,
59 | xs: 575,
60 | sm: 767,
61 | md: 991,
62 | lg: 1367,
63 | xl: 1920,
64 | xxl: Infinity,
65 | },
66 | });
67 |
68 | Vue.use(scrollSpy, {
69 | easing: Easing.Cubic.In,
70 | });
71 |
72 | Vue.use(VueYoutube);
73 |
74 | Vue.use(VueReCaptcha, {
75 | siteKey: "6LepxJ0UAAAAAMGBO1-1PxqQ_Y3TuJGt5DHp5cHk",
76 | loaderOptions: {
77 | useRecaptchaNet: true,
78 | },
79 | });
80 |
81 | Vue.use(filters);
82 |
83 | if (process.env.NODE_ENV === "production") {
84 | window.ga = new GAnalytics("UA-72222745-1");
85 |
86 | router.afterEach((nxt) => {
87 | ga.send("pageview", {
88 | dp: nxt.path,
89 | });
90 | });
91 | }
92 |
93 | // Service Worker registration
94 | Vue.prototype.$workbox = wb;
95 |
96 | const firebaseConfig = {
97 | apiKey: "AIzaSyBfkhzmR8nf1vwTLj9upIVo3QoOTDte6zU",
98 | authDomain: "codefest-iit-bhu.firebaseapp.com",
99 | projectId: "codefest-iit-bhu",
100 | storageBucket: "codefest-iit-bhu.appspot.com",
101 | messagingSenderId: "934000349180",
102 | appId: "1:934000349180:web:abd404ec2aa2ee8b5f2c79",
103 | measurementId: "G-CMRT89PN1N"
104 | };
105 |
106 | firebase.initializeApp(firebaseConfig);
107 |
108 | // Mount w/ Hydration
109 | // ~> because HTML already exists from`pwa export`
110 | // @see https://ssr.vuejs.org/guide/hydration.html
111 | const app = new Vue({
112 | router,
113 | store,
114 | render,
115 | }).$mount("#app", true);
116 |
--------------------------------------------------------------------------------
/src/js/api.js:
--------------------------------------------------------------------------------
1 | import Frisbee from "frisbee";
2 | import {
3 | MakeQuerablePromise
4 | } from "@js/utils";
5 | import { BACKEND_URL } from "@js/constants";
6 | import store from "@store";
7 |
8 | const api = new Frisbee({
9 | baseURI: BACKEND_URL,
10 | headers: {
11 | Accept: "application/json",
12 | "Content-Type": "application/json"
13 | }
14 | });
15 |
16 | const getApiOptions = function (options) {
17 | const token = store.getters.authToken;
18 | if (token) {
19 | options["headers"] = {
20 | ...options["headers"],
21 | Authorization: `Token ${token}`
22 | };
23 | }
24 | // if (body) options["body"] = body;
25 | return options;
26 | };
27 |
28 | const apiWrapper = function (promise) {
29 | return MakeQuerablePromise(
30 | new Promise((resolve, reject) => {
31 | promise
32 | .then(response => {
33 | if (response.status == STATUS.ERROR_UNAUTHENTICATED)
34 | store.dispatch("logout");
35 | if (response.status == STATUS.SUCCESS) resolve(response);
36 | else reject(response);
37 | })
38 | .catch(reject);
39 | })
40 | );
41 | };
42 |
43 | export const STATUS = {
44 | NONE: "none",
45 | SUCCESS: "success",
46 | ERROR_BAD_REQUEST: "error.bad_request",
47 | ERROR_NOT_FOUND: "error.not_found",
48 | ERROR_UNAUTHENTICATED: "error.unauthenticated",
49 | ERROR_FORBIDDEN: "error.unauthorized",
50 | ERROR_UNKNOWN: "error.unknown"
51 | };
52 |
53 | export class Response extends Object {
54 | constructor(data, status, message) {
55 | super(arguments);
56 | this.data = data;
57 | this.status = status;
58 | this.message = message;
59 | }
60 |
61 | static success(data) {
62 | return new Response(data, STATUS.SUCCESS, null);
63 | }
64 |
65 | static clientError(err) {
66 | return new Response(null, STATUS.ERROR_UNKNOWN, err.message);
67 | }
68 |
69 | static responseError({
70 | status,
71 | body,
72 | err
73 | }) {
74 | const message = body.detail || body[Object.keys(body)[0]][0] || err.message;
75 | switch (status) {
76 | case 400:
77 | return new Response(body, STATUS.ERROR_BAD_REQUEST, message);
78 | case 401:
79 | return new Response(null, STATUS.ERROR_UNAUTHENTICATED, message);
80 | case 403:
81 | return new Response(null, STATUS.ERROR_FORBIDDEN, message);
82 | case 404:
83 | return new Response(null, STATUS.ERROR_NOT_FOUND, message);
84 | default:
85 | return new Response(body, STATUS.ERROR_UNKNOWN, message);
86 | }
87 | }
88 |
89 | static handleResponse(response) {
90 | if (response.status >= 400) return Response.responseError(response);
91 | else if (response.status >= 200) return Response.success(response.body);
92 | }
93 | }
94 |
95 | api.interceptor.register({
96 | requestError: function (err) {
97 | return Response.clientError(err);
98 | },
99 | response: function (response) {
100 | return Response.handleResponse(response);
101 | },
102 | responseError: function (err) {
103 | return Response.clientError(err);
104 | }
105 | });
106 |
107 | export default {
108 | fetch(url, options = {}) {
109 | return apiWrapper(api.get(url, getApiOptions(options)));
110 | },
111 | post(url, options = {}) {
112 | return apiWrapper(api.post(url, getApiOptions(options)));
113 | },
114 | put(url, options = {}) {
115 | return apiWrapper(api.put(url, getApiOptions(options)));
116 | },
117 | delete(url, options = {}) {
118 | return apiWrapper(api.del(url, getApiOptions(options)));
119 | }
120 | };
--------------------------------------------------------------------------------
/src/js/constants.js:
--------------------------------------------------------------------------------
1 | let KEY_AUTH_TOKEN = "auth-token";
2 | let SITE_URL = "https://codefest.iitbhu.tech";
3 | let KEY_THEME = "theme";
4 | let BACKEND_URL = "https://codefest.iitbhu.tech/api";
5 |
6 | try{
7 | const envSecrets = require("./env");
8 | KEY_AUTH_TOKEN = envSecrets.KEY_AUTH_TOKEN || KEY_AUTH_TOKEN
9 | SITE_URL = envSecrets.SITE_URL || SITE_URL
10 | KEY_THEME = envSecrets.KEY_THEME || KEY_THEME
11 | BACKEND_URL = envSecrets.BACKEND_URL || BACKEND_URL
12 | }
13 | catch(e){}
14 |
15 | export {KEY_AUTH_TOKEN, SITE_URL, KEY_THEME, BACKEND_URL};
16 |
--------------------------------------------------------------------------------
/src/js/exceptions.js:
--------------------------------------------------------------------------------
1 | export class CommandBaseError extends Error {
2 | constructor(...args) {
3 | super(...args);
4 | Error.captureStackTrace(this, CommandBaseError);
5 | this.code = -1;
6 | }
7 | }
8 |
9 | export class CommandInvalidInput extends CommandBaseError {
10 | constructor(code, msg, ...args) {
11 | super(...args);
12 | this.code = code;
13 | this.message = msg;
14 | }
15 | }
16 |
17 | export class CommandInvalidEnvironment extends CommandBaseError {
18 | constructor(...args) {
19 | super(...args);
20 | this.code = 111;
21 | this.message = "Weirdly, the command is run in a wrong environment.";
22 | }
23 | }
24 |
25 | export class CommandNotFoundError extends CommandBaseError {
26 | constructor(...args) {
27 | super(...args);
28 | this.message = "Command not found.";
29 | this.code = 127;
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/src/pages/404.vue:
--------------------------------------------------------------------------------
1 |
2 |
11 |
12 |
13 |
24 |
25 |
62 |
--------------------------------------------------------------------------------
/src/pages/CampusAmbassador.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
51 |
52 |
77 |
--------------------------------------------------------------------------------
/src/pages/Dashboard.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Home
8 |
9 |
10 |
11 |
12 |
13 | Profile
14 |
15 |
16 |
17 |
18 |
19 | My Teams
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
73 |
74 |
106 |
--------------------------------------------------------------------------------
/src/pages/EventDetails.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
10 |
11 |
12 | {{ event.title }}
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
55 |
56 |
92 |
--------------------------------------------------------------------------------
/src/pages/EventList.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
87 |
88 |
127 |
--------------------------------------------------------------------------------
/src/pages/EventRegistration.vue:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
11 |
38 |
39 |
74 |
--------------------------------------------------------------------------------
/src/pages/Referral.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | After successfully registering for CodeFest'24, you can also invite interested folks to register for the event. To do so, you have to simply share the referral link that can be found on your dashboard. Each participant has a unique referral link and each successful registration using your referral link will increment your referral count by one, which is also displayed on your dashboard.
7 |
8 | The top ten participants with the maximum referral count are displayed on the leaderboard below. So spread the word among your peers to claim several goodies and shwags.
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
49 |
50 |
73 |
--------------------------------------------------------------------------------
/src/plugins/filters.js:
--------------------------------------------------------------------------------
1 | import anchorme from "anchorme";
2 |
3 | export default {
4 | install(Vue) {
5 | Vue.filter("anchor", value => {
6 | return anchorme(value);
7 | });
8 | }
9 | };
10 | export const version = "1.0.0";
11 |
--------------------------------------------------------------------------------
/src/registerServiceWorker.js:
--------------------------------------------------------------------------------
1 | let wb;
2 |
3 | if ("serviceWorker" in navigator) {
4 | const initWorkbox = async () => {
5 | const { Workbox } = await import("workbox-window");
6 | wb = new Workbox(`/sw.js`);
7 |
8 | wb.addEventListener("controlling", () => {
9 | window.location.reload();
10 | });
11 |
12 | wb.register();
13 | };
14 | initWorkbox();
15 | } else {
16 | wb = null;
17 | }
18 |
19 | export default wb;
20 |
--------------------------------------------------------------------------------
/src/store/auth.js:
--------------------------------------------------------------------------------
1 | import { KEY_AUTH_TOKEN } from "@js/constants";
2 | import API, { Response, STATUS } from "@js/api";
3 |
4 | import firebase from "firebase/app";
5 |
6 | function getTokenFromStorage() {
7 | return localStorage.getItem(KEY_AUTH_TOKEN);
8 | }
9 |
10 | function putTokenToStorage(token) {
11 | if (!token) localStorage.removeItem(KEY_AUTH_TOKEN);
12 | else localStorage.setItem(KEY_AUTH_TOKEN, token);
13 | }
14 |
15 | function saveCampusAmbassadorStatus(status) {
16 | localStorage.setItem("is_campus_ambassador", status);
17 | }
18 |
19 | function getCampusAmbassadorStatus() {
20 | console.log(localStorage.getItem("is_campus_ambassador"))
21 | if(localStorage.getItem("is_campus_ambassador")) return localStorage.getItem("is_campus_ambassador");
22 | return false;
23 | }
24 |
25 | export default {
26 | state: {
27 | token: getTokenFromStorage() || "",
28 | userId: -1,
29 | isCampusAmbassador: getCampusAmbassadorStatus(),
30 | },
31 | getters: {
32 | isLoggedIn: (state) => {
33 | return !!state.token;
34 | },
35 | authToken: (state) => state.token,
36 | isCampusAmbassador: (state) => {
37 | if(typeof(state.isCampusAmbassador)=="string"){
38 | return state.isCampusAmbassador=="true"
39 | }
40 | return state.isCampusAmbassador
41 | },
42 | },
43 | mutations: {
44 | AUTH_SUCCESS(state, data) {
45 | const { token, user_id, is_campus_ambassador } = data;
46 | state.token = token;
47 | state.userId = user_id;
48 | state.isCampusAmbassador = is_campus_ambassador;
49 | saveCampusAmbassadorStatus(is_campus_ambassador);
50 | putTokenToStorage(token);
51 | },
52 | AUTH_LOGOUT(state) {
53 | state.token = "";
54 | putTokenToStorage(null);
55 | },
56 | CA_STATUS_UPDATE(state, is_campus_ambassador) {
57 | state.isCampusAmbassador = is_campus_ambassador
58 | saveCampusAmbassadorStatus(is_campus_ambassador)
59 | }
60 | },
61 | actions: {
62 | login({ state, commit }, { idToken }) {
63 | const body = {
64 | id_token: idToken,
65 | };
66 | return API.post("login/", { body }).then((response) => {
67 | commit("AUTH_SUCCESS", response.data);
68 | return response;
69 | });
70 | },
71 | register(
72 | { state, commit },
73 | { idToken, name, referralCode, recaptchaToken }
74 | ) {
75 | const names = (name || "Anonymous").split(/\s+/);
76 | const body = {
77 | id_token: idToken,
78 | first_name: names[0],
79 | last_name: names.length > 0 ? names[1] : "",
80 | applied_referral_code: referralCode,
81 | g_recaptcha_response: recaptchaToken,
82 | };
83 | return API.post("register/", { body }).then((response) => {
84 | commit("AUTH_SUCCESS", response.data);
85 | return response;
86 | });
87 | },
88 | logout({ state, commit }) {
89 | firebase.auth().signOut();
90 | commit("AUTH_LOGOUT");
91 | },
92 | update_ca_status(
93 | {state, commit},
94 | {new_status}
95 | ) {
96 | commit("CA_STATUS_UPDATE", new_status)
97 | }
98 | },
99 | };
100 |
--------------------------------------------------------------------------------
/src/store/dashboard.js:
--------------------------------------------------------------------------------
1 | import API from "@js/api";
2 | import events from "@store/events";
3 |
4 | export default {
5 | actions: {
6 | getProfileEvents({ state }) {
7 | const { events: eventsData } = events;
8 | return API.fetch("events/").then(({ data }) => {
9 | return data.map(event => {
10 | const extraData = eventsData.find(e => e.name === event.slug);
11 | return { ...event, ...extraData };
12 | }).filter((event) => !!event.title);
13 | // NOTE: The above filter skips the events present in backend but not
14 | // in events.js.
15 | });
16 | },
17 | createEventTeam({ state }, { eventId, teamName }) {
18 | const body = {
19 | event: eventId,
20 | team_name: teamName
21 | };
22 | return API.post("teams/create/", { body });
23 | },
24 | joinEventTeam({ state }, { eventId, accessCode }) {
25 | const body = {
26 | access_code: accessCode
27 | };
28 | return API.post("teams/join/", { body });
29 | },
30 | removeMemberFromTeam({ state }, { teamId, memberId }) {
31 | const body = {
32 | member: memberId
33 | };
34 | return API.post(`teams/${teamId}/remove/`, { body });
35 | },
36 | leaveTeam({ state }, { teamId }) {
37 | return API.delete(`teams/${teamId}/`);
38 | }
39 | }
40 | };
41 |
--------------------------------------------------------------------------------
/src/store/index.js:
--------------------------------------------------------------------------------
1 | import Vue from "vue";
2 | import Vuex from "vuex";
3 |
4 | import auth from "./auth";
5 | import dashboard from "./dashboard";
6 | import theme from "./theme";
7 |
8 | Vue.use(Vuex);
9 |
10 | export default new Vuex.Store({
11 | modules: {
12 | auth,
13 | dashboard,
14 | theme
15 | }
16 | });
17 |
--------------------------------------------------------------------------------
/src/store/navigation.js:
--------------------------------------------------------------------------------
1 | export const navigation = {
2 | hierarchy: {
3 | "~": {
4 | ".": "/",
5 | events: {
6 | ".": "/events-timeline",
7 | enigma: {
8 | ".": "/events-timeline/enigma"
9 | },
10 | vista: {
11 | ".": "/events-timeline/vista"
12 | },
13 | manthan: {
14 | ".": "/events-timeline/manthan"
15 | },
16 | linguipedia: {
17 | ".": "/events-timeline/linguipedia"
18 | },
19 | ctf: {
20 | ".": "/events-timeline/ctf"
21 | },
22 | },
23 | haxplore: {
24 | ".": "/haxplore"
25 | },
26 | dashboard: {
27 | ".": "/dashboard"
28 | },
29 | referrals: {
30 | ".": "/referral"
31 | },
32 | codestart: {
33 | ".": "/codestart"
34 | },
35 | },
36 | "404": {
37 | "~": {
38 | ".": "/"
39 | }
40 | }
41 | },
42 | getPwdFromCurrent: function(current) {
43 | if (!current) return [];
44 | const rawPath = current.split("/");
45 | rawPath[0] = "~";
46 | return rawPath.filter(el => !!el);
47 | },
48 | getLinksFromPwd: function(pwd) {
49 | var current = null;
50 | var result = [];
51 | pwd.forEach(dir => {
52 | if (current) current = current[dir];
53 | else current = this.hierarchy[dir];
54 | result.push(current["."] || "/");
55 | });
56 | return result;
57 | },
58 | getCurrentNav: function(pwd) {
59 | var current = null;
60 | var parent = null;
61 | pwd.forEach(dir => {
62 | parent = current;
63 | if (current) current = current[dir];
64 | else current = this.hierarchy[dir];
65 | });
66 | if (!!current) current[".."] = parent;
67 | return current;
68 | },
69 | listContents: function(pwd) {
70 | var possibleNav = this.getCurrentNav(pwd);
71 | var result = {};
72 | for (let key in possibleNav) {
73 | if (possibleNav[key])
74 | result[key] = possibleNav[key]["."] || possibleNav["."];
75 | else result[key] = null;
76 | }
77 | return result;
78 | },
79 | getTargetPageUrl: function(pwd, targetDir) {
80 | if (["~", "/"].includes(targetDir)) return "/";
81 | if ([".", "./"].includes(targetDir))
82 | return this.getLinksFromPwd(pwd).splice(-1)[0];
83 | let backNav = targetDir.match(/^(\.\.)(\/\.\.)*/g);
84 | if (backNav) {
85 | pwd = pwd.slice(0, -backNav[0].split("/").length);
86 | targetDir = targetDir.slice(backNav[0].length);
87 | }
88 |
89 | if (
90 | targetDir &&
91 | targetDir[0] !== "/" &&
92 | !([".", "~"].includes(targetDir[0]) && targetDir[1] === "/")
93 | ) {
94 | targetDir = `./${targetDir}`;
95 | }
96 |
97 | let currentDir = null;
98 | if (pwd && pwd.length > 0) {
99 | let hierarchy = this.getCurrentNav(pwd);
100 | let route = this.getPwdFromCurrent(targetDir);
101 | if (route.length === 0) {
102 | return hierarchy["."];
103 | }
104 | route.forEach(dir => {
105 | if (currentDir) currentDir = currentDir[dir];
106 | else currentDir = hierarchy[dir];
107 | });
108 | }
109 | if (currentDir) return currentDir["."];
110 | }
111 | };
112 |
113 | export const terminal = {
114 | history: [],
115 | getHistory: function() {
116 | return this.history;
117 | },
118 | addToHistory: function(pwd, status, input, output) {
119 | this.history.push({ pwd, status, input, output });
120 | },
121 | clearHistory: function() {
122 | this.history.splice(0, this.history.length);
123 | }
124 | };
125 |
--------------------------------------------------------------------------------
/src/store/theme.js:
--------------------------------------------------------------------------------
1 | import { KEY_THEME } from "@js/constants";
2 |
3 | function loadThemePreference() {
4 | return localStorage.getItem(KEY_THEME);
5 | }
6 |
7 | function saveThemePreference(theme) {
8 | localStorage.setItem(KEY_THEME, theme);
9 | }
10 |
11 | function getThemeAccordingToCurrentTime() {
12 | const today = new Date();
13 | const currentHour = today.getHours();
14 | return (currentHour <= 19 && currentHour >= 5) ? "light" : "dark";
15 | }
16 |
17 | export default {
18 | state: {
19 | theme: loadThemePreference() || getThemeAccordingToCurrentTime(),
20 | inTransition: false
21 | },
22 | getters: {
23 | currentTheme: state => {
24 | return state.theme;
25 | },
26 | inTransition: state => {
27 | return state.inTransition;
28 | }
29 | },
30 | mutations: {
31 | TOGGLE_THEME(state) {
32 | state.theme = state.theme === "dark" ? "light" : "dark";
33 | saveThemePreference(state.theme);
34 | }
35 | },
36 | actions: {
37 | toggle_theme({ state, commit }) {
38 | commit("TOGGLE_THEME");
39 | state.inTransition = true;
40 | setTimeout(() => {
41 | state.inTransition = false;
42 | }, 400);
43 | }
44 | }
45 | };
46 |
--------------------------------------------------------------------------------
/src/styles/anims.styl:
--------------------------------------------------------------------------------
1 | @keyframes blink {
2 | from {
3 | opacity 0
4 | }
5 | to {
6 | opacity 1
7 | }
8 | }
9 |
10 | @keyframes typing {
11 | from { width: 0 }
12 | to { width: 100% }
13 | }
14 |
15 | @keyframes blink-caret {
16 | from, to { border-color: transparent }
17 | 50% { border-color: orange; }
18 | }
19 |
20 | @keyframes neon-text {
21 | from {
22 | text-shadow: 0 0 2.5px $white, 0 0 5px $white, 0 0 7.5px $white, 0 0 10px $white, 0 0 12.5px $white, 0 0 15px $marauder-brown, 0 0 25px $marauder-brown;
23 | }
24 |
25 | to {
26 | text-shadow: 0 0 1px $white, 0 0 2px $white, 0 0 3px $white, 0 0 4px $white, 0 0 5px $white, 0 0 6px $marauder-brown, 0 0 10px $marauder-brown;
27 | }
28 | }
29 |
30 | @keyframes neon-text-white {
31 | from {
32 | text-shadow: 0 0 2.5px $midnight-green, 0 0 5px $midnight-green, 0 0 7.5px $white, 0 0 10px $white, 0 0 12.5px $white, 0 0 15px $white, 0 0 25px $white;
33 | }
34 |
35 | to {
36 | text-shadow: 0 0 1px $midnight-green, 0 0 2px $midnight-green, 0 0 3px $white, 0 0 4px $white, 0 0 5px $white, 0 0 6px $white, 0 0 10px $white;
37 | }
38 | }
39 |
40 | @keyframes neon-box {
41 | from {
42 | box-shadow: 0 0 15px $white, 0 0 17.5px $white, 0 0 10px $orange, 0 0 52.5px $orange, 0 0 55px $darkorange, 0 0 70px $darkorange, 0 0 90px $darkorange;
43 | }
44 |
45 | to {
46 | box-shadow: 0 0 1px $white, 0 0 2px $white, 0 0 3px $white, 0 0 6px $white, 0 0 8px $orange, 0 0 12px $orange, 0 0 20px $darkorange, 0 0 30px $darkorange, 0 0 55px $darkorange, 0 0 70px $darkorange;
47 | }
48 | }
49 |
50 | @keyframes timeline-border-green {
51 | from {
52 | box-shadow: 0 0 0 2px alpha($vermilion, 0.5)
53 | }
54 |
55 | to {
56 | box-shadow: 0 0 0 5px alpha($vermilion, 0.5)
57 | }
58 | }
59 |
60 | @keyframes timeline-border-white {
61 | from {
62 | box-shadow: 0 0 0 2px alpha($white, 0.5)
63 | }
64 |
65 | to {
66 | box-shadow: 0 0 0 5px alpha($white, 0.5)
67 | }
68 | }
69 |
70 | @keyframes timeline-border-full {
71 | from {
72 | box-shadow: 0 0 0 10px alpha($vermilion, 0.7)
73 | }
74 |
75 | to {
76 | box-shadow: 0 0 0 20px alpha($vermilion, 0.7)
77 | }
78 | }
79 |
80 | @keyframes svg-transform {
81 | from,{
82 | fill: $vermilion;
83 | stroke-width: 1px;
84 | stroke: $vermilion;
85 | }
86 |
87 | to{
88 | fill: transparent;
89 | stroke: $vermilion;
90 | stroke-width: 5px;
91 | }
92 | }
93 |
94 | @keyframes svg-transform-hero {
95 | from,{
96 | fill: var(--hero-text-color);
97 | stroke-width: 1px;
98 | stroke: var(--hero-text-color);
99 | }
100 |
101 | to{
102 | fill: transparent;
103 | stroke: var(--hero-text-color);
104 | stroke-width: 5px;
105 | }
106 | }
107 |
108 |
109 |
110 | @keyframes ContentFadeIn {
111 | 0% {
112 | transform: translateY(-1rem);
113 | opacity: 0;
114 | }
115 |
116 | 100% {
117 | transform: translateY(0);
118 | opacity: 1;
119 | }
120 | }
121 |
122 | @keyframes ImageFadeIn {
123 | 0% {
124 | transform: translate(-0.5rem, -0.5rem) scale(1.05);
125 | opacity: 0;
126 | filter: blur(2px);
127 | }
128 |
129 | 50% {
130 | opacity: 1;
131 | filter: blur(2px);
132 | }
133 |
134 | 100% {
135 | transform: translateY(0) scale(1);
136 | opacity: 1;
137 | filter: blur(0);
138 | }
139 | }
--------------------------------------------------------------------------------
/src/styles/mixins.styl:
--------------------------------------------------------------------------------
1 | @require "~@styles/theme/theme.styl";
2 |
3 | stick(position = 'top') {
4 | position: fixed;
5 | {position}: 0;
6 | }
7 |
8 | stickWithSpace(top = false , right = false, bottom = false, left = false) {
9 | position fixed
10 | if top {
11 | top: top
12 | }
13 | if right {
14 | right: right
15 | }
16 | if bottom {
17 | bottom: bottom
18 | }
19 | if left {
20 | left: left
21 | }
22 | }
23 |
24 | moveAnimation(side = 'bottom', startDistance = 0, targetDistance = 0) {
25 | {side}: startDistance
26 | transition: all 350ms;
27 |
28 | &.shown {
29 | {side}: targetDistance
30 | }
31 | }
32 |
33 | $font-size(value) {
34 | font-size: unit((value / $base-font), 'rem')
35 | }
36 |
--------------------------------------------------------------------------------
/src/styles/theme/colors.styl:
--------------------------------------------------------------------------------
1 | $black = #000000
2 | $deep-fir = #1B3300
3 | $verdun-green = #396E00
4 | $limeade = #57A300
5 | $chartreuse = #86FF00
6 | $dodger-blue = #19A5FF
7 | $outer-space = #263238
8 | $mine-shaft = #222222
9 | $cod-gray = #111111
10 | $white = #FFFFFF
11 | $transparent = #00000000
12 | $mystic = #ecf0f3
13 | $botticelli = #d1d9e6
14 | $crown-of-thorns = #6F2232
15 | $waterloo = #7C8299
16 | $abbey = #292929
17 | $vermilion = #E47718
18 | $midnight-green = #004953
19 | $orange = #FFA500
20 | $darkorange = #FF8C00
21 | $marauder-brown = #654321
22 |
--------------------------------------------------------------------------------
/src/styles/theme/index.styl:
--------------------------------------------------------------------------------
1 | @require './colors';
2 | @require './theme';
3 |
--------------------------------------------------------------------------------
/src/styles/theme/theme.styl:
--------------------------------------------------------------------------------
1 | $base-font = 16px
2 |
--------------------------------------------------------------------------------
/src/sw.js:
--------------------------------------------------------------------------------
1 | importScripts("/assets/workbox-v5.1.2.js");
2 |
3 | if (workbox) {
4 | workbox.precaching.precacheAndRoute(self.__WB_MANIFEST);
5 | } else {
6 | console.warn("Boo! Workbox did not load!");
7 | }
8 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | // this aligns with Vue browser support
4 | "target": "es5",
5 | // this enables stricter inference for data properties on `this`
6 | "strict": true,
7 | // if using webpack 2+ or rollup, to leverage tree shaking:
8 | "module": "es2015",
9 | "moduleResolution": "node",
10 | "allowJs": true,
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/vue.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | productionSourceMap: false,
3 | devServer: {
4 | host: "0.0.0.0",
5 | },
6 | };
7 |
--------------------------------------------------------------------------------