Skip to content

Commit

Permalink
added new flutter landing page
Browse files Browse the repository at this point in the history
  • Loading branch information
cp-ashish-k committed Oct 19, 2023
1 parent 3f61ba0 commit 2d1c322
Show file tree
Hide file tree
Showing 11 changed files with 378 additions and 2,137 deletions.
3 changes: 3 additions & 0 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ require (
github.com/bytedance/sonic v1.10.0 // indirect
github.com/chenzhuoyu/base64x v0.0.0-20230717121745-296ad89f973d // indirect
github.com/chenzhuoyu/iasm v0.9.0 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/gabriel-vasile/mimetype v1.4.2 // indirect
github.com/gin-contrib/sse v0.1.0 // indirect
github.com/go-playground/locales v0.14.1 // indirect
Expand All @@ -69,6 +70,8 @@ require (
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
github.com/modern-go/reflect2 v1.0.2 // indirect
github.com/pelletier/go-toml/v2 v2.0.9 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect
github.com/stretchr/testify v1.8.4 // indirect
github.com/twitchyliquid64/golang-asm v0.15.1 // indirect
github.com/ugorji/go/codec v1.2.11 // indirect
go.opencensus.io v0.24.0 // indirect
Expand Down
4 changes: 2 additions & 2 deletions vue-frontend/server.js
Original file line number Diff line number Diff line change
Expand Up @@ -108,8 +108,8 @@ async function createServer(

if (!isTest) {
createServer().then(({ app }) =>
app.listen(3080, () => {
console.log("http://localhost:3080");
app.listen(8080, () => {
console.log("http://localhost:8080");
}),
);
}
Expand Down
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
<template>
<div class="tw-container md:tw-text-left tw-text-center md:tw-flex xl:tw-my-8 tw-pb-16">
<div class="tw-flex tw-flex-col tw-gap-4 md:tw-gap-6 md:tw-flex-1 md:tw-w-[34rem]">
<h1 class="header-1">Flutter App Development Company</h1>
<p class="sub-h1-regular tw-text-black-900 tw-text-opacity-60">We harness the power of Flutter to create
visually stunning, fast, and highly
responsive
applications that
effortlessly work on both iOS and Android platforms. Our team turns your unique business
requirements into reality, giving your brand the competitive edge it needs in this dynamic mobile
app market.</p>
<div class="tw-mt-4 tw-hidden md:tw-block">
<button class="gradient-btn">
<router-link to="/contact" @click.native="mixpanel.track('tap_flutter_development_cta')">
<span
class="sub-h4-semibold tw-border-none">Get
Free Consultation</span>
</router-link>
</button>
</div>
</div>
<div class="tw-mt-[2.01rem] tw-flex md:tw-flex-wrap tw-flex-col tw-justify-center tw-gap-[0.8rem] md:tw-flex-1 md:tw-relative tw-pb-16">
<img :src="landing400" :srcset="`${landing400} 400w,${landing800} 800w`"
class="tw-mx-auto md:tw-hidden tw-w-[14.5625rem] tw-h-[13.57931rem]" alt="flutter-landing">
<img :src="landing1200" :srcset="`${landing1200} 1200w,${landing2400} 2400w`"
class="tw-hidden md:tw-block tw-absolute tw-w-[90rem] tw-h-[29rem] tw--left-16" alt="flutter-landing" />
<div class="md:tw-hidden">
<button class="gradient-btn ">
<router-link to="/contact" @click.native="mixpanel.track('tap_flutter_development_cta')">
<span
class="tw-text-[1rem] tw-font-semibold tw-leading-6 tw-border-none">Get
Free Consultation</span>
</router-link>
</button>
</div>
</div>
</div>
</template>

<script>
import landing400 from "@/assets/images/flutter-app-development/landing/landing400w.webp";
import landing800 from "@/assets/images/flutter-app-development/landing/landing800w.webp";
import landing1200 from "@/assets/images/flutter-app-development/landing/landing1200w.webp";
import landing2400 from "@/assets/images/flutter-app-development/landing/landing2400w.webp";
export default {
data() {
return {
landing400,
landing800,
landing1200,
landing2400,
};
},
mounted() {
this.width = window.innerWidth;
},
inject: ["mixpanel"],
}
</script>
3 changes: 2 additions & 1 deletion vue-frontend/src/components/services/WhatWeOfferDesktop.vue
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,8 @@ export default {
title: "Flutter App Development ",
description:
"Bring your multi-platform app vision to life with our Flutter app development services. We excel in crafting high-quality, stunning applications that work flawlessly on Android, iOS, and the web, all from a single codebase, facilitating faster time to market and cost savings.",
},
url: "/flutter-app-development"
},
{
path: [100, 100],
image: uiuxdesign800w,
Expand Down
9 changes: 9 additions & 0 deletions vue-frontend/src/config.js
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,16 @@ export default Object.freeze({
url: "https://dev-stack.canopas.com/ios-app-development",
image: "https://dev-stack.canopas.com/apple-touch-icon.png",
},
FLUTTER_APP_DEVELOPMENT_SEO_META_DATA: {
title: "Flutter App Development Company - Canopas",
description:
"We create bespoke Flutter applications known for their supreme performance, unwavering security, and utmost reliability",
type: "Website",
url: "https://dev-stack.canopas.com/flutter-app-development",
image: "https://dev-stack.canopas.com/apple-touch-icon.png",
},
IS_PROD: false,
SHOW_FLUTTER_APP_DEVELOPMENT_PAGE:true,
SHOW_IOS_APP_DEVELOPMENT_PAGE: true,
SHOW_ANDROID_APP_DEVELOPMENT_PAGE: true,
SMILEPLUS_URL: "https://www.udini.ai/products/smile",
Expand Down
81 changes: 81 additions & 0 deletions vue-frontend/src/pages/flutter-app-development.vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
<template>
<div>
<metainfo>
<template v-slot:title="{ content }">
{{ content }}
</template>
</metainfo>
<Header />
<LandingSection ref="flutterLanding" />
</div>
</template>

<script>
import Header from "@/components/partials/NewHeader.vue";
import config from "@/config.js";
import { useMeta } from "vue-meta";
import { elementInViewPort } from "@/utils.js";
import LandingSection from "../components/flutter-app-development/LandingSection.vue";
export default {
data() {
return {
event: "",
events: {
flutterLanding: "view_flutter_development_landing_section",
},
};
},
setup() {
var seoData = config.FLUTTER_APP_DEVELOPMENT_SEO_META_DATA;
useMeta({
meta: [
{
name: "robots",
content: "noindex, nofllow",
vmid: "robots",
},
],
title: seoData.title,
description: seoData.description,
og: {
type: seoData.type,
title: seoData.title,
url: seoData.url,
image: seoData.image,
},
});
},
components: {
Header,
LandingSection,
},
methods: {
sendEvent() {
const event = this.events[elementInViewPort(this.$refs)];
if (event && this.event !== event) {
this.event = event;
this.mixpanel.track(event);
}
},
},
beforeRouteEnter(to, from, next) {
if (!config.SHOW_FLUTTER_APP_DEVELOPMENT_PAGE) {
next({
name: "Error404Page",
params: { pathMatch: "/flutter-app-development" },
});
} else {
next();
}
},
inject: ["mixpanel"],
mounted() {
window.addEventListener("scroll", this.sendEvent);
this.mixpanel.track("view_flutter_development_page");
},
unmounted() {
window.removeEventListener("scroll", this.sendEvent);
},
};
</script>
Loading

0 comments on commit 2d1c322

Please sign in to comment.