mirror of
https://github.com/kingomarnajjar/innovationdrive.git
synced 2026-07-25 22:27:27 +10:00
added drift, modal
This commit is contained in:
parent
4554699f99
commit
56e36e9636
21 changed files with 7771 additions and 147 deletions
5
package-lock.json
generated
5
package-lock.json
generated
|
|
@ -8342,6 +8342,11 @@
|
|||
"prop-types": "^15.6.0"
|
||||
}
|
||||
},
|
||||
"react-driftjs": {
|
||||
"version": "1.0.8",
|
||||
"resolved": "https://registry.npmjs.org/react-driftjs/-/react-driftjs-1.0.8.tgz",
|
||||
"integrity": "sha512-vweesHcyDcGObxExoYHMATBMbYXGogEFZufrqfdcfIJkLIcZLyfKdFRBNknehyJACEJRQpFr9L6a3W5uy3iM8Q=="
|
||||
},
|
||||
"react-error-overlay": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-4.0.0.tgz",
|
||||
|
|
|
|||
|
|
@ -6,7 +6,9 @@
|
|||
"bootstrap": "^4.1.1",
|
||||
"react": "^16.4.1",
|
||||
"react-dom": "^16.4.1",
|
||||
"react-driftjs": "^1.0.8",
|
||||
"react-mailchimp-subscribe": "^2.0.2",
|
||||
"react-router-dom": "^4.3.1",
|
||||
"react-scripts": "1.1.4",
|
||||
"reactstrap": "^6.1.0",
|
||||
"typeface-roboto": "^0.0.54"
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
.App {
|
||||
text-align: center;
|
||||
|
||||
background-color: #FCFCFC;
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
12
src/App.js
12
src/App.js
|
|
@ -1,21 +1,23 @@
|
|||
import React, { Component } from "react";
|
||||
import "./App.css";
|
||||
// import HeadNavbar from "./components/Navbar";
|
||||
import Drift from "./components/Drift";
|
||||
import AboveTheFold from "./layouts/AboveTheFold";
|
||||
import DriftChat from "./components/Drift";
|
||||
import Homepage from "./pages/Homepage";
|
||||
import WhatIs from "./layouts/WhatIs"
|
||||
import Footer from "./components/Footer";
|
||||
// Make this DRY ~ DO NOT REPEAT YOURSELF
|
||||
|
||||
class App extends Component {
|
||||
render() {
|
||||
return (
|
||||
<div className="App">
|
||||
<AboveTheFold />
|
||||
<Homepage />
|
||||
{/* Above the fold but below navbar */}
|
||||
{/* FIX BACKground image to only render before scroll on mobile/web */}
|
||||
{/* BELOW THE FOLD */}
|
||||
<WhatIs/>
|
||||
<Drift />
|
||||
{/* <WhatIs/> */}
|
||||
<Footer />
|
||||
<DriftChat />
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,43 +1,16 @@
|
|||
import React from "react";
|
||||
import Drift from 'react-driftjs'
|
||||
|
||||
export default class Drift extends React.Component {
|
||||
export default class DriftChat extends React.Component {
|
||||
render() {
|
||||
return (
|
||||
<div className="Drift">
|
||||
{/* Add Drift here
|
||||
"use strict"; */}
|
||||
|
||||
{/* !function() {
|
||||
var t = window.driftt = window.drift = window.driftt || [];
|
||||
if (!t.init) {
|
||||
if (t.invoked) return void (window.console && console.error && console.error("Drift snippet included twice."));
|
||||
t.invoked = !0, t.methods = [ "identify", "config", "track", "reset", "debug", "show", "ping", "page", "hide", "off", "on" ],
|
||||
t.factory = function(e) {
|
||||
return function() {
|
||||
var n = Array.prototype.slice.call(arguments);
|
||||
return n.unshift(e), t.push(n), t;
|
||||
};
|
||||
}, t.methods.forEach(function(e) {
|
||||
t[e] = t.factory(e);
|
||||
}), t.load = function(t) {
|
||||
var e = 3e5, n = Math.ceil(new Date() / e) * e, o = document.createElement("script");
|
||||
o.type = "text/javascript", o.async = !0, o.crossorigin = "anonymous", o.src = "https://js.driftt.com/include/" + n + "/" + t + ".js";
|
||||
var i = document.getElementsByTagName("script")[0];
|
||||
i.parentNode.insertBefore(o, i);
|
||||
};
|
||||
}
|
||||
}();
|
||||
drift.SNIPPET_VERSION = '0.3.1';
|
||||
drift.load('g4nnbv58ni3w'); */}
|
||||
|
||||
<Drift appId="g4nnbv58ni3w"/>
|
||||
{/* //get the appId from drift.com */}
|
||||
|
||||
</div>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
// <!-- Start of Async Drift Code -->
|
||||
<script>
|
||||
|
||||
</script>
|
||||
// <!-- End of Async Drift Code -->
|
||||
36
src/components/Footer.js
Normal file
36
src/components/Footer.js
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
import React, { Component } from "react";
|
||||
import { Container, Row, Col } from "reactstrap";
|
||||
|
||||
|
||||
export default class Footer extends Component {
|
||||
render() {
|
||||
return (
|
||||
// <footer className="navbar-fixed-bottom">
|
||||
// <div className="container">
|
||||
// <div className="row">
|
||||
// <p>Don't miss my site: <a href="www.devbutze.com">DevButze</a> </p>
|
||||
// </div>
|
||||
// </div>
|
||||
// </footer>
|
||||
<Container style={FooterStyle}>
|
||||
<a href="#CTA">Back to top</a>
|
||||
|
||||
<Row>
|
||||
{" "}
|
||||
<Col>
|
||||
{" "}
|
||||
<p>
|
||||
© 2017 Company, Inc. | <a href="#">Privacy</a> |{" "}
|
||||
<a href="#">Terms</a>{" "}
|
||||
</p>{" "}
|
||||
</Col>
|
||||
</Row>
|
||||
</Container>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
var FooterStyle = {
|
||||
// color: "DodgerBlue",
|
||||
textAlign: "center"
|
||||
};
|
||||
|
|
@ -2,34 +2,20 @@ import React, { Component } from "react";
|
|||
import ThankYouAlert from "./ThankYouAlert";
|
||||
import { Button, Input, InputGroup, Form, FormGroup, Label } from "reactstrap";
|
||||
|
||||
// import MailchimpSubscribe from "react-mailchimp-subscribe"
|
||||
|
||||
// const url = "https://innovationdrive.us18.list-manage.com/subscribe/post";
|
||||
|
||||
// // simplest form (only email)
|
||||
// const SimpleForm = () => <MailchimpSubscribe url={url}/>
|
||||
|
||||
// // use the render prop and your custom form
|
||||
// const CustomForm = () => (
|
||||
// <MailchimpSubscribe
|
||||
// url={url}
|
||||
// render={({ subscribe, status, message }) => (
|
||||
// <div>
|
||||
// <EmailForm onSubmitted={formData => subscribe(formData)} />
|
||||
// {status === "sending" && <div style={{ color: "blue" }}>sending...</div>}
|
||||
// {status === "error" && <div style={{ color: "red" }} dangerouslySetInnerHTML={{__html: message}}/>}
|
||||
// {status === "success" && <div style={{ color: "green" }}>Subscribed !</div>}
|
||||
// </div>
|
||||
// )}
|
||||
// />
|
||||
// )
|
||||
|
||||
export default class EmailForm extends React.Component {
|
||||
export default class EmailForm extends Component {
|
||||
render() {
|
||||
return (
|
||||
<div>
|
||||
<div className="Form">
|
||||
<Form action="https://formspree.io/contact@innovationdrive.com.au" method="POST">
|
||||
<h1>Sign Up to our newsletter </h1>
|
||||
<h1>Free video consultation</h1>
|
||||
<FormGroup>
|
||||
<Input
|
||||
type="fullname"
|
||||
name="fullname"
|
||||
id="exampleName"
|
||||
placeholder="Full name"
|
||||
/>
|
||||
</FormGroup>
|
||||
<FormGroup>
|
||||
<Input
|
||||
type="email"
|
||||
|
|
@ -62,3 +48,27 @@ export default class EmailForm extends React.Component {
|
|||
// then email text area with validation
|
||||
// tell us a little about your idea...
|
||||
// Once it goes through trigger thank you alert or just change CTA text/colour
|
||||
|
||||
// >>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
||||
|
||||
// import MailchimpSubscribe from "react-mailchimp-subscribe"
|
||||
|
||||
// const url = "https://innovationdrive.us18.list-manage.com/subscribe/post";
|
||||
|
||||
// // simplest form (only email)
|
||||
// const SimpleForm = () => <MailchimpSubscribe url={url}/>
|
||||
|
||||
// // use the render prop and your custom form
|
||||
// const CustomForm = () => (
|
||||
// <MailchimpSubscribe
|
||||
// url={url}
|
||||
// render={({ subscribe, status, message }) => (
|
||||
// <div>
|
||||
// <EmailForm onSubmitted={formData => subscribe(formData)} />
|
||||
// {status === "sending" && <div style={{ color: "blue" }}>sending...</div>}
|
||||
// {status === "error" && <div style={{ color: "red" }} dangerouslySetInnerHTML={{__html: message}}/>}
|
||||
// {status === "success" && <div style={{ color: "green" }}>Subscribed !</div>}
|
||||
// </div>
|
||||
// )}
|
||||
// />
|
||||
// )
|
||||
|
|
@ -11,9 +11,9 @@ import {
|
|||
DropdownToggle,
|
||||
DropdownMenu,
|
||||
DropdownItem } from 'reactstrap';
|
||||
import logo from '../logo.png';
|
||||
import logo from '../images/logo.png';
|
||||
|
||||
export default class HeadNavbar extends React.Component {
|
||||
export default class HeadNavbar extends Component {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
|
||||
|
|
@ -30,19 +30,22 @@ export default class HeadNavbar extends React.Component {
|
|||
render() {
|
||||
return (
|
||||
<div>
|
||||
<Navbar className="clearfix" light expand="md">
|
||||
<Navbar className="navbar clearfix" light expand="md">
|
||||
<NavbarBrand href="/">
|
||||
<img src={logo} className="App-logo" alt="logo" />
|
||||
</NavbarBrand>
|
||||
<NavbarToggler onClick={this.toggle} />
|
||||
|
||||
<Collapse isOpen={this.state.isOpen} navbar>
|
||||
<Nav>
|
||||
</Nav>
|
||||
<Nav className="ml-auto" navbar>
|
||||
<NavLink href="https://innovationdrive/who-are-we"> Team </NavLink>
|
||||
<NavLink href="https://innovationdrive/blog"> Blog </NavLink>
|
||||
<button className="btn btn-danger float-right">Download Invention Workbook</button>
|
||||
{/* <NavItem>
|
||||
<NavLink href="/components/">Resources</NavLink>
|
||||
</NavItem>
|
||||
<NavItem>
|
||||
<NavLink href="https://github.com/reactstrap/reactstrap">GitHub</NavLink>
|
||||
|
||||
{/* <NavItem> */}
|
||||
{/* <NavLink href="https://github.com/reactstrap/reactstrap">GitHub</NavLink>
|
||||
</NavItem>
|
||||
<UncontrolledDropdown nav inNavbar>
|
||||
<DropdownToggle nav caret>
|
||||
|
|
|
|||
40
src/components/PopUpSignUp.js
Normal file
40
src/components/PopUpSignUp.js
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
import React from 'react';
|
||||
import { Button, Modal, ModalHeader, ModalBody, ModalFooter } from 'reactstrap';
|
||||
import EmailForm from './Form';
|
||||
|
||||
class ModalExample extends React.Component {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
this.state = {
|
||||
modal: false
|
||||
};
|
||||
|
||||
this.toggle = this.toggle.bind(this);
|
||||
}
|
||||
|
||||
toggle() {
|
||||
this.setState({
|
||||
modal: !this.state.modal
|
||||
});
|
||||
}
|
||||
|
||||
render() {
|
||||
return (
|
||||
<div>
|
||||
<Button color="danger" onClick={this.toggle}>{this.props.buttonLabel}Continue</Button>
|
||||
<Modal isOpen={this.state.modal} toggle={this.toggle} className={this.props.className}>
|
||||
{/* <ModalHeader toggle={this.toggle}>Free Video Consultation</ModalHeader> */}
|
||||
<ModalBody>
|
||||
<EmailForm />
|
||||
</ModalBody>
|
||||
<ModalFooter>
|
||||
{/* <Button color="primary" onClick={this.toggle}>Do Something</Button>{' '} */}
|
||||
{/* <Button color="secondary" onClick={this.toggle}>Cancel</Button> */}
|
||||
</ModalFooter>
|
||||
</Modal>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
export default ModalExample;
|
||||
BIN
src/images/.abstract-astro-astronomy-956999.jpg.icloud
Normal file
BIN
src/images/.abstract-astro-astronomy-956999.jpg.icloud
Normal file
Binary file not shown.
BIN
src/images/abstract-art-artistic-1020315.jpg
Normal file
BIN
src/images/abstract-art-artistic-1020315.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 565 KiB |
|
Before Width: | Height: | Size: 211 KiB After Width: | Height: | Size: 211 KiB |
|
Before Width: | Height: | Size: 523 KiB After Width: | Height: | Size: 523 KiB |
|
|
@ -4,3 +4,4 @@ body {
|
|||
font-family: 'Roboto';
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,14 +0,0 @@
|
|||
|
||||
.backgroundContainer {
|
||||
background-image: url("../kidRocket.jpg");
|
||||
background-repeat: no-repeat;
|
||||
background-size: 100%;
|
||||
/* background-position: center; */
|
||||
|
||||
}
|
||||
|
||||
|
||||
.CTA {
|
||||
align-items: center;
|
||||
color: red;
|
||||
}
|
||||
|
|
@ -1,35 +0,0 @@
|
|||
import React, { Component } from "react";
|
||||
import { Container, Row, Col } from "reactstrap";
|
||||
import Form from "../components/Form.js";
|
||||
import "./AboveTheFold.css";
|
||||
import HeadNavbar from "../components/Navbar.js";
|
||||
|
||||
export default class AboveTheFold extends Component {
|
||||
render() {
|
||||
return (
|
||||
<div className="backgroundContainer">
|
||||
<HeadNavbar />
|
||||
<Container />
|
||||
<Container>
|
||||
<Row >
|
||||
<Col xs="6" sm="4">
|
||||
</Col>
|
||||
<Col xs="6" sm="4">
|
||||
<br/>
|
||||
<br/>
|
||||
<br/>
|
||||
<br/>
|
||||
<br/>
|
||||
<br/>
|
||||
<br/>
|
||||
<br/>
|
||||
<br/>
|
||||
</Col>
|
||||
<Col sm="4"><Form /></Col>
|
||||
</Row>
|
||||
|
||||
</Container>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -1,36 +1,148 @@
|
|||
import React, { Component } from "react";
|
||||
import { Container } from "reactstrap";
|
||||
import { Container, Row, Col } from "reactstrap";
|
||||
|
||||
export default class WhatIs extends Component {
|
||||
render() {
|
||||
return (
|
||||
<div className="WhatIs">
|
||||
<Container>
|
||||
<br/>
|
||||
<br/>
|
||||
<br/>
|
||||
{/* <Container>
|
||||
<br />
|
||||
<br />
|
||||
<br />
|
||||
|
||||
<h1>What is Innovation Drive?</h1>
|
||||
<p>
|
||||
We turn great ideas into real physical products by Connecting a team
|
||||
of experts to democratise the product development and manufacturing
|
||||
process.
|
||||
</p>
|
||||
<p>
|
||||
For corporates: On demand design to manufacturing On demand product
|
||||
development team
|
||||
</p>
|
||||
<p>
|
||||
For corporates: On demand design to manufacturing On demand product
|
||||
development team
|
||||
</p>
|
||||
<p>
|
||||
For Everyday inventors On demand end-to end product development team
|
||||
</p>
|
||||
<br/>
|
||||
<h2>Why Innovation Drive? </h2>
|
||||
<p>We exist to empower everyday inventors </p>
|
||||
<h1>What is Innovation Drive?</h1>
|
||||
<p>
|
||||
We turn great ideas into real physical products by Connecting a team
|
||||
of experts to democratise the product development and manufacturing
|
||||
process.
|
||||
</p>
|
||||
<p>
|
||||
For corporates: On demand design to manufacturing On demand product
|
||||
development team
|
||||
</p>
|
||||
|
||||
<p>
|
||||
For Everyday inventors On demand end-to end product development team
|
||||
</p>
|
||||
<br />
|
||||
<h2>Why Innovation Drive? </h2>
|
||||
<p>We exist to empower everyday inventors </p>
|
||||
</Container>
|
||||
<Container>
|
||||
<Row>
|
||||
<Col xs="12" sm="4">
|
||||
<img
|
||||
src="https://cdn.lyft.com/brochure/drive-for-lyft-tip.f57a8a46.svg"
|
||||
alt="Keep your tips"
|
||||
class="icon-l text-bold m-y-m"
|
||||
/>
|
||||
<h6>Keep Your Tips</h6>
|
||||
<p>
|
||||
Earn tips from your passengers and keep the whole amount —
|
||||
they’re yours.
|
||||
</p>
|
||||
</Col>
|
||||
<Col xs="12" sm="4">
|
||||
<img
|
||||
src="https://cdn.lyft.com/brochure/drive-for-lyft-tip.f57a8a46.svg"
|
||||
alt="Keep your tips"
|
||||
class="icon-l text-bold m-y-m"
|
||||
/>
|
||||
<h6>Keep Your Tips</h6>
|
||||
<p>
|
||||
Earn tips from your passengers and keep the whole amount —
|
||||
they’re yours.
|
||||
</p>
|
||||
</Col>
|
||||
<Col xs="12" sm="4">
|
||||
<img
|
||||
src="https://cdn.lyft.com/brochure/drive-for-lyft-tip.f57a8a46.svg"
|
||||
alt="Keep your tips"
|
||||
class="icon-l text-bold m-y-m"
|
||||
/>
|
||||
<h6>Keep Your Tips</h6>
|
||||
<p>
|
||||
Earn tips from your passengers and keep the whole amount —
|
||||
they’re yours.
|
||||
</p>
|
||||
</Col>
|
||||
</Row>
|
||||
</Container> */}
|
||||
|
||||
{/* <!-- Three columns of text below the carousel --> */}
|
||||
<div class="row">
|
||||
<div class="col-lg-4">
|
||||
<img class="rounded-circle" src="data:image/gif;base64,R0lGODlhAQABAIAAAHd3dwAAACH5BAAAAAAALAAAAAABAAEAAAICRAEAOw==" alt="Generic placeholder image" width="140" height="140"/>
|
||||
<h2>Heading</h2>
|
||||
<p>Donec sed odio dui. Etiam porta sem malesuada magna mollis euismod. Nullam id dolor id nibh ultricies vehicula ut id elit. Morbi leo risus, porta ac consectetur ac, vestibulum at eros. Praesent commodo cursus magna.</p>
|
||||
<p><a class="btn btn-secondary" href="#" role="button">View details »</a></p>
|
||||
</div>
|
||||
{/* <!-- /.col-lg-4 --> */}
|
||||
<div class="col-lg-4">
|
||||
<img class="rounded-circle" src="data:image/gif;base64,R0lGODlhAQABAIAAAHd3dwAAACH5BAAAAAAALAAAAAABAAEAAAICRAEAOw==" alt="Generic placeholder image" width="140" height="140"/>
|
||||
<h2>Heading</h2>
|
||||
<p>Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cras mattis consectetur purus sit amet fermentum. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh.</p>
|
||||
<p><a class="btn btn-secondary" href="#" role="button">View details »</a></p>
|
||||
</div>
|
||||
{/* <!-- /.col-lg-4 --> */}
|
||||
<div class="col-lg-4">
|
||||
<img class="rounded-circle" src="data:image/gif;base64,R0lGODlhAQABAIAAAHd3dwAAACH5BAAAAAAALAAAAAABAAEAAAICRAEAOw==" alt="Generic placeholder image" width="140" height="140"/>
|
||||
<h2>Heading</h2>
|
||||
<p>Donec sed odio dui. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Vestibulum id ligula porta felis euismod semper. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.</p>
|
||||
<p><a class="btn btn-secondary" href="#" role="button">View details »</a></p>
|
||||
</div>
|
||||
{/* <!-- /.col-lg-4 --> */}
|
||||
</div>
|
||||
{/* <!-- /.row --> */}
|
||||
|
||||
|
||||
{/* <!-- START THE FEATURETTES --> */}
|
||||
|
||||
<hr class="featurette-divider"/>
|
||||
|
||||
<div class="row featurette">
|
||||
<div class="col-md-7">
|
||||
<h2 class="featurette-heading">First featurette heading. <span class="text-muted">It'll blow your mind.</span></h2>
|
||||
<p class="lead">Donec ullamcorper nulla non metus auctor fringilla. Vestibulum id ligula porta felis euismod semper. Praesent commodo cursus magna, vel scelerisque nisl consectetur. Fusce dapibus, tellus ac cursus commodo.</p>
|
||||
</div>
|
||||
<div class="col-md-5">
|
||||
<img class="featurette-image img-fluid mx-auto" data-src="holder.js/500x500/auto" alt="500x500" style="width: 500px; height: 500px;" src="data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%22500%22%20height%3D%22500%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20500%20500%22%20preserveAspectRatio%3D%22none%22%3E%3Cdefs%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%23holder_1642190f000%20text%20%7B%20fill%3A%23AAAAAA%3Bfont-weight%3Abold%3Bfont-family%3AArial%2C%20Helvetica%2C%20Open%20Sans%2C%20sans-serif%2C%20monospace%3Bfont-size%3A25pt%20%7D%20%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22holder_1642190f000%22%3E%3Crect%20width%3D%22500%22%20height%3D%22500%22%20fill%3D%22%23EEEEEE%22%3E%3C%2Frect%3E%3Cg%3E%3Ctext%20x%3D%22185.125%22%20y%3D%22261.1%22%3E500x500%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E" data-holder-rendered="true"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr class="featurette-divider"/>
|
||||
|
||||
<div class="row featurette">
|
||||
<div class="col-md-7 push-md-5">
|
||||
<h2 class="featurette-heading">Oh yeah, it's that good. <span class="text-muted">See for yourself.</span></h2>
|
||||
<p class="lead">Donec ullamcorper nulla non metus auctor fringilla. Vestibulum id ligula porta felis euismod semper. Praesent commodo cursus magna, vel scelerisque nisl consectetur. Fusce dapibus, tellus ac cursus commodo.</p>
|
||||
</div>
|
||||
<div class="col-md-5 pull-md-7">
|
||||
<img class="featurette-image img-fluid mx-auto" data-src="holder.js/500x500/auto" alt="500x500" src="data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%22500%22%20height%3D%22500%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20500%20500%22%20preserveAspectRatio%3D%22none%22%3E%3Cdefs%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%23holder_1642190f002%20text%20%7B%20fill%3A%23AAAAAA%3Bfont-weight%3Abold%3Bfont-family%3AArial%2C%20Helvetica%2C%20Open%20Sans%2C%20sans-serif%2C%20monospace%3Bfont-size%3A25pt%20%7D%20%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22holder_1642190f002%22%3E%3Crect%20width%3D%22500%22%20height%3D%22500%22%20fill%3D%22%23EEEEEE%22%3E%3C%2Frect%3E%3Cg%3E%3Ctext%20x%3D%22185.125%22%20y%3D%22261.1%22%3E500x500%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E" data-holder-rendered="true" style="width: 500px; height: 500px;"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr class="featurette-divider"/>
|
||||
|
||||
<div class="row featurette">
|
||||
<div class="col-md-7">
|
||||
<h2 class="featurette-heading">And lastly, this one. <span class="text-muted">Checkmate.</span></h2>
|
||||
<p class="lead">Donec ullamcorper nulla non metus auctor fringilla. Vestibulum id ligula porta felis euismod semper. Praesent commodo cursus magna, vel scelerisque nisl consectetur. Fusce dapibus, tellus ac cursus commodo.</p>
|
||||
</div>
|
||||
<div class="col-md-5">
|
||||
<img class="featurette-image img-fluid mx-auto" data-src="holder.js/500x500/auto" alt="500x500" src="data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%22500%22%20height%3D%22500%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20500%20500%22%20preserveAspectRatio%3D%22none%22%3E%3Cdefs%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%23holder_1642190f003%20text%20%7B%20fill%3A%23AAAAAA%3Bfont-weight%3Abold%3Bfont-family%3AArial%2C%20Helvetica%2C%20Open%20Sans%2C%20sans-serif%2C%20monospace%3Bfont-size%3A25pt%20%7D%20%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22holder_1642190f003%22%3E%3Crect%20width%3D%22500%22%20height%3D%22500%22%20fill%3D%22%23EEEEEE%22%3E%3C%2Frect%3E%3Cg%3E%3Ctext%20x%3D%22185.125%22%20y%3D%22261.1%22%3E500x500%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E" data-holder-rendered="true" style="width: 500px; height: 500px;"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr class="featurette-divider"/>
|
||||
|
||||
{/* <!-- /END THE FEATURETTES --> */}
|
||||
|
||||
|
||||
{/* <!-- FOOTER --> */}
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
|
|
|||
37
src/pages/Homepage/index.css
Normal file
37
src/pages/Homepage/index.css
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
.backgroundContainer {
|
||||
/* background-image: url("http://backgroundcheckall.com/wp-content/uploads/2017/12/light-green-background-images-for-websites-6.jpg"); */
|
||||
/* background-repeat: no-repeat; */
|
||||
/* background-size: 100%; */
|
||||
/* background-position: center; */
|
||||
/* width: 100%; */
|
||||
/* height: auto; */
|
||||
background-repeat: no-repeat;
|
||||
background-size: 100% 100%;
|
||||
background-position: center center;
|
||||
}
|
||||
|
||||
.firstContainer {
|
||||
/* background-image: url("../kidRocket.jpg"); */
|
||||
/* background-size: cover; */
|
||||
/* /* max-width: 100%; */
|
||||
/* height: 100%; */
|
||||
/* background-repeat: no-repeat;
|
||||
background-size: contain; */
|
||||
/* background-repeat: no-repeat;
|
||||
background-size: 100% 90%; */
|
||||
}
|
||||
|
||||
.responsive {
|
||||
}
|
||||
|
||||
.CTA {
|
||||
align-items: center;
|
||||
color: red;
|
||||
}
|
||||
|
||||
.navbar {
|
||||
/* background: rgb(255, 255, 255); fallback for old browsers */
|
||||
/* background-image: url("http://backgroundcheckall.com/wp-content/uploads/2017/12/light-green-background-images-for-websites-6.jpg"); */
|
||||
|
||||
}
|
||||
|
||||
43
src/pages/Homepage/index.js
Normal file
43
src/pages/Homepage/index.js
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
import React, { Component } from "react";
|
||||
import { Container, Row, Col, Button } from "reactstrap";
|
||||
import styles from "./index.css";
|
||||
|
||||
import EmailForm from "/Users/omar/Desktop/innovationDrive/innovation-drive/src/components/Form.js";
|
||||
// import "./AboveTheFold.css";
|
||||
import HeadNavbar from "/Users/omar/Desktop/innovationDrive/innovation-drive/src/components/Navbar.js";
|
||||
import ModalExample from "/Users/omar/Desktop/innovationDrive/innovation-drive/src/components/PopUpSignUp.js";
|
||||
// /Users/omar/Desktop/innovationDrive/innovation-drive/src/components/Form.js
|
||||
|
||||
export default class Homepage extends Component {
|
||||
render() {
|
||||
return (
|
||||
<div className="backgroundContainer">
|
||||
<HeadNavbar />
|
||||
<Container />
|
||||
|
||||
<Container>
|
||||
{/* <Row> <img src={require('../kidRocket.jpg')} /> </Row> */}
|
||||
|
||||
<Row className="firstContainer">
|
||||
<Col xs="6" sm="4">
|
||||
{/* THIS IS A POP UP BOOTRAP MODAL, with a CTA to click on */}
|
||||
<h3> End to end product dev </h3>
|
||||
<ModalExample />
|
||||
</Col>
|
||||
|
||||
<Col xs="6" sm="4">
|
||||
|
||||
</Col>
|
||||
<Col lg="12" sm="4">
|
||||
{/* <EmailForm /> */}
|
||||
</Col>
|
||||
</Row>
|
||||
</Container>
|
||||
<Container>
|
||||
<h1>What Customers Say About Us</h1>
|
||||
{/* ADD BOOTSRAP CAROUSEL HERE */}
|
||||
</Container>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
}
|
||||
7348
yarn-error.log
Normal file
7348
yarn-error.log
Normal file
File diff suppressed because it is too large
Load diff
67
yarn.lock
67
yarn.lock
|
|
@ -3121,6 +3121,16 @@ he@1.1.x:
|
|||
version "1.1.1"
|
||||
resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd"
|
||||
|
||||
history@^4.7.2:
|
||||
version "4.7.2"
|
||||
resolved "https://registry.yarnpkg.com/history/-/history-4.7.2.tgz#22b5c7f31633c5b8021c7f4a8a954ac139ee8d5b"
|
||||
dependencies:
|
||||
invariant "^2.2.1"
|
||||
loose-envify "^1.2.0"
|
||||
resolve-pathname "^2.2.0"
|
||||
value-equal "^0.4.0"
|
||||
warning "^3.0.0"
|
||||
|
||||
hmac-drbg@^1.0.0:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1"
|
||||
|
|
@ -3129,6 +3139,10 @@ hmac-drbg@^1.0.0:
|
|||
minimalistic-assert "^1.0.0"
|
||||
minimalistic-crypto-utils "^1.0.1"
|
||||
|
||||
hoist-non-react-statics@^2.5.0:
|
||||
version "2.5.4"
|
||||
resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.5.4.tgz#fc3b1ac05d2ae3abedec84eba846511b0d4fcc4f"
|
||||
|
||||
home-or-tmp@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8"
|
||||
|
|
@ -3367,7 +3381,7 @@ interpret@^1.0.0:
|
|||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.1.0.tgz#7ed1b1410c6a0e0f78cf95d3b8440c63f78b8614"
|
||||
|
||||
invariant@^2.2.2:
|
||||
invariant@^2.2.1, invariant@^2.2.2, invariant@^2.2.4:
|
||||
version "2.2.4"
|
||||
resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6"
|
||||
dependencies:
|
||||
|
|
@ -4279,7 +4293,7 @@ longest@^1.0.1:
|
|||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097"
|
||||
|
||||
loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1:
|
||||
loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3.1:
|
||||
version "1.3.1"
|
||||
resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848"
|
||||
dependencies:
|
||||
|
|
@ -4995,7 +5009,7 @@ path-to-regexp@0.1.7:
|
|||
version "0.1.7"
|
||||
resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c"
|
||||
|
||||
path-to-regexp@^1.0.1:
|
||||
path-to-regexp@^1.0.1, path-to-regexp@^1.7.0:
|
||||
version "1.7.0"
|
||||
resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.7.0.tgz#59fde0f435badacba103a84e9d3bc64e96b9937d"
|
||||
dependencies:
|
||||
|
|
@ -5581,6 +5595,10 @@ react-dom@^16.4.1:
|
|||
object-assign "^4.1.1"
|
||||
prop-types "^15.6.0"
|
||||
|
||||
react-driftjs@^1.0.8:
|
||||
version "1.0.8"
|
||||
resolved "https://registry.yarnpkg.com/react-driftjs/-/react-driftjs-1.0.8.tgz#6e2ef26fbaa8219c09982cea4dd0c8e7bbe467fc"
|
||||
|
||||
react-error-overlay@^4.0.0:
|
||||
version "4.0.0"
|
||||
resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-4.0.0.tgz#d198408a85b4070937a98667f500c832f86bd5d4"
|
||||
|
|
@ -5600,6 +5618,29 @@ react-popper@^0.10.4:
|
|||
popper.js "^1.14.1"
|
||||
prop-types "^15.6.1"
|
||||
|
||||
react-router-dom@^4.3.1:
|
||||
version "4.3.1"
|
||||
resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-4.3.1.tgz#4c2619fc24c4fa87c9fd18f4fb4a43fe63fbd5c6"
|
||||
dependencies:
|
||||
history "^4.7.2"
|
||||
invariant "^2.2.4"
|
||||
loose-envify "^1.3.1"
|
||||
prop-types "^15.6.1"
|
||||
react-router "^4.3.1"
|
||||
warning "^4.0.1"
|
||||
|
||||
react-router@^4.3.1:
|
||||
version "4.3.1"
|
||||
resolved "https://registry.yarnpkg.com/react-router/-/react-router-4.3.1.tgz#aada4aef14c809cb2e686b05cee4742234506c4e"
|
||||
dependencies:
|
||||
history "^4.7.2"
|
||||
hoist-non-react-statics "^2.5.0"
|
||||
invariant "^2.2.4"
|
||||
loose-envify "^1.3.1"
|
||||
path-to-regexp "^1.7.0"
|
||||
prop-types "^15.6.1"
|
||||
warning "^4.0.1"
|
||||
|
||||
react-scripts@1.1.4:
|
||||
version "1.1.4"
|
||||
resolved "https://registry.yarnpkg.com/react-scripts/-/react-scripts-1.1.4.tgz#d5c230e707918d6dd2d06f303b10f5222d017c88"
|
||||
|
|
@ -5930,6 +5971,10 @@ resolve-from@^3.0.0:
|
|||
version "3.0.0"
|
||||
resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748"
|
||||
|
||||
resolve-pathname@^2.2.0:
|
||||
version "2.2.0"
|
||||
resolved "https://registry.yarnpkg.com/resolve-pathname/-/resolve-pathname-2.2.0.tgz#7e9ae21ed815fd63ab189adeee64dc831eefa879"
|
||||
|
||||
resolve-url@^0.2.1:
|
||||
version "0.2.1"
|
||||
resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a"
|
||||
|
|
@ -6894,6 +6939,10 @@ validate-npm-package-license@^3.0.1:
|
|||
spdx-correct "^3.0.0"
|
||||
spdx-expression-parse "^3.0.0"
|
||||
|
||||
value-equal@^0.4.0:
|
||||
version "0.4.0"
|
||||
resolved "https://registry.yarnpkg.com/value-equal/-/value-equal-0.4.0.tgz#c5bdd2f54ee093c04839d71ce2e4758a6890abc7"
|
||||
|
||||
vary@~1.1.2:
|
||||
version "1.1.2"
|
||||
resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc"
|
||||
|
|
@ -6922,6 +6971,18 @@ walker@~1.0.5:
|
|||
dependencies:
|
||||
makeerror "1.0.x"
|
||||
|
||||
warning@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.yarnpkg.com/warning/-/warning-3.0.0.tgz#32e5377cb572de4ab04753bdf8821c01ed605b7c"
|
||||
dependencies:
|
||||
loose-envify "^1.0.0"
|
||||
|
||||
warning@^4.0.1:
|
||||
version "4.0.1"
|
||||
resolved "https://registry.yarnpkg.com/warning/-/warning-4.0.1.tgz#66ce376b7fbfe8a887c22bdf0e7349d73d397745"
|
||||
dependencies:
|
||||
loose-envify "^1.0.0"
|
||||
|
||||
watch@~0.10.0:
|
||||
version "0.10.0"
|
||||
resolved "https://registry.yarnpkg.com/watch/-/watch-0.10.0.tgz#77798b2da0f9910d595f1ace5b0c2258521f21dc"
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue