diff --git a/components/Goups/group-description.js b/components/Goups/group-description.js new file mode 100644 index 0000000..2fbba46 --- /dev/null +++ b/components/Goups/group-description.js @@ -0,0 +1,45 @@ +import React from 'react'; +import clsx from 'clsx' +import { makeStyles } from '@material-ui/core/styles'; +import Typography from '@material-ui/core/Typography' +import Collapse from '@material-ui/core/Collapse' +import InfoIcon from '@material-ui/icons/Info'; +import CardContent from '@material-ui/core/CardContent'; +import IconButton from '@material-ui/core/IconButton'; + +const useStyles = makeStyles((theme) => ({ + + spen: { + transform: 'rotate(-360deg)', + transition: theme.transitions.create('transform', { + duration: theme.transitions.duration.standard, + }), + }, + close: { + transform: 'rotate(360deg)' + }, +})); + +const GroupDescription = ({ description }) => { + const classes = useStyles(); + const [spin, setSpin] = React.useState(false) + + return ( + + setSpin(!spin)} + className={clsx(classes.spen, { + [classes.close] : spin, + })}> + + + + + {description} + + + + ); +}; + +export default GroupDescription; diff --git a/components/Goups/group-head.js b/components/Goups/group-head.js new file mode 100644 index 0000000..4d80181 --- /dev/null +++ b/components/Goups/group-head.js @@ -0,0 +1,22 @@ +import React from 'react'; +import Link from 'next/link'; +import CardHeader from '@material-ui/core/CardHeader'; +import IconButton from '@material-ui/core/IconButton'; +import MoreVertIcon from '@material-ui/icons/MoreVert'; + +const GroupHead = ({ _id, name }) => { + return ( + + + + + } + title={{name}} + /> + + ); +}; + +export default GroupHead; diff --git a/components/Goups/group-list.js b/components/Goups/group-list.js index e69de29..9b6b480 100644 --- a/components/Goups/group-list.js +++ b/components/Goups/group-list.js @@ -0,0 +1,27 @@ +import { Fragment } from 'react'; +import { makeStyles } from '@material-ui/core/styles'; +import Group from './group'; + + +const useStyles = makeStyles((theme) => ({ + root: { + display: 'flex', + justifyContent: 'center', + alignItems: 'start', + flexWrap: 'wrap', + }, + main: { + margin: theme.spacing(2) + } +})); + +const GroupList = ({groups}) => { + const classes = useStyles(); + return ( +
+ {groups.map((group) => )} +
+ ); +}; + +export default GroupList; diff --git a/components/Goups/group-media.js b/components/Goups/group-media.js new file mode 100644 index 0000000..f1e4731 --- /dev/null +++ b/components/Goups/group-media.js @@ -0,0 +1,12 @@ +import React, { Fragment } from 'react'; +import CardMedia from '@material-ui/core/CardMedia'; + +const GroupMedia = ({ img, styles }) => { + return ( + + + + ); +}; + +export default GroupMedia; diff --git a/components/Goups/group.js b/components/Goups/group.js index e69de29..cb40430 100644 --- a/components/Goups/group.js +++ b/components/Goups/group.js @@ -0,0 +1,37 @@ +import { makeStyles } from '@material-ui/core/styles'; +import React, { useState } from 'react'; +import Card from '@material-ui/core/Card'; +import GroupMedia from './group-media'; +import GroupHead from './group-head'; +import GroupDescription from './group-description'; + +const useStyles = makeStyles((theme) => ({ + main: { + width: 550, + minWidth: 100, + margin: theme.spacing(2), + postion: 'absolute', + backgroundColor: theme.palette.primary.main, + }, + media: { + width: 'cover', + height: 400, + }, +})); + +const Group = (props) => { + const classes = useStyles(); + const { _id, name, img, projectDescription} = props.group; + console.log(_id) + return ( + + + + + + + + ); +}; + +export default Group; diff --git a/components/MUI/theme.js b/components/MUI/theme.js index 5153539..4a0f51d 100644 --- a/components/MUI/theme.js +++ b/components/MUI/theme.js @@ -1,24 +1,26 @@ import { createMuiTheme } from '@material-ui/core/styles'; import { red } from '@material-ui/core/colors'; -// Create a theme instance. const theme = createMuiTheme({ - palette: { - primary: { - light: '#4fb3bf', - main: '#00838f', - dark: '#005662' - }, - secondary: { - main: '#19857b', - }, - error: { - main: red.A400, - }, - background: { - default: '#fff', - }, - }, + palette : { + common : { + white : '#bed1d0', + }, + primary : { + light : '#4fb3bf', + main : '#00838f', + dark : '#005662', + }, + secondary : { + main : '#19857b', + }, + error : { + main : '#913029', + }, + background : { + default : '#a1bfbe', + }, + }, }); -export default theme; \ No newline at end of file +export default theme; diff --git a/components/UI/LinkButton.js b/components/UI/LinkButton.js deleted file mode 100644 index 947270f..0000000 --- a/components/UI/LinkButton.js +++ /dev/null @@ -1,26 +0,0 @@ -import React from 'react' -import { Fragment } from 'react' -import Button from '@material-ui/core/Button' -import Link from 'next/link' -import { makeStyles } from '@material-ui/core/styles' - -const useStyles = makeStyles((theme) => ({ - button: { - color: theme.palette.primary.light - } -})) - -const LinkButton = (props) => { - const classes = useStyles() - console.log(classes) - const {name, location} = props - return ( - - - - - - ) -} - -export default LinkButton diff --git a/components/UI/LogoLink.js b/components/UI/LogoLink.js new file mode 100644 index 0000000..0240b68 --- /dev/null +++ b/components/UI/LogoLink.js @@ -0,0 +1,21 @@ +import React from 'react' +import Link from 'next/link' +import Image from 'next/image' +import {makeStyles} from '@material-ui/core/styles' + +const useStyles = makeStyles((theme) => ({ + img: { + cursor: 'pointer', + } +})) + +const LogoLink = () => { + const classess = useStyles() + return ( + + + + ) +} + +export default LogoLink diff --git a/components/UI/NavTab.js b/components/UI/NavTab.js new file mode 100644 index 0000000..bdbad2f --- /dev/null +++ b/components/UI/NavTab.js @@ -0,0 +1,35 @@ +import { Fragment } from 'react'; +import { makeStyles } from '@material-ui/core/styles'; +import { useRouter } from 'next/router'; +import Tab from '@material-ui/core/Tab'; +import Smooth from './Smooth'; +import Link from 'next/link'; + +const useStyles = makeStyles((theme) => ({ + tab : { + color : theme.palette.primary, + height : 70, + }, +})); + +const NavTab = (props) => { + const classes = useStyles(); + const router = useRouter(); + const { name, pathname, bool } = props; + return ( + + + + + + + + ); +}; + +export default NavTab; diff --git a/components/UI/Smooth.js b/components/UI/Smooth.js new file mode 100644 index 0000000..1447a39 --- /dev/null +++ b/components/UI/Smooth.js @@ -0,0 +1,27 @@ +import { makeStyles } from '@material-ui/core/styles'; + +const useStyles = makeStyles((theme) => ({ + active : { + backgroundColor : theme.palette.primary.dark, + height : '2px', + }, + inactive : { + backgroundColor : 'transparent', + height : '2px', + }, +})); + +const Smooth = (props) => { + const classes = useStyles(); + const { children, style } = props; + return ( +
+ {children} +
  • +
  • + ); +}; + +export default Smooth; diff --git a/components/component.spec.js b/components/component.spec.js index d9214ca..2a3c7ac 100644 --- a/components/component.spec.js +++ b/components/component.spec.js @@ -1,9 +1,9 @@ import React from "react"; import { render, screen } from "@testing-library/react"; -import NavBar from '../components/layout' +import NavBar from './layout/NavBar' test('navagation component exists', () => { render() - const item = screen.getByText(/devocidy/i) - expect(item).toBe('devocidy') + const item = screen.getByRole('button', {name: /Home/i}) + expect(item).toBeInTheDocument() }) \ No newline at end of file diff --git a/components/layout/Contributors.js b/components/layout/Contributors.js new file mode 100644 index 0000000..41e86ac --- /dev/null +++ b/components/layout/Contributors.js @@ -0,0 +1,23 @@ +import {Fragment} from 'react' +import {getAllContributors} from '../../dummy' +import Typography from '@material-ui/core/Typography' +import Box from '@material-ui/core/Box' +import Link from '@material-ui/core/Link' + +const Contributors = () => { + const contributors = getAllContributors() + return ( + + Contributors + {contributors.map(contributor => + + {contributor.name} + see more... + + )} + + ) +} + + +export default Contributors diff --git a/components/layout/CopyWrite.js b/components/layout/CopyWrite.js deleted file mode 100644 index e69de29..0000000 diff --git a/components/layout/Copyright.js b/components/layout/Copyright.js new file mode 100644 index 0000000..5f92634 --- /dev/null +++ b/components/layout/Copyright.js @@ -0,0 +1,12 @@ +import React from 'react' +import Typography from '@material-ui/core/Typography'; + +const Copyright = () => { + return ( + + {'Copyright ©'}{new Date().getFullYear()} + + ) +} + +export default Copyright diff --git a/components/layout/Footer.js b/components/layout/Footer.js index e69de29..6df0450 100644 --- a/components/layout/Footer.js +++ b/components/layout/Footer.js @@ -0,0 +1,31 @@ +import Typography from '@material-ui/core/Typography'; +import Container from '@material-ui/core/Container'; +import { makeStyles } from '@material-ui/core/styles'; +import Copyright from './Copyright'; + +const useStyles = makeStyles((theme) => ({ + footer : { + backgroundColor : theme.palette.primary.dark, + padding: theme.spacing(2, 0) + }, + children: { + color: theme.palette.common.white + } +})); + +const Footer = (props) => { + const classes = useStyles(); + const {children} = props + return ( + + ); +}; + +export default Footer; diff --git a/components/layout/Layout.js b/components/layout/Layout.js new file mode 100644 index 0000000..9663763 --- /dev/null +++ b/components/layout/Layout.js @@ -0,0 +1,22 @@ +import Container from '@material-ui/core/Container'; +import NavBar from './NavBar'; +import Footer from './Footer'; +import Contributors from './Contributors' +import styles from '../../styles/app.module.css' + +const Layout = (props) => { + const { children } = props; + return ( +
    + + + {children} + +
    + +
    +
    + ); +}; + +export default Layout; diff --git a/components/layout/NavBar.js b/components/layout/NavBar.js index bb03f63..41e493d 100644 --- a/components/layout/NavBar.js +++ b/components/layout/NavBar.js @@ -1,18 +1,41 @@ +import {Fragment} from 'react' +import { makeStyles } from '@material-ui/core/styles'; import AppBar from '@material-ui/core/AppBar'; -import Toolbar from '@material-ui/core/Toolbar'; -import LinkButton from '../UI/LinkButton' +import Tabs from '@material-ui/core/Tabs'; +import NavTab from '../UI/NavTab'; +import LogoLink from '../UI/LogoLink'; + +const useStyles = makeStyles((theme) => ({ + main: { + backgroundColor: theme.palette.primary.light, + display: 'flex', + flexDirection: 'column', + position: 'fixed', + }, + tabs: { + flex: 1, + bottom: 0, + paddingLeft: theme.spacing(0), + }, + div:{ + margin: theme.spacing(4) + } +})); const NavBar = () => { - return ( - - - - - - - - - ) -} + const classes = useStyles(); + return ( + + + + + + + + +
    + + ); +}; -export default NavBar +export default NavBar; diff --git a/dummy.js b/dummy.js new file mode 100644 index 0000000..180ff1f --- /dev/null +++ b/dummy.js @@ -0,0 +1,159 @@ +const DUMMY_GROUPS = [ + { + _id: 'grp001', + name : 'DevGroup1', + img : '/images/group1.jpg', + projectDescription : 'This IS the project description for group this that and 1 2, hell. aere', + isFeatured: true, + users : [ + { + _id : 'use001', + name : 'abella', + email : 'developer@email.com', + image : '/images/user1.jpg', + }, + { + _id : 'use002', + name : 'Rome', + email : 'developer@email.com', + image : '/images/user2.jpg', + }, + ], + }, + { + _id: 'grp002', + name : 'DevGroup2', + img : '/images/group2.jpg', + projectDescription : 'This IS the project description for group this that and 1 2, hell. aere, Creating a longer group description', + isFeatured: false, + users : [ + { + _id : 'use003', + name : 'Leyton', + email : 'developer@email.com', + image : '/images/user3.jpg', + }, + { + _id : 'use033', + name : 'Vita', + email : 'developer@email.com', + image : '/images/user4.jpg', + }, + ], + }, + { + _id: 'grp003', + name : 'DevGroup3', + img : '/images/group3.jpg', + projectDescription : 'shor description', + isFeatured: true, + users : [ + { + _id : 'use004', + name : 'Zen', + email : 'developer@email.com', + image : '/images/user5.jpg', + }, + { + _id : 'use005', + name : 'August', + email : 'developer@email.com', + image : '/images/user6.jpg', + }, + ], + }, + { + _id: 'grp004', + name : 'DevGroup4', + img : '/images/group4.jpg', + projectDescription : 'n/a', + isFeatured: false, + users : [ + { + _id : 'use006', + name : 'Mace', + email : 'developer@email.com', + image : '/images/user7.jpg', + }, + { + _id : 'use007', + name : 'Jupiter', + email : 'developer@email.com', + image : '/images/user8.jpg', + }, + ], + }, + { + _id: 'grp005', + name : 'DevGroup5', + img : '/images/group5.jpg', + projectDescription : 'This is the project description for some group that cares way to much about creating a description for thier project y n the world would anyone write so much now lets be random sjdlfkjsldfkjsldkfjslkdjf sllsls jdj okay I think this is enough of a description don\'t you no. Okay new paragraph I\'m not botherd by the abslute lack of gramer are you sudden bye bye. ', + isFeatured: true, + users : [ + { + _id : 'use008', + name : 'Oceana', + email : 'developer@email.com', + image : '/images/user9.jpg', + }, + { + _id : 'use009', + name : 'Judd', + email : 'developer@email.com', + image : '/images/user10.jpg', + }, + ], + }, +]; + +const CONTRIBUTORS = [ + { + _id: 'con001', + name: 'CJ. Leverett', + link: 'https://cjleverett.me' + }, + { + _id: 'con002', + name: 'Tyler Jones', + link: 'https://www.devtylerjones.com/' + }, + { + _id: 'con003', + name: 'Samantha Aleman', + link: 'https://www.linkedin.com/in/samantha-aleman-b83306b5/' + }, + { + _id: 'con004', + name: 'Umberto Palazzo', + link: 'https://www.linkedin.com/in/umberto-palazzo-93a86ba3/' + }, + { + _id: 'con005', + name: 'Riley Slayden', + link: 'https://www.rileyslayden.com/' + } +] + +const log = '/images/LOGO.jpg' + +export const getFeaturedGroups = () => { + return DUMMY_GROUPS.filter((group) => group.isFeatured); +} + +const getAllGroups = () => { + return DUMMY_GROUPS; +} + +export const getAllContributors = () => { + return CONTRIBUTORS +} + +export const getGroupById = (id) => { + return DUMMY_GROUPS.find((group) => group._id === id); +} + +export const Logo = () => { + return logo +} + +export default getAllGroups \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 028328e..1aedd8f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1235,6 +1235,82 @@ "react-is": "^16.8.0 || ^17.0.0" } }, + "@material-ui/core": { + "version": "4.11.3", + "resolved": "https://registry.npmjs.org/@material-ui/core/-/core-4.11.3.tgz", + "integrity": "sha512-Adt40rGW6Uds+cAyk3pVgcErpzU/qxc7KBR94jFHBYretU4AtWZltYcNsbeMn9tXL86jjVL1kuGcIHsgLgFGRw==", + "requires": { + "@babel/runtime": "^7.4.4", + "@material-ui/styles": "^4.11.3", + "@material-ui/system": "^4.11.3", + "@material-ui/types": "^5.1.0", + "@material-ui/utils": "^4.11.2", + "@types/react-transition-group": "^4.2.0", + "clsx": "^1.0.4", + "hoist-non-react-statics": "^3.3.2", + "popper.js": "1.16.1-lts", + "prop-types": "^15.7.2", + "react-is": "^16.8.0 || ^17.0.0", + "react-transition-group": "^4.4.0" + } + }, + "@material-ui/icons": { + "version": "4.11.2", + "resolved": "https://registry.npmjs.org/@material-ui/icons/-/icons-4.11.2.tgz", + "integrity": "sha512-fQNsKX2TxBmqIGJCSi3tGTO/gZ+eJgWmMJkgDiOfyNaunNaxcklJQFaFogYcFl0qFuaEz1qaXYXboa/bUXVSOQ==", + "requires": { + "@babel/runtime": "^7.4.4" + } + }, + "@material-ui/styles": { + "version": "4.11.3", + "resolved": "https://registry.npmjs.org/@material-ui/styles/-/styles-4.11.3.tgz", + "integrity": "sha512-HzVzCG+PpgUGMUYEJ2rTEmQYeonGh41BYfILNFb/1ueqma+p1meSdu4RX6NjxYBMhf7k+jgfHFTTz+L1SXL/Zg==", + "requires": { + "@babel/runtime": "^7.4.4", + "@emotion/hash": "^0.8.0", + "@material-ui/types": "^5.1.0", + "@material-ui/utils": "^4.11.2", + "clsx": "^1.0.4", + "csstype": "^2.5.2", + "hoist-non-react-statics": "^3.3.2", + "jss": "^10.5.1", + "jss-plugin-camel-case": "^10.5.1", + "jss-plugin-default-unit": "^10.5.1", + "jss-plugin-global": "^10.5.1", + "jss-plugin-nested": "^10.5.1", + "jss-plugin-props-sort": "^10.5.1", + "jss-plugin-rule-value-function": "^10.5.1", + "jss-plugin-vendor-prefixer": "^10.5.1", + "prop-types": "^15.7.2" + } + }, + "@material-ui/system": { + "version": "4.11.3", + "resolved": "https://registry.npmjs.org/@material-ui/system/-/system-4.11.3.tgz", + "integrity": "sha512-SY7otguNGol41Mu2Sg6KbBP1ZRFIbFLHGK81y4KYbsV2yIcaEPOmsCK6zwWlp+2yTV3J/VwT6oSBARtGIVdXPw==", + "requires": { + "@babel/runtime": "^7.4.4", + "@material-ui/utils": "^4.11.2", + "csstype": "^2.5.2", + "prop-types": "^15.7.2" + } + }, + "@material-ui/types": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@material-ui/types/-/types-5.1.0.tgz", + "integrity": "sha512-7cqRjrY50b8QzRSYyhSpx4WRw2YuO0KKIGQEVk5J8uoz2BanawykgZGoWEqKm7pVIbzFDN0SpPcVV4IhOFkl8A==" + }, + "@material-ui/utils": { + "version": "4.11.2", + "resolved": "https://registry.npmjs.org/@material-ui/utils/-/utils-4.11.2.tgz", + "integrity": "sha512-Uul8w38u+PICe2Fg2pDKCaIG7kOyhowZ9vjiC1FsVwPABTW8vPPKfF6OvxRq3IiBaI1faOJmgdvMG7rMJARBhA==", + "requires": { + "@babel/runtime": "^7.4.4", + "prop-types": "^15.7.2", + "react-is": "^16.8.0 || ^17.0.0" + } + }, "@next/env": { "version": "10.0.9", "resolved": "https://registry.npmjs.org/@next/env/-/env-10.0.9.tgz", diff --git a/pages/_app.js b/pages/_app.js index 506e637..e7f7caf 100644 --- a/pages/_app.js +++ b/pages/_app.js @@ -1,11 +1,10 @@ -import React, { Fragment } from "react"; -import PropTypes from "prop-types"; -import Head from "next/head"; -import { ThemeProvider } from "@material-ui/core/styles"; -import CssBaseline from "@material-ui/core/CssBaseline"; -import theme from "../components/MUI/theme"; -import NavBar from "../components/layout/NavBar"; -import { wrapper } from "../store/index"; +import React, {Fragment} from 'react'; +import { ThemeProvider } from '@material-ui/core/styles'; +import PropTypes from 'prop-types'; +import Head from 'next/head'; +import CssBaseline from '@material-ui/core/CssBaseline'; +import theme from '../components/MUI/theme'; +import Layout from '../components/layout/Layout' function MyApp(props) { const { Component, pageProps } = props; @@ -30,8 +29,9 @@ function MyApp(props) { {/* CssBaseline kickstart an elegant, consistent, and simple baseline to build upon. */} - - + + + ); diff --git a/pages/_document.js b/pages/_document.js index 330cf57..e6655b2 100644 --- a/pages/_document.js +++ b/pages/_document.js @@ -10,6 +10,7 @@ export default class MyDocument extends Document { {/* PWA primary color */} + { +const GroupPage = () => { + const router = useRouter() + const group = getGroupById(router.query.groupId) return ( - -

    Devocidy Team

    - {/* This page will be the location a user will be directed to after clicking link to a - a particular grooup +
    + + {/* This will be the nested route for a group page + Still decideing if it should be nested or not */} - +
    ) } -export default Group +export default GroupPage diff --git a/pages/groups/index.js b/pages/groups/index.js index f8c7960..62cd376 100644 --- a/pages/groups/index.js +++ b/pages/groups/index.js @@ -1,17 +1,15 @@ import {Fragment} from 'react' +import GroupList from '../../components/Goups/group-list' +import getAllGroups from '../../dummy'; -const GroupPage = () => { +const GroupListPage = () => { + const groups = getAllGroups() return (

    Groups

    -
      -
    • Group 1
    • -
    • Group 2
    • -
    • Group 3
    • -
    - {/* This will be for Displaying a list of groups */} +
    ) } -export default GroupPage +export default GroupListPage diff --git a/pages/index.js b/pages/index.js index 1e39d95..1d7045b 100644 --- a/pages/index.js +++ b/pages/index.js @@ -1,7 +1,10 @@ import Head from "next/head"; // import styles from "../styles/Home.module.css"; +import getAllGroups from '../dummy' export default function Home() { + const groups = getAllGroups() + let g1 = groups[0] return (

    Create Next App

    diff --git a/pages/login/index.js b/pages/login/index.js new file mode 100644 index 0000000..4757701 --- /dev/null +++ b/pages/login/index.js @@ -0,0 +1,12 @@ +import React from 'react' + +const Login = () => { + return ( +
    + Login
    + or SignUp +
    + ) +} + +export default Login diff --git a/public/android-chrome-192x192.png b/public/android-chrome-192x192.png new file mode 100644 index 0000000..9a629c9 Binary files /dev/null and b/public/android-chrome-192x192.png differ diff --git a/public/android-chrome-512x512.png b/public/android-chrome-512x512.png new file mode 100644 index 0000000..742b515 Binary files /dev/null and b/public/android-chrome-512x512.png differ diff --git a/public/apple-touch-icon.png b/public/apple-touch-icon.png new file mode 100644 index 0000000..5cca20d Binary files /dev/null and b/public/apple-touch-icon.png differ diff --git a/public/favicon-16x16.png b/public/favicon-16x16.png new file mode 100644 index 0000000..dcfc462 Binary files /dev/null and b/public/favicon-16x16.png differ diff --git a/public/favicon.ico b/public/favicon.ico deleted file mode 100644 index 4965832..0000000 Binary files a/public/favicon.ico and /dev/null differ diff --git a/public/images/IMGLINK.jpg b/public/images/IMGLINK.jpg new file mode 100644 index 0000000..02c0478 Binary files /dev/null and b/public/images/IMGLINK.jpg differ diff --git a/public/images/LOGO.jpg b/public/images/LOGO.jpg new file mode 100644 index 0000000..a3d60a3 Binary files /dev/null and b/public/images/LOGO.jpg differ diff --git a/public/images/devocidyLogo.jpg b/public/images/devocidyLogo.jpg new file mode 100644 index 0000000..9cc0b48 Binary files /dev/null and b/public/images/devocidyLogo.jpg differ diff --git a/public/images/favicon.jpg b/public/images/favicon.jpg new file mode 100644 index 0000000..bc5532c Binary files /dev/null and b/public/images/favicon.jpg differ diff --git a/public/images/group1.jpg b/public/images/group1.jpg new file mode 100644 index 0000000..70ffc7c Binary files /dev/null and b/public/images/group1.jpg differ diff --git a/public/images/group2.jpg b/public/images/group2.jpg new file mode 100644 index 0000000..2a06840 Binary files /dev/null and b/public/images/group2.jpg differ diff --git a/public/images/group3.jpg b/public/images/group3.jpg new file mode 100644 index 0000000..8e44f58 Binary files /dev/null and b/public/images/group3.jpg differ diff --git a/public/images/group4.jpg b/public/images/group4.jpg new file mode 100644 index 0000000..bad273f Binary files /dev/null and b/public/images/group4.jpg differ diff --git a/public/images/group5.jpg b/public/images/group5.jpg new file mode 100644 index 0000000..6faa3d1 Binary files /dev/null and b/public/images/group5.jpg differ diff --git a/public/images/user1.jpg b/public/images/user1.jpg new file mode 100644 index 0000000..62d0998 Binary files /dev/null and b/public/images/user1.jpg differ diff --git a/public/images/user10.jpg b/public/images/user10.jpg new file mode 100644 index 0000000..d583807 Binary files /dev/null and b/public/images/user10.jpg differ diff --git a/public/images/user2.jpg b/public/images/user2.jpg new file mode 100644 index 0000000..4560780 Binary files /dev/null and b/public/images/user2.jpg differ diff --git a/public/images/user3.jpg b/public/images/user3.jpg new file mode 100644 index 0000000..0e6f594 Binary files /dev/null and b/public/images/user3.jpg differ diff --git a/public/images/user4.jpg b/public/images/user4.jpg new file mode 100644 index 0000000..855583a Binary files /dev/null and b/public/images/user4.jpg differ diff --git a/public/images/user5.jpg b/public/images/user5.jpg new file mode 100644 index 0000000..ecbdb11 Binary files /dev/null and b/public/images/user5.jpg differ diff --git a/public/images/user6.jpg b/public/images/user6.jpg new file mode 100644 index 0000000..9b0a1b1 Binary files /dev/null and b/public/images/user6.jpg differ diff --git a/public/images/user7.jpg b/public/images/user7.jpg new file mode 100644 index 0000000..f95aa7f Binary files /dev/null and b/public/images/user7.jpg differ diff --git a/public/images/user8.jpg b/public/images/user8.jpg new file mode 100644 index 0000000..32a981b Binary files /dev/null and b/public/images/user8.jpg differ diff --git a/public/images/user9.jpg b/public/images/user9.jpg new file mode 100644 index 0000000..836ec20 Binary files /dev/null and b/public/images/user9.jpg differ diff --git a/public/site.webmanifest b/public/site.webmanifest new file mode 100644 index 0000000..45dc8a2 --- /dev/null +++ b/public/site.webmanifest @@ -0,0 +1 @@ +{"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"} \ No newline at end of file diff --git a/styles/Home.module.css b/styles/Home.module.css deleted file mode 100644 index 42e7e60..0000000 --- a/styles/Home.module.css +++ /dev/null @@ -1,122 +0,0 @@ -.container { - min-height: 100vh; - padding: 0 0.5rem; - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; -} - -.main { - padding: 5rem 0; - flex: 1; - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; -} - -.footer { - width: 100%; - height: 100px; - border-top: 1px solid #eaeaea; - display: flex; - justify-content: center; - align-items: center; -} - -.footer img { - margin-left: 0.5rem; -} - -.footer a { - display: flex; - justify-content: center; - align-items: center; -} - -.title a { - color: #0070f3; - text-decoration: none; -} - -.title a:hover, -.title a:focus, -.title a:active { - text-decoration: underline; -} - -.title { - margin: 0; - line-height: 1.15; - font-size: 4rem; -} - -.title, -.description { - text-align: center; -} - -.description { - line-height: 1.5; - font-size: 1.5rem; -} - -.code { - background: #fafafa; - border-radius: 5px; - padding: 0.75rem; - font-size: 1.1rem; - font-family: Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, - Bitstream Vera Sans Mono, Courier New, monospace; -} - -.grid { - display: flex; - align-items: center; - justify-content: center; - flex-wrap: wrap; - max-width: 800px; - margin-top: 3rem; -} - -.card { - margin: 1rem; - flex-basis: 45%; - padding: 1.5rem; - text-align: left; - color: inherit; - text-decoration: none; - border: 1px solid #eaeaea; - border-radius: 10px; - transition: color 0.15s ease, border-color 0.15s ease; -} - -.card:hover, -.card:focus, -.card:active { - color: #0070f3; - border-color: #0070f3; -} - -.card h3 { - margin: 0 0 1rem 0; - font-size: 1.5rem; -} - -.card p { - margin: 0; - font-size: 1.25rem; - line-height: 1.5; -} - -.logo { - height: 1em; -} - -@media (max-width: 600px) { - .grid { - width: 100%; - flex-direction: column; - } -} diff --git a/styles/app.module.css b/styles/app.module.css new file mode 100644 index 0000000..faa91e7 --- /dev/null +++ b/styles/app.module.css @@ -0,0 +1,17 @@ +.container { + display: flex; + flex-direction: column; + min-height: 137vh; +} + +.main { + flex: 1; +} + +.footer { + padding: 18px; +} + +.logo { + padding-left: 100px; +}