Update title and add landing page content. Also added Kahoot content. Waiting for futehr informations about the API.

front
Tom BIARD 1 year ago
parent 8919aa9ddc
commit a70b3c5aad

6
package-lock.json generated

@ -0,0 +1,6 @@
{
"name": "ScienceQuest",
"lockfileVersion": 3,
"requires": true,
"packages": {}
}

@ -4,7 +4,7 @@
<meta charset="UTF-8">
<link rel="icon" href="/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Vite App</title>
<title>Welcome to Science Quest</title>
</head>
<body>
<div id="app"></div>

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 206 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 206 KiB

@ -1 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 261.76 226.69"><path d="M161.096.001l-30.225 52.351L100.647.001H-.005l130.877 226.688L261.749.001z" fill="#41b883"/><path d="M161.096.001l-30.225 52.351L100.647.001H52.346l78.526 136.01L209.398.001z" fill="#34495e"/></svg>

Before

Width:  |  Height:  |  Size: 276 B

@ -0,0 +1,62 @@
<script> //TODO définir les méthodes -> à définir grâce à l'API
export default {
data() {
return {
}
},
methods:{
}
}
</script>
<style lang="scss">
@import "../scss/kahoot.scss";
</style>
<template>
<div class="Kahoot">
<h1 style="padding-left: 0.5em;">Kahoot</h1>
<div class="Kahoot-Header">
<h2>Rejoindre un Kahoot</h2>
<form>
<label for="Kahoot-Code">Code</label>
<input type="text" id="Kahoot-Code" name="Kahoot-Code">
<button class="Kahoot-Join-Button">Rejoindre</button>
</form>
</div>
<div class="Kahoot-content">
<div class="Kahoot-Create">
<h2>Créer un Kahoot</h2> <!-- TODO : Il faut changer le formulaire pour juste cliquer sur un bouton et que ça affiche une pop-up -->
<form>
<label for="Kahoot-Create-Title">Titre</label>
<input type="text" id="Kahoot-Create-Title" name="Kahoot-Create-Title">
<label for="Kahoot-Create-Questions">Nombre de questions</label>
<input type="number" id="Kahoot-Create-Questions" name="Kahoot-Create-Questions">
<button class="Kahoot-Create-Button">Créer</button>
</form>
</div>
<div class="Kahoot-List">
<h2> Vos Quizz</h2>
<div class="Kahoot-List-Item">
<h2>Titre du Kahoot</h2>
<p>Nombre de questions : 10</p>
<p>Créé par : Professeur X</p>
<button class="Kahoot-List-Item-Button">Jouer</button>
</div>
<div class="Kahoot-List-Item">
<h2>Titre du Kahoot</h2>
<p>Nombre de questions : 10</p>
<p>Créé par : Professeur X</p>
<button class="Kahoot-List-Item-Button">Jouer</button>
</div>
<div class="Kahoot-List-Item">
<h2>Titre du Kahoot</h2>
<p>Nombre de questions : 10</p>
<p>Créé par : Professeur X</p>
<button class="Kahoot-List-Item-Button">Jouer</button>
</div>
</div>
</div>
</div>
</template>

@ -1,16 +1,38 @@
<script>
import { NOM_APP } from "../assets/const";
export default{
data(){
return{
nomApp:NOM_APP
export default {
data() {
return {
nomApp: NOM_APP
}
}
}
</script>
<style lang="scss">
@import "../scss/landingPage.scss";
</style>
<template>
<p>Bienvenue dans {{ nomApp }} !! &lt;3</p>
<div class="landingPage">
<div class="landingContent">
<h1>{{ nomApp }}</h1>
<p> Science Quest est un jeu réalisé par 6 étudiants en deuxième années de l'IUT Clermont Auvergne <br />
dans le cadre d'un projet tuteuré. Le but de ce jeu est de vous faire découvrir des scientifiques (principalement des femmes) <br />
et leurs découvertes à travers des énigmes et des mini-jeux. Bonne chance !
</p>
<p> Actuellement les jeux sont en cours de développement 🚧</p> <!-- TODO: Rajouter les jeux disponibles -->
<div class="routes-button">
<router-link to="/kahoot" class="button">Kahoot 🚧</router-link>
<router-link to="/qui_est_ce" class="button">Qui-est-ce ? 🚧</router-link>
</div>
<img src="../temporary_ressources/img/marie-curie.png" alt="Marie Curie" />
</div>
</div>
<footer>
<p>Réalisé par des étudiants de l'IUT Clermont Auvergne <br /> <!-- TODO: Mettre les noms des étudiants -->
© 2024 Science Quest
</p>
</footer>
</template>

@ -13,7 +13,7 @@ export default{
<template>
<!-- logo temporaire
<img alt="Vue logo" src="../assets/logo.svg" />
<img alt="Vue logo" src="../assets/logo.png" />
-->
<nav class="navbar navbar-expand-lg bg-light">
<div class="container-fluid">
@ -36,7 +36,7 @@ export default{
</a>
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="#">Qui est-ce</a></li>
<li><a class="dropdown-item" href="#">Kahoot</a></li>
<li><a class="dropdown-item" href="#/kahoot">Kahoot</a></li>
<li><hr class="dropdown-divider"></li>
<li><a class="dropdown-item disabled" href="#">autre jeu</a></li>
</ul>

@ -13,10 +13,12 @@ import PagePrincipale from "./components/PagePrincipale.vue"
import NotFound from "./components/erreurs/NotFound.vue"
import TestParametreURL from "./components/TestParametreURL.vue"
import Login from "./components/Login.vue"
import KahootVue from './components/Kahoot.vue'
const routes = [
{ path: '/', component: PagePrincipale },
{ path: '/login', component: Login },
{ path: '/kahoot', component: KahootVue}, //TODO: changer la route pour qu'elle soit trouvée automatiquement par le serveur (ce que demande l'utilisateur)
{ path: '/exemple/:id', component: TestParametreURL },
{ path: '/:pathMatch(.*)*', name: 'NotFound', component: NotFound },
]

@ -0,0 +1,89 @@
// kahoot styles
.Kahoot-Header {
display: flex;
justify-content: space-between;
align-items: center;
padding: 1em;
background-color: #007bff;
color: #fff;
}
.Kahoot-content {
display: flex;
justify-content: flex-start;
flex-direction: column;
}
.Kahoot-List {
display: flex;
flex-direction: column;
}
.Kahoot-Create {
display: flex;
align-items: center;
background-color: #007bff;
color: #fff;
}
// kahoot styles
.Kahoot-content {
display: flex;
justify-content: flex-start;
flex-direction: column;
}
.Kahoot-List {
display: flex;
flex-direction: column;
}
.Kahoot-Create {
display: flex;
flex-direction: column;
align-items: flex-start;
padding: 1em;
label {
font-weight: bold;
margin-bottom: 0.5em;
}
input[type="text"],
input[type="number"] {
padding: 0.5em;
margin-bottom: 1em;
border: 1px solid #ccc;
border-radius: 4px;
}
button.Kahoot-Create-Button {
padding: 0.5em 1em;
background-color: #000;
color: #fff;
border: none;
border-radius: 4px;
cursor: pointer;
}
}
.Kahoot-List-Item {
display: flex;
justify-content: space-between;
align-items: center;
padding: 1em;
margin: 0.5em 0;
background-color: #f4f4f4;
border-radius: 4px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.Kahoot-List-Item-Button {
padding: 0.5em 1em;
background-color: #000;
color: #fff;
border: none;
border-radius: 4px;
cursor: pointer;
}

@ -0,0 +1,143 @@
//template
template {
font-family: 'Roboto', sans-serif;
font-size: 16px;
line-height: 1.6;
color: #333;
}
//landing page styles
.landingPage {
display: flex;
flex-direction: row;
align-items: center;
padding: 1em;
justify-content: space-around;
height: 100vh;
}
.landingContent {
text-align: center;
}
.landingContent h1 {
font-size: 3rem;
animation: dropIn 2s;
}
.landingContent p {
font-size: 1.5rem;
animation: dropIn 2s;
}
.landingPage img {
width: 20%;
height: auto;
animation: slideInRight 2s;
}
.routes-button{
display: flex;
flex-direction: row;
justify-content: space-evenly;
align-items: center;
margin-top: 2rem;
animation: dropIn 2s;
}
.button {
display: flex;
flex-direction: row;
padding: 0.5em 1em;
font-size: 1rem;
font-weight: bold;
text-align: center;
text-decoration: none;
background-color: #000;
color: #fff;
border-radius: 4px;
border: none;
cursor: pointer;
transition: background-color 0.3s ease;
}
.button:hover {
background-color: #333;
}
//footer
footer {
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
padding: 1em;
background-color: #000;
color: #fff;
}
//keyframes
@keyframes dropIn {
0% {
transform: translateY(-100%);
opacity: 0;
}
100% {
transform: translateY(0);
opacity: 1;
}
}
@keyframes slideIn {
0% {
transform: translateX(-100%);
opacity: 0;
}
100% {
transform: translateX(0);
opacity: 1;
}
}
@keyframes slideInRight {
0% {
transform: translateX(100%);
opacity: 0;
}
100% {
transform: translateX(0);
opacity: 1;
}
}
// Media queries for responsiveness
@media screen and (max-width: 768px) {
.landingPage {
flex-direction: row;
justify-content: start;
padding: 2rem;
}
.landingContent {
margin-bottom: 2rem;
}
.landingContent h1 {
font-size: 2rem;
}
.landingContent p {
font-size: 1rem;
}
.landingPage img {
width: 50%;
height: auto;
}
.landingContent button {
font-size: 1rem;
padding: 0.5rem 1rem;
margin-top: 1rem;
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 110 KiB

Loading…
Cancel
Save