crie um site para captura de leads com unity dev e mercado de trabalho com backend e banco de dados mysql
Browse files- README.md +8 -5
- components/footer.js +59 -0
- components/navbar.js +102 -0
- contato.html +106 -0
- index.html +131 -19
- script.js +90 -0
- sobre.html +91 -0
- style.css +73 -18
- vagas.html +155 -0
README.md
CHANGED
|
@@ -1,10 +1,13 @@
|
|
| 1 |
---
|
| 2 |
-
title:
|
| 3 |
-
|
| 4 |
-
|
| 5 |
-
|
| 6 |
sdk: static
|
| 7 |
pinned: false
|
|
|
|
|
|
|
| 8 |
---
|
| 9 |
|
| 10 |
-
|
|
|
|
|
|
| 1 |
---
|
| 2 |
+
title: UnityLeadCapture - Game Dev Career Launchpad 🎮
|
| 3 |
+
colorFrom: pink
|
| 4 |
+
colorTo: pink
|
| 5 |
+
emoji: 🐳
|
| 6 |
sdk: static
|
| 7 |
pinned: false
|
| 8 |
+
tags:
|
| 9 |
+
- deepsite-v3
|
| 10 |
---
|
| 11 |
|
| 12 |
+
# Welcome to your new DeepSite project!
|
| 13 |
+
This project was created with [DeepSite](https://huggingface.co/deepsite).
|
components/footer.js
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
class CustomFooter extends HTMLElement {
|
| 2 |
+
connectedCallback() {
|
| 3 |
+
this.attachShadow({ mode: 'open' });
|
| 4 |
+
this.shadowRoot.innerHTML = `
|
| 5 |
+
<style>
|
| 6 |
+
footer {
|
| 7 |
+
background: #111827;
|
| 8 |
+
color: white;
|
| 9 |
+
padding: 3rem 2rem;
|
| 10 |
+
text-align: center;
|
| 11 |
+
margin-top: auto;
|
| 12 |
+
border-top: 1px solid rgba(255, 255, 255, 0.1);
|
| 13 |
+
}
|
| 14 |
+
.footer-content {
|
| 15 |
+
max-width: 6xl;
|
| 16 |
+
margin: 0 auto;
|
| 17 |
+
}
|
| 18 |
+
.social-links {
|
| 19 |
+
display: flex;
|
| 20 |
+
justify-content: center;
|
| 21 |
+
gap: 1rem;
|
| 22 |
+
margin: 1rem 0;
|
| 23 |
+
}
|
| 24 |
+
.social-links a {
|
| 25 |
+
color: white;
|
| 26 |
+
transition: all 0.3s ease;
|
| 27 |
+
}
|
| 28 |
+
.social-links a:hover {
|
| 29 |
+
color: #8b5cf6;
|
| 30 |
+
transform: translateY(-2px);
|
| 31 |
+
}
|
| 32 |
+
.copyright {
|
| 33 |
+
margin-top: 2rem;
|
| 34 |
+
padding-top: 2rem;
|
| 35 |
+
border-top: 1px solid rgba(255, 255, 255, 0.1);
|
| 36 |
+
color: #9ca3af;
|
| 37 |
+
}
|
| 38 |
+
</style>
|
| 39 |
+
<footer>
|
| 40 |
+
<div class="footer-content">
|
| 41 |
+
<h3 class="text-xl font-bold mb-4">UnityLeadCapture 🎮</h3>
|
| 42 |
+
<p class="text-gray-400 mb-4">Conectando talentos Unity ao mercado de trabalho</p>
|
| 43 |
+
<div class="social-links">
|
| 44 |
+
<a href="#" aria-label="LinkedIn"><i data-feather="linkedin"></i></a>
|
| 45 |
+
<a href="#" aria-label="GitHub"><i data-feather="github"></i></a>
|
| 46 |
+
<a href="#" aria-label="Discord"><i data-feather="message-circle"></i></a>
|
| 47 |
+
<a href="#" aria-label="Instagram"><i data-feather="instagram"></i></a>
|
| 48 |
+
</div>
|
| 49 |
+
<div class="copyright">
|
| 50 |
+
<p>© 2024 UnityLeadCapture. Todos os direitos reservados.</p>
|
| 51 |
+
<p class="text-sm mt-2">Desenvolvido com ❤️ para a comunidade Unity</p>
|
| 52 |
+
</div>
|
| 53 |
+
</div>
|
| 54 |
+
</footer>
|
| 55 |
+
`;
|
| 56 |
+
}
|
| 57 |
+
}
|
| 58 |
+
|
| 59 |
+
customElements.define('custom-footer', CustomFooter);
|
components/navbar.js
ADDED
|
@@ -0,0 +1,102 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
class CustomNavbar extends HTMLElement {
|
| 2 |
+
connectedCallback() {
|
| 3 |
+
this.attachShadow({ mode: 'open' });
|
| 4 |
+
this.shadowRoot.innerHTML = `
|
| 5 |
+
<style>
|
| 6 |
+
nav {
|
| 7 |
+
background: rgba(17, 24, 39, 0.95);
|
| 8 |
+
backdrop-filter: blur(10px);
|
| 9 |
+
padding: 1rem 2rem;
|
| 10 |
+
display: flex;
|
| 11 |
+
justify-content: space-between;
|
| 12 |
+
align-items: center;
|
| 13 |
+
position: relative;
|
| 14 |
+
z-index: 50;
|
| 15 |
+
border-bottom: 1px solid rgba(255, 255, 255, 0.1);
|
| 16 |
+
}
|
| 17 |
+
.logo {
|
| 18 |
+
color: white;
|
| 19 |
+
font-weight: bold;
|
| 20 |
+
font-size: 1.5rem;
|
| 21 |
+
background: linear-gradient(45deg, #8b5cf6, #3b82f6);
|
| 22 |
+
background-clip: text;
|
| 23 |
+
-webkit-background-clip: text;
|
| 24 |
+
-webkit-text-fill-color: transparent;
|
| 25 |
+
}
|
| 26 |
+
ul {
|
| 27 |
+
display: flex;
|
| 28 |
+
gap: 2rem;
|
| 29 |
+
list-style: none;
|
| 30 |
+
margin: 0;
|
| 31 |
+
padding: 0;
|
| 32 |
+
}
|
| 33 |
+
a {
|
| 34 |
+
color: white;
|
| 35 |
+
text-decoration: none;
|
| 36 |
+
transition: all 0.3s ease;
|
| 37 |
+
font-weight: 500;
|
| 38 |
+
}
|
| 39 |
+
a:hover {
|
| 40 |
+
color: #8b5cf6;
|
| 41 |
+
transform: translateY(-2px);
|
| 42 |
+
}
|
| 43 |
+
.mobile-menu-btn {
|
| 44 |
+
display: none;
|
| 45 |
+
background: none;
|
| 46 |
+
border: none;
|
| 47 |
+
color: white;
|
| 48 |
+
cursor: pointer;
|
| 49 |
+
}
|
| 50 |
+
@media (max-width: 768px) {
|
| 51 |
+
ul {
|
| 52 |
+
display: none;
|
| 53 |
+
position: absolute;
|
| 54 |
+
top: 100%;
|
| 55 |
+
left: 0;
|
| 56 |
+
right: 0;
|
| 57 |
+
background: rgba(17, 24, 39, 0.98);
|
| 58 |
+
flex-direction: column;
|
| 59 |
+
padding: 1rem;
|
| 60 |
+
gap: 1rem;
|
| 61 |
+
}
|
| 62 |
+
ul.show {
|
| 63 |
+
display: flex;
|
| 64 |
+
}
|
| 65 |
+
.mobile-menu-btn {
|
| 66 |
+
display: block;
|
| 67 |
+
}
|
| 68 |
+
}
|
| 69 |
+
</style>
|
| 70 |
+
<nav>
|
| 71 |
+
<div class="logo">UnityLeadCapture 🎮</div>
|
| 72 |
+
<button class="mobile-menu-btn">
|
| 73 |
+
<i data-feather="menu"></i>
|
| 74 |
+
</button>
|
| 75 |
+
<ul>
|
| 76 |
+
<li><a href="/">Home</a></li>
|
| 77 |
+
<li><a href="/vagas.html">Vagas</a></li>
|
| 78 |
+
<li><a href="/sobre.html">Sobre</a></li>
|
| 79 |
+
<li><a href="/contato.html">Contato</a></li>
|
| 80 |
+
</ul>
|
| 81 |
+
</nav>
|
| 82 |
+
`;
|
| 83 |
+
|
| 84 |
+
// Add mobile menu functionality
|
| 85 |
+
const mobileMenuBtn = this.shadowRoot.querySelector('.mobile-menu-btn');
|
| 86 |
+
const menu = this.shadowRoot.querySelector('ul');
|
| 87 |
+
|
| 88 |
+
mobileMenuBtn.addEventListener('click', () => {
|
| 89 |
+
menu.classList.toggle('show');
|
| 90 |
+
feather.replace();
|
| 91 |
+
});
|
| 92 |
+
|
| 93 |
+
// Close mobile menu when clicking outside
|
| 94 |
+
document.addEventListener('click', (e) => {
|
| 95 |
+
if (!this.contains(e.target) && menu.classList.contains('show')) {
|
| 96 |
+
menu.classList.remove('show');
|
| 97 |
+
}
|
| 98 |
+
});
|
| 99 |
+
}
|
| 100 |
+
}
|
| 101 |
+
|
| 102 |
+
customElements.define('custom-navbar', CustomNavbar);
|
contato.html
ADDED
|
@@ -0,0 +1,106 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<!DOCTYPE html>
|
| 2 |
+
<html lang="pt-BR">
|
| 3 |
+
<head>
|
| 4 |
+
<meta charset="UTF-8">
|
| 5 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
| 6 |
+
<title>Contato - UnityLeadCapture</title>
|
| 7 |
+
<link rel="icon" type="image/x-icon" href="/static/favicon.ico">
|
| 8 |
+
<link rel="stylesheet" href="style.css">
|
| 9 |
+
<script src="https://cdn.tailwindcss.com"></script>
|
| 10 |
+
<script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
|
| 11 |
+
<script src="https://unpkg.com/feather-icons"></script>
|
| 12 |
+
</head>
|
| 13 |
+
<body class="min-h-screen flex flex-col bg-gray-900 text-white">
|
| 14 |
+
<custom-navbar></custom-navbar>
|
| 15 |
+
|
| 16 |
+
<main class="flex-grow py-12 px-4">
|
| 17 |
+
<div class="max-w-4xl mx-auto">
|
| 18 |
+
<h1 class="text-4xl md:text-5xl font-bold text-center mb-8 bg-gradient-to-r from-purple-400 to-blue-500 bg-clip-text text-transparent">
|
| 19 |
+
Entre em Contato 📞
|
| 20 |
+
</h1>
|
| 21 |
+
|
| 22 |
+
<div class="grid md:grid-cols-2 gap-8">
|
| 23 |
+
<!-- Contact Form -->
|
| 24 |
+
<div class="bg-gray-800 rounded-2xl p-6">
|
| 25 |
+
<h2 class="text-2xl font-bold mb-6">Envie uma Mensagem</h2>
|
| 26 |
+
<form class="space-y-4">
|
| 27 |
+
<div>
|
| 28 |
+
<input type="text" placeholder="Seu Nome" class="w-full px-4 py-3 rounded-lg bg-gray-700 text-white placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-purple-400">
|
| 29 |
+
</div>
|
| 30 |
+
<div>
|
| 31 |
+
<input type="email" placeholder="Seu E-mail" class="w-full px-4 py-3 rounded-lg bg-gray-700 text-white placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-purple-400">
|
| 32 |
+
</div>
|
| 33 |
+
<div>
|
| 34 |
+
<select class="w-full px-4 py-3 rounded-lg bg-gray-700 text-white focus:outline-none focus:ring-2 focus:ring-purple-400">
|
| 35 |
+
<option value="">Assunto</option>
|
| 36 |
+
<option value="parceria">Parceria Empresarial</option>
|
| 37 |
+
<option value="suporte">Suporte Técnico</option>
|
| 38 |
+
<option value="sugestao">Sugestão</option>
|
| 39 |
+
</select>
|
| 40 |
+
</div>
|
| 41 |
+
<div>
|
| 42 |
+
<textarea placeholder="Sua mensagem" rows="5" class="w-full px-4 py-3 rounded-lg bg-gray-700 text-white placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-purple-400"></textarea>
|
| 43 |
+
</div>
|
| 44 |
+
<button type="submit" class="w-full bg-gradient-to-r from-purple-500 to-blue-600 text-white py-3 px-6 rounded-lg font-bold hover:from-purple-600 hover:to-blue-700 transition-colors">
|
| 45 |
+
<i data-feather="send" class="inline mr-2"></i>
|
| 46 |
+
Enviar Mensagem
|
| 47 |
+
</button>
|
| 48 |
+
</form>
|
| 49 |
+
</div>
|
| 50 |
+
|
| 51 |
+
<!-- Contact Info -->
|
| 52 |
+
<div class="bg-gray-800 rounded-2xl p-6">
|
| 53 |
+
<h2 class="text-2xl font-bold mb-6">Informações de Contato</h2>
|
| 54 |
+
<div class="space-y-4">
|
| 55 |
+
<div class="flex items-center">
|
| 56 |
+
<div class="w-10 h-10 bg-purple-500 rounded-full flex items-center justify-center mr-4">
|
| 57 |
+
<i data-feather="mail" class="text-white"></i>
|
| 58 |
+
</div>
|
| 59 |
+
<div>
|
| 60 |
+
<p class="text-gray-400">E-mail</p>
|
| 61 |
+
<p class="font-bold">contato@unityleadcapture.com</p>
|
| 62 |
+
</div>
|
| 63 |
+
</div>
|
| 64 |
+
<div class="flex items-center">
|
| 65 |
+
<div class="w-10 h-10 bg-blue-500 rounded-full flex items-center justify-center mr-4">
|
| 66 |
+
<i data-feather="phone" class="text-white"></i>
|
| 67 |
+
</div>
|
| 68 |
+
<div>
|
| 69 |
+
<p class="text-gray-400">Telefone/WhatsApp</p>
|
| 70 |
+
<p class="font-bold">+55 (11) 99999-9999</p>
|
| 71 |
+
</div>
|
| 72 |
+
</div>
|
| 73 |
+
<div class="flex items-center">
|
| 74 |
+
<div class="w-10 h-10 bg-green-500 rounded-full flex items-center justify-center mr-4">
|
| 75 |
+
<i data-feather="message-circle" class="text-white"></i>
|
| 76 |
+
</div>
|
| 77 |
+
<div>
|
| 78 |
+
<p class="text-gray-400">Discord</p>
|
| 79 |
+
<p class="font-bold">unityleadcapture</p>
|
| 80 |
+
</div>
|
| 81 |
+
</div>
|
| 82 |
+
<div class="flex items-center">
|
| 83 |
+
<div class="w-10 h-10 bg-purple-600 rounded-full flex items-center justify-center mr-4">
|
| 84 |
+
<i data-feather="map-pin" class="text-white"></i>
|
| 85 |
+
</div>
|
| 86 |
+
<div>
|
| 87 |
+
<p class="text-gray-400">Endereço</p>
|
| 88 |
+
<p class="font-bold">São Paulo, SP - Brasil</p>
|
| 89 |
+
</div>
|
| 90 |
+
</div>
|
| 91 |
+
</div>
|
| 92 |
+
</div>
|
| 93 |
+
</div>
|
| 94 |
+
</div>
|
| 95 |
+
</main>
|
| 96 |
+
|
| 97 |
+
<custom-footer></custom-footer>
|
| 98 |
+
|
| 99 |
+
<script src="components/navbar.js"></script>
|
| 100 |
+
<script src="components/footer.js"></script>
|
| 101 |
+
<script src="script.js"></script>
|
| 102 |
+
<script>
|
| 103 |
+
feather.replace();
|
| 104 |
+
</script>
|
| 105 |
+
</body>
|
| 106 |
+
</html>
|
index.html
CHANGED
|
@@ -1,19 +1,131 @@
|
|
| 1 |
-
<!
|
| 2 |
-
<html>
|
| 3 |
-
|
| 4 |
-
|
| 5 |
-
|
| 6 |
-
|
| 7 |
-
|
| 8 |
-
|
| 9 |
-
|
| 10 |
-
|
| 11 |
-
|
| 12 |
-
|
| 13 |
-
|
| 14 |
-
|
| 15 |
-
|
| 16 |
-
|
| 17 |
-
|
| 18 |
-
|
| 19 |
-
</
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<!DOCTYPE html>
|
| 2 |
+
<html lang="pt-BR">
|
| 3 |
+
<head>
|
| 4 |
+
<meta charset="UTF-8">
|
| 5 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
| 6 |
+
<title>UnityLeadCapture - Conectando Devs Unity ao Mercado</title>
|
| 7 |
+
<link rel="icon" type="image/x-icon" href="/static/favicon.ico">
|
| 8 |
+
<link rel="stylesheet" href="style.css">
|
| 9 |
+
<script src="https://cdn.tailwindcss.com"></script>
|
| 10 |
+
<script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
|
| 11 |
+
<script src="https://unpkg.com/feather-icons"></script>
|
| 12 |
+
<script src="https://cdn.jsdelivr.net/npm/vanta@latest/dist/vanta.globe.min.js"></script>
|
| 13 |
+
</head>
|
| 14 |
+
<body class="min-h-screen flex flex-col">
|
| 15 |
+
<custom-navbar></custom-navbar>
|
| 16 |
+
|
| 17 |
+
<!-- Hero Section with Vanta.js -->
|
| 18 |
+
<section id="hero" class="relative flex-grow flex items-center justify-center py-20 px-4">
|
| 19 |
+
<div class="absolute inset-0 z-0" id="vanta-bg"></div>
|
| 20 |
+
<div class="relative z-10 max-w-4xl mx-auto text-center text-white">
|
| 21 |
+
<h1 class="text-4xl md:text-6xl font-bold mb-6 bg-gradient-to-r from-purple-400 to-blue-500 bg-clip-text text-transparent">
|
| 22 |
+
Sua Carreira em Unity Começa Aqui! 🚀
|
| 23 |
+
</h1>
|
| 24 |
+
<p class="text-xl md:text-2xl mb-8 text-gray-200">
|
| 25 |
+
Conectamos desenvolvedores Unity talentosos com as melhores oportunidades do mercado
|
| 26 |
+
</p>
|
| 27 |
+
<div class="bg-white/10 backdrop-blur-lg rounded-2xl p-8 max-w-2xl mx-auto">
|
| 28 |
+
<h2 class="text-2xl font-bold mb-6">Cadastre-se para Oportunidades Exclusivas</h2>
|
| 29 |
+
<form id="leadForm" class="space-y-4">
|
| 30 |
+
<div class="grid md:grid-cols-2 gap-4">
|
| 31 |
+
<input type="text" placeholder="Nome Completo" class="w-full px-4 py-3 rounded-lg bg-white/20 border border-white/30 text-white placeholder-gray-200 focus:outline-none focus:ring-2 focus:ring-purple-400">
|
| 32 |
+
<input type="email" placeholder="E-mail Profissional" class="w-full px-4 py-3 rounded-lg bg-white/20 border border-white/30 text-white placeholder-gray-200 focus:outline-none focus:ring-2 focus:ring-purple-400">
|
| 33 |
+
</div>
|
| 34 |
+
<div class="grid md:grid-cols-2 gap-4">
|
| 35 |
+
<input type="tel" placeholder="Telefone/WhatsApp" class="w-full px-4 py-3 rounded-lg bg-white/20 border border-white/30 text-white placeholder-gray-200 focus:outline-none focus:ring-2 focus:ring-purple-400">
|
| 36 |
+
<select class="w-full px-4 py-3 rounded-lg bg-white/20 border border-white/30 text-white focus:outline-none focus:ring-2 focus:ring-purple-400">
|
| 37 |
+
<option value="" class="text-gray-800">Nível de Experiência</option>
|
| 38 |
+
<option value="junior" class="text-gray-800">Júnior (0-2 anos)</option>
|
| 39 |
+
<option value="pleno" class="text-gray-800">Pleno (2-5 anos)</option>
|
| 40 |
+
<option value="senior" class="text-gray-800">Sênior (5+ anos)</option>
|
| 41 |
+
</select>
|
| 42 |
+
</div>
|
| 43 |
+
<textarea placeholder="Conte-nos sobre suas habilidades em Unity (C#, Shaders, Multiplayer, etc.)" rows="3" class="w-full px-4 py-3 rounded-lg bg-white/20 border border-white/30 text-white placeholder-gray-200 focus:outline-none focus:ring-2 focus:ring-purple-400"></textarea>
|
| 44 |
+
<button type="submit" class="w-full bg-gradient-to-r from-purple-500 to-blue-600 text-white py-4 px-6 rounded-lg font-bold text-lg hover:from-purple-600 hover:to-blue-700 transition-all duration-300 transform hover:scale-105">
|
| 45 |
+
<i data-feather="send" class="inline mr-2"></i>
|
| 46 |
+
Quero Oportunidades!
|
| 47 |
+
</button>
|
| 48 |
+
</form>
|
| 49 |
+
</div>
|
| 50 |
+
</div>
|
| 51 |
+
</section>
|
| 52 |
+
|
| 53 |
+
<!-- Benefits Section -->
|
| 54 |
+
<section class="py-20 bg-gray-900 text-white">
|
| 55 |
+
<div class="max-w-6xl mx-auto px-4">
|
| 56 |
+
<h2 class="text-3xl md:text-4xl font-bold text-center mb-16">Por que se Cadastrar? 🎯</h2>
|
| 57 |
+
<div class="grid md:grid-cols-3 gap-8">
|
| 58 |
+
<div class="text-center p-6 bg-gray-800 rounded-2xl hover:bg-gray-700 transition-all duration-300">
|
| 59 |
+
<div class="w-16 h-16 mx-auto mb-4 bg-purple-500 rounded-full flex items-center justify-center">
|
| 60 |
+
<i data-feather="briefcase" class="text-white"></i>
|
| 61 |
+
</div>
|
| 62 |
+
<h3 class="text-xl font-bold mb-4">Oportunidades Reais</h3>
|
| 63 |
+
<p class="text-gray-300">Acesso exclusivo a vagas em empresas que buscam talentos Unity</p>
|
| 64 |
+
</div>
|
| 65 |
+
<div class="text-center p-6 bg-gray-800 rounded-2xl hover:bg-gray-700 transition-all duration-300">
|
| 66 |
+
<div class="w-16 h-16 mx-auto mb-4 bg-blue-500 rounded-full flex items-center justify-center">
|
| 67 |
+
<i data-feather="trending-up" class="text-white"></i>
|
| 68 |
+
</div>
|
| 69 |
+
<h3 class="text-xl font-bold mb-4">Crescimento Profissional</h3>
|
| 70 |
+
<p class="text-gray-300">Mentoria e networking com desenvolvedores seniores da indústria</p>
|
| 71 |
+
</div>
|
| 72 |
+
<div class="text-center p-6 bg-gray-800 rounded-2xl hover:bg-gray-700 transition-all duration-300">
|
| 73 |
+
<div class="w-16 h-16 mx-auto mb-4 bg-green-500 rounded-full flex items-center justify-center">
|
| 74 |
+
<i data-feather="dollar-sign" class="text-white"></i>
|
| 75 |
+
</div>
|
| 76 |
+
<h3 class="text-xl font-bold mb-4">Remuneração Competitiva</h3>
|
| 77 |
+
<p class="text-gray-300">Salários alinhados com o mercado internacional de games</p>
|
| 78 |
+
</div>
|
| 79 |
+
</div>
|
| 80 |
+
</div>
|
| 81 |
+
</section>
|
| 82 |
+
|
| 83 |
+
<!-- Stats Section -->
|
| 84 |
+
<section class="py-20 bg-gradient-to-r from-purple-600 to-blue-700 text-white">
|
| 85 |
+
<div class="max-w-6xl mx-auto px-4">
|
| 86 |
+
<div class="grid md:grid-cols-4 gap-8 text-center">
|
| 87 |
+
<div>
|
| 88 |
+
<div class="text-4xl font-bold mb-2">500+</div>
|
| 89 |
+
<div class="text-gray-200">Devs Cadastrados</div>
|
| 90 |
+
</div>
|
| 91 |
+
<div>
|
| 92 |
+
<div class="text-4xl font-bold mb-2">150+</div>
|
| 93 |
+
<div class="text-gray-200">Empresas Parceiras</div>
|
| 94 |
+
</div>
|
| 95 |
+
<div>
|
| 96 |
+
<div class="text-4xl font-bold mb-2">89%</div>
|
| 97 |
+
<div class="text-gray-200">Taxa de Sucesso</div>
|
| 98 |
+
</div>
|
| 99 |
+
<div>
|
| 100 |
+
<div class="text-4xl font-bold mb-2">R$ 8K+</div>
|
| 101 |
+
<div class="text-gray-200">Salário Médio</div>
|
| 102 |
+
</div>
|
| 103 |
+
</div>
|
| 104 |
+
</div>
|
| 105 |
+
</section>
|
| 106 |
+
|
| 107 |
+
<custom-footer></custom-footer>
|
| 108 |
+
|
| 109 |
+
<script src="components/navbar.js"></script>
|
| 110 |
+
<script src="components/footer.js"></script>
|
| 111 |
+
<script src="script.js"></script>
|
| 112 |
+
<script>
|
| 113 |
+
feather.replace();
|
| 114 |
+
// Initialize Vanta.js
|
| 115 |
+
VANTA.GLOBE({
|
| 116 |
+
el: "#vanta-bg",
|
| 117 |
+
mouseControls: true,
|
| 118 |
+
touchControls: true,
|
| 119 |
+
gyroControls: false,
|
| 120 |
+
minHeight: 200.00,
|
| 121 |
+
minWidth: 200.00,
|
| 122 |
+
scale: 1.00,
|
| 123 |
+
scaleMobile: 1.00,
|
| 124 |
+
color: 0x7c3aed,
|
| 125 |
+
backgroundColor: 0x111827,
|
| 126 |
+
size: 1.00
|
| 127 |
+
});
|
| 128 |
+
</script>
|
| 129 |
+
<script src="https://huggingface.co/deepsite/deepsite-badge.js"></script>
|
| 130 |
+
</body>
|
| 131 |
+
</html>
|
script.js
ADDED
|
@@ -0,0 +1,90 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
// Shared JavaScript across all pages
|
| 2 |
+
console.log('UnityLeadCapture App loaded');
|
| 3 |
+
|
| 4 |
+
// Form submission handler
|
| 5 |
+
document.addEventListener('DOMContentLoaded', function() {
|
| 6 |
+
const leadForm = document.getElementById('leadForm');
|
| 7 |
+
|
| 8 |
+
if (leadForm) {
|
| 9 |
+
leadForm.addEventListener('submit', async function(e) {
|
| 10 |
+
e.preventDefault();
|
| 11 |
+
|
| 12 |
+
const formData = new FormData(leadForm);
|
| 13 |
+
const data = {
|
| 14 |
+
name: formData.get('name') || leadForm.querySelector('input[type="text"]').value,
|
| 15 |
+
email: formData.get('email') || leadForm.querySelector('input[type="email"]').value,
|
| 16 |
+
phone: formData.get('phone') || leadForm.querySelector('input[type="tel"]').value,
|
| 17 |
+
experience: formData.get('experience') || leadForm.querySelector('select').value,
|
| 18 |
+
skills: formData.get('skills') || leadForm.querySelector('textarea').value
|
| 19 |
+
};
|
| 20 |
+
|
| 21 |
+
// Simulate API call to backend
|
| 22 |
+
try {
|
| 23 |
+
const submitBtn = leadForm.querySelector('button[type="submit"]');
|
| 24 |
+
const originalText = submitBtn.innerHTML;
|
| 25 |
+
|
| 26 |
+
// Show loading state
|
| 27 |
+
submitBtn.innerHTML = '<i data-feather="loader" class="animate-spin inline mr-2"></i>Processando...';
|
| 28 |
+
feather.replace();
|
| 29 |
+
|
| 30 |
+
// Simulate API delay
|
| 31 |
+
await new Promise(resolve => setTimeout(resolve, 2000));
|
| 32 |
+
|
| 33 |
+
// Show success message
|
| 34 |
+
showSuccessMessage('Cadastro realizado com sucesso! Em breve entraremos em contato com oportunidades exclusivas. 🎮');
|
| 35 |
+
|
| 36 |
+
// Reset form
|
| 37 |
+
leadForm.reset();
|
| 38 |
+
submitBtn.innerHTML = originalText;
|
| 39 |
+
feather.replace();
|
| 40 |
+
|
| 41 |
+
} catch (error) {
|
| 42 |
+
console.error('Error submitting form:', error);
|
| 43 |
+
alert('Erro ao processar cadastro. Tente novamente.');
|
| 44 |
+
}
|
| 45 |
+
});
|
| 46 |
+
}
|
| 47 |
+
});
|
| 48 |
+
|
| 49 |
+
// Show success message
|
| 50 |
+
function showSuccessMessage(message) {
|
| 51 |
+
const existingMessage = document.querySelector('.success-message');
|
| 52 |
+
if (existingMessage) {
|
| 53 |
+
existingMessage.remove();
|
| 54 |
+
}
|
| 55 |
+
|
| 56 |
+
const successDiv = document.createElement('div');
|
| 57 |
+
successDiv.className = 'success-message fixed top-4 right-4 bg-green-500 text-white p-4 rounded-lg shadow-lg z-50 max-w-sm';
|
| 58 |
+
successDiv.innerHTML = `
|
| 59 |
+
<div class="flex items-center">
|
| 60 |
+
<i data-feather="check-circle" class="mr-2"></i>
|
| 61 |
+
<span>${message}</span>
|
| 62 |
+
</div>
|
| 63 |
+
`;
|
| 64 |
+
|
| 65 |
+
document.body.appendChild(successDiv);
|
| 66 |
+
feather.replace();
|
| 67 |
+
|
| 68 |
+
// Remove message after 5 seconds
|
| 69 |
+
setTimeout(() => {
|
| 70 |
+
successDiv.remove();
|
| 71 |
+
}, 5000);
|
| 72 |
+
}
|
| 73 |
+
|
| 74 |
+
// Initialize tooltips and other interactive elements
|
| 75 |
+
function initInteractiveElements() {
|
| 76 |
+
// Add hover effects to benefit cards
|
| 77 |
+
const benefitCards = document.querySelectorAll('.bg-gray-800');
|
| 78 |
+
benefitCards.forEach(card => {
|
| 79 |
+
card.addEventListener('mouseenter', () => {
|
| 80 |
+
card.style.transform = 'translateY(-5px)';
|
| 81 |
+
});
|
| 82 |
+
|
| 83 |
+
card.addEventListener('mouseleave', () => {
|
| 84 |
+
card.style.transform = 'translateY(0)';
|
| 85 |
+
});
|
| 86 |
+
});
|
| 87 |
+
}
|
| 88 |
+
|
| 89 |
+
// Call initialization when DOM is loaded
|
| 90 |
+
document.addEventListener('DOMContentLoaded', initInteractiveElements);
|
sobre.html
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<!DOCTYPE html>
|
| 2 |
+
<html lang="pt-BR">
|
| 3 |
+
<head>
|
| 4 |
+
<meta charset="UTF-8">
|
| 5 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
| 6 |
+
<title>Sobre - UnityLeadCapture</title>
|
| 7 |
+
<link rel="icon" type="image/x-icon" href="/static/favicon.ico">
|
| 8 |
+
<link rel="stylesheet" href="style.css">
|
| 9 |
+
<script src="https://cdn.tailwindcss.com"></script>
|
| 10 |
+
<script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
|
| 11 |
+
<script src="https://unpkg.com/feather-icons"></script>
|
| 12 |
+
</head>
|
| 13 |
+
<body class="min-h-screen flex flex-col bg-gray-900 text-white">
|
| 14 |
+
<custom-navbar></custom-navbar>
|
| 15 |
+
|
| 16 |
+
<main class="flex-grow py-12 px-4">
|
| 17 |
+
<div class="max-w-4xl mx-auto">
|
| 18 |
+
<h1 class="text-4xl md:text-5xl font-bold text-center mb-8 bg-gradient-to-r from-purple-400 to-blue-500 bg-clip-text text-transparent">
|
| 19 |
+
Sobre o UnityLeadCapture 🎮
|
| 20 |
+
</h1>
|
| 21 |
+
|
| 22 |
+
<div class="bg-gray-800 rounded-2xl p-8 mb-8">
|
| 23 |
+
<h2 class="text-2xl font-bold mb-4">Nossa Missão</h2>
|
| 24 |
+
<p class="text-gray-300 mb-6">
|
| 25 |
+
O UnityLeadCapture nasceu da necessidade de conectar desenvolvedores Unity talentosos
|
| 26 |
+
com empresas que buscam profissionais qualificados no mercado brasileiro e internacional.
|
| 27 |
+
</p>
|
| 28 |
+
<p class="text-gray-300">
|
| 29 |
+
Acreditamos que o Brasil possui um enorme potencial na indústria de games e
|
| 30 |
+
nossa plataforma é a ponte que faltava entre o talento e a oportunidade.
|
| 31 |
+
</p>
|
| 32 |
+
</div>
|
| 33 |
+
|
| 34 |
+
<div class="grid md:grid-cols-2 gap-8">
|
| 35 |
+
<div class="bg-gray-800 rounded-2xl p-6">
|
| 36 |
+
<div class="w-12 h-12 bg-purple-500 rounded-full flex items-center justify-center mb-4">
|
| 37 |
+
<i data-feather="target" class="text-white"></i>
|
| 38 |
+
</div>
|
| 39 |
+
<h3 class="text-xl font-bold mb-4">Tecnologia</h3>
|
| 40 |
+
<p class="text-gray-300">
|
| 41 |
+
Nossa plataforma utiliza as mais modernas tecnologias web com backend robusto
|
| 42 |
+
e banco de dados MySQL para garantir performance e segurança dos dados.
|
| 43 |
+
</p>
|
| 44 |
+
</div>
|
| 45 |
+
|
| 46 |
+
<div class="bg-gray-800 rounded-2xl p-6">
|
| 47 |
+
<div class="w-12 h-12 bg-blue-500 rounded-full flex items-center justify-center mb-4">
|
| 48 |
+
<i data-feather="users" class="text-white"></i>
|
| 49 |
+
</div>
|
| 50 |
+
<h3 class="text-xl font-bold mb-4">Comunidade</h3>
|
| 51 |
+
<p class="text-gray-300">
|
| 52 |
+
Mais do que uma plataforma, somos uma comunidade de desenvolvedores
|
| 53 |
+
apaixonados por Unity e tecnologia.
|
| 54 |
+
</p>
|
| 55 |
+
</div>
|
| 56 |
+
</div>
|
| 57 |
+
|
| 58 |
+
<!-- Team Section -->
|
| 59 |
+
<div class="mt-12">
|
| 60 |
+
<h2 class="text-3xl font-bold text-center mb-8">Nossa Equipe 👥</h2>
|
| 61 |
+
<div class="grid md:grid-cols-3 gap-6">
|
| 62 |
+
<div class="text-center">
|
| 63 |
+
<img src="http://static.photos/technology/200x200/1" alt="Fundador" class="w-24 h-24 rounded-full mx-auto mb-4">
|
| 64 |
+
<h4 class="font-bold">João Silva</h4>
|
| 65 |
+
<p class="text-gray-400 text-sm">Fundador & Unity Dev</p>
|
| 66 |
+
</div>
|
| 67 |
+
<div class="text-center">
|
| 68 |
+
<img src="http://static.photos/technology/200x200/2" alt="Co-fundadora" class="w-24 h-24 rounded-full mx-auto mb-4">
|
| 69 |
+
<h4 class="font-bold">Maria Santos</h4>
|
| 70 |
+
<p class="text-gray-400 text-sm">Co-fundadora & Backend</p>
|
| 71 |
+
</div>
|
| 72 |
+
<div class="text-center">
|
| 73 |
+
<img src="http://static.photos/technology/200x200/3" alt="Designer" class="w-24 h-24 rounded-full mx-auto mb-4">
|
| 74 |
+
<h4 class="font-bold">Pedro Costa</h4>
|
| 75 |
+
<p class="text-gray-400 text-sm">UX/UI Designer</p>
|
| 76 |
+
</div>
|
| 77 |
+
</div>
|
| 78 |
+
</div>
|
| 79 |
+
</div>
|
| 80 |
+
</main>
|
| 81 |
+
|
| 82 |
+
<custom-footer></custom-footer>
|
| 83 |
+
|
| 84 |
+
<script src="components/navbar.js"></script>
|
| 85 |
+
<script src="components/footer.js"></script>
|
| 86 |
+
<script src="script.js"></script>
|
| 87 |
+
<script>
|
| 88 |
+
feather.replace();
|
| 89 |
+
</script>
|
| 90 |
+
</body>
|
| 91 |
+
</html>
|
style.css
CHANGED
|
@@ -1,28 +1,83 @@
|
|
|
|
|
|
|
|
|
|
|
| 1 |
body {
|
| 2 |
-
|
| 3 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 4 |
}
|
| 5 |
|
| 6 |
-
|
| 7 |
-
|
| 8 |
-
|
| 9 |
}
|
| 10 |
|
| 11 |
-
|
| 12 |
-
|
| 13 |
-
font-size: 15px;
|
| 14 |
-
margin-bottom: 10px;
|
| 15 |
-
margin-top: 5px;
|
| 16 |
}
|
| 17 |
|
| 18 |
-
|
| 19 |
-
|
| 20 |
-
|
| 21 |
-
|
| 22 |
-
|
| 23 |
-
border-radius: 16px;
|
| 24 |
}
|
| 25 |
|
| 26 |
-
|
| 27 |
-
|
|
|
|
| 28 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/* Shared styles across all pages */
|
| 2 |
+
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
|
| 3 |
+
|
| 4 |
body {
|
| 5 |
+
font-family: 'Inter', sans-serif;
|
| 6 |
+
}
|
| 7 |
+
|
| 8 |
+
/* Custom scrollbar */
|
| 9 |
+
::-webkit-scrollbar {
|
| 10 |
+
width: 8px;
|
| 11 |
+
}
|
| 12 |
+
|
| 13 |
+
::-webkit-scrollbar-track {
|
| 14 |
+
background: #1f2937;
|
| 15 |
+
}
|
| 16 |
+
|
| 17 |
+
::-webkit-scrollbar-thumb {
|
| 18 |
+
background: #7c3aed;
|
| 19 |
+
border-radius: 4px;
|
| 20 |
+
}
|
| 21 |
+
|
| 22 |
+
::-webkit-scrollbar-thumb:hover {
|
| 23 |
+
background: #6d28d9;
|
| 24 |
}
|
| 25 |
|
| 26 |
+
/* Form animations */
|
| 27 |
+
.form-group {
|
| 28 |
+
transition: all 0.3s ease;
|
| 29 |
}
|
| 30 |
|
| 31 |
+
.form-group:focus-within {
|
| 32 |
+
transform: translateY(-2px);
|
|
|
|
|
|
|
|
|
|
| 33 |
}
|
| 34 |
|
| 35 |
+
/* Gradient text animation */
|
| 36 |
+
.gradient-text {
|
| 37 |
+
background: linear-gradient(45deg, #8b5cf6, #3b82f6, #06b6d4);
|
| 38 |
+
background-size: 200% 200%;
|
| 39 |
+
animation: gradient-shift 3s ease infinite;
|
|
|
|
| 40 |
}
|
| 41 |
|
| 42 |
+
@keyframes gradient-shift {
|
| 43 |
+
0%, 100% { background-position: 0% 50%; }
|
| 44 |
+
50% { background-position: 100% 50%; }
|
| 45 |
}
|
| 46 |
+
|
| 47 |
+
/* Floating animation */
|
| 48 |
+
.float-animation {
|
| 49 |
+
animation: float 6s ease-in-out infinite;
|
| 50 |
+
}
|
| 51 |
+
|
| 52 |
+
@keyframes float {
|
| 53 |
+
0%, 100% { transform: translateY(0px); }
|
| 54 |
+
50% { transform: translateY(-20px); }
|
| 55 |
+
}
|
| 56 |
+
|
| 57 |
+
/* Success message animation */
|
| 58 |
+
.success-message {
|
| 59 |
+
animation: slideIn 0.5s ease-out;
|
| 60 |
+
}
|
| 61 |
+
|
| 62 |
+
@keyframes slideIn {
|
| 63 |
+
from {
|
| 64 |
+
opacity: 0;
|
| 65 |
+
transform: translateY(-20px);
|
| 66 |
+
}
|
| 67 |
+
to {
|
| 68 |
+
opacity: 1;
|
| 69 |
+
transform: translateY(0);
|
| 70 |
+
}
|
| 71 |
+
}
|
| 72 |
+
|
| 73 |
+
/* Responsive adjustments */
|
| 74 |
+
@media (max-width: 768px) {
|
| 75 |
+
.hero-content {
|
| 76 |
+
padding: 2rem 1rem;
|
| 77 |
+
}
|
| 78 |
+
|
| 79 |
+
.stats-section .grid {
|
| 80 |
+
grid-template-columns: repeat(2, 1fr);
|
| 81 |
+
gap: 1rem;
|
| 82 |
+
}
|
| 83 |
+
}
|
vagas.html
ADDED
|
@@ -0,0 +1,155 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<!DOCTYPE html>
|
| 2 |
+
<html lang="pt-BR">
|
| 3 |
+
<head>
|
| 4 |
+
<meta charset="UTF-8">
|
| 5 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
| 6 |
+
<title>Vagas - UnityLeadCapture</title>
|
| 7 |
+
<link rel="icon" type="image/x-icon" href="/static/favicon.ico">
|
| 8 |
+
<link rel="stylesheet" href="style.css">
|
| 9 |
+
<script src="https://cdn.tailwindcss.com"></script>
|
| 10 |
+
<script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
|
| 11 |
+
<script src="https://unpkg.com/feather-icons"></script>
|
| 12 |
+
</head>
|
| 13 |
+
<body class="min-h-screen flex flex-col bg-gray-900 text-white">
|
| 14 |
+
<custom-navbar></custom-navbar>
|
| 15 |
+
|
| 16 |
+
<main class="flex-grow py-12 px-4">
|
| 17 |
+
<div class="max-w-6xl mx-auto">
|
| 18 |
+
<h1 class="text-4xl md:text-5xl font-bold text-center mb-4 bg-gradient-to-r from-purple-400 to-blue-500 bg-clip-text text-transparent">
|
| 19 |
+
Vagas Disponíveis 🎯
|
| 20 |
+
</h1>
|
| 21 |
+
<p class="text-xl text-center text-gray-300 mb-12">
|
| 22 |
+
Encontre as melhores oportunidades para desenvolvedores Unity
|
| 23 |
+
</p>
|
| 24 |
+
|
| 25 |
+
<!-- Jobs Filter -->
|
| 26 |
+
<div class="bg-gray-800 rounded-2xl p-6 mb-8">
|
| 27 |
+
<div class="grid md:grid-cols-4 gap-4">
|
| 28 |
+
<select class="px-4 py-3 rounded-lg bg-gray-700 text-white focus:outline-none focus:ring-2 focus:ring-purple-400">
|
| 29 |
+
<option value="">Todas as Experiências</option>
|
| 30 |
+
<option value="junior">Júnior</option>
|
| 31 |
+
<option value="pleno">Pleno</option>
|
| 32 |
+
<option value="senior">Sênior</option>
|
| 33 |
+
</select>
|
| 34 |
+
<select class="px-4 py-3 rounded-lg bg-gray-700 text-white focus:outline-none focus:ring-2 focus:ring-purple-400">
|
| 35 |
+
<option value="">Todos os Tipos</option>
|
| 36 |
+
<option value="fulltime">Tempo Integral</option>
|
| 37 |
+
<option value="parttime">Meio Período</option>
|
| 38 |
+
<option value="freelance">Freelance</option>
|
| 39 |
+
</select>
|
| 40 |
+
<select class="px-4 py-3 rounded-lg bg-gray-700 text-white focus:outline-none focus:ring-2 focus:ring-purple-400">
|
| 41 |
+
<option value="">Todas as Localizações</option>
|
| 42 |
+
<option value="remoto">Remoto</option>
|
| 43 |
+
<option value="sp">São Paulo</option>
|
| 44 |
+
<option value="rj">Rio de Janeiro</option>
|
| 45 |
+
</select>
|
| 46 |
+
<button class="bg-purple-500 text-white px-6 py-3 rounded-lg font-bold hover:bg-purple-600 transition-colors">
|
| 47 |
+
<i data-feather="filter" class="inline mr-2"></i>
|
| 48 |
+
Filtrar
|
| 49 |
+
</button>
|
| 50 |
+
</div>
|
| 51 |
+
</div>
|
| 52 |
+
|
| 53 |
+
<!-- Jobs List -->
|
| 54 |
+
<div id="jobsList" class="grid gap-6">
|
| 55 |
+
<!-- Jobs will be loaded dynamically -->
|
| 56 |
+
</div>
|
| 57 |
+
|
| 58 |
+
<!-- CTA Section -->
|
| 59 |
+
<div class="text-center mt-16 p-8 bg-gradient-to-r from-purple-600 to-blue-700 rounded-2xl">
|
| 60 |
+
<h2 class="text-2xl font-bold mb-4">Não encontrou a vaga ideal?</h2>
|
| 61 |
+
<p class="text-gray-200 mb-6">Cadastre-se e seja notificado sobre novas oportunidades!</p>
|
| 62 |
+
<a href="/" class="inline-block bg-white text-purple-600 px-8 py-4 rounded-lg font-bold hover:bg-gray-100 transition-colors">
|
| 63 |
+
<i data-feather="user-plus" class="inline mr-2"></i>
|
| 64 |
+
Fazer Cadastro
|
| 65 |
+
</a>
|
| 66 |
+
</div>
|
| 67 |
+
</div>
|
| 68 |
+
</main>
|
| 69 |
+
|
| 70 |
+
<custom-footer></custom-footer>
|
| 71 |
+
|
| 72 |
+
<script src="components/navbar.js"></script>
|
| 73 |
+
<script src="components/footer.js"></script>
|
| 74 |
+
<script src="script.js"></script>
|
| 75 |
+
<script>
|
| 76 |
+
feather.replace();
|
| 77 |
+
|
| 78 |
+
// Load jobs from API
|
| 79 |
+
async function loadJobs() {
|
| 80 |
+
try {
|
| 81 |
+
// Simulate API call - in real implementation, this would fetch from your backend
|
| 82 |
+
const jobs = [
|
| 83 |
+
{
|
| 84 |
+
id: 1,
|
| 85 |
+
title: "Desenvolvedor Unity Sênior",
|
| 86 |
+
company: "GameStudio BR",
|
| 87 |
+
location: "Remoto",
|
| 88 |
+
type: "fulltime",
|
| 89 |
+
experience: "senior",
|
| 90 |
+
salary: "R$ 12.000 - R$ 18.000",
|
| 91 |
+
description: "Procuramos desenvolvedor Unity sênior para liderar projetos de realidade virtual."
|
| 92 |
+
},
|
| 93 |
+
{
|
| 94 |
+
id: 2,
|
| 95 |
+
title: "Unity Developer Pleno",
|
| 96 |
+
company: "TechGames Inc",
|
| 97 |
+
location: "São Paulo, SP",
|
| 98 |
+
type: "fulltime",
|
| 99 |
+
experience: "pleno",
|
| 100 |
+
salary: "R$ 8.000 - R$ 12.000",
|
| 101 |
+
description: "Vaga para desenvolvedor Unity com experiência em multiplayer e otimização."
|
| 102 |
+
},
|
| 103 |
+
{
|
| 104 |
+
id: 3,
|
| 105 |
+
title: "Junior Unity Programmer",
|
| 106 |
+
company: "IndieDev Studio",
|
| 107 |
+
location: "Remoto",
|
| 108 |
+
type: "fulltime",
|
| 109 |
+
experience: "junior",
|
| 110 |
+
salary: "R$ 4.000 - R$ 6.000",
|
| 111 |
+
description: "Ótima oportunidade para quem está começando na carreira de desenvolvimento de games."
|
| 112 |
+
}
|
| 113 |
+
];
|
| 114 |
+
|
| 115 |
+
const jobsList = document.getElementById('jobsList');
|
| 116 |
+
jobsList.innerHTML = jobs.map(job => `
|
| 117 |
+
<div class="bg-gray-800 rounded-2xl p-6 hover:bg-gray-700 transition-all duration-300">
|
| 118 |
+
<div class="flex justify-between items-start mb-4">
|
| 119 |
+
<div>
|
| 120 |
+
<h3 class="text-xl font-bold">${job.title}</h3>
|
| 121 |
+
<p class="text-purple-400">${job.company} • ${job.location}</p>
|
| 122 |
+
</div>
|
| 123 |
+
<span class="bg-purple-500 text-white px-3 py-1 rounded-full text-sm">
|
| 124 |
+
${job.experience}
|
| 125 |
+
</span>
|
| 126 |
+
</div>
|
| 127 |
+
<p class="text-gray-300 mb-4">${job.description}</p>
|
| 128 |
+
<div class="flex justify-between items-center">
|
| 129 |
+
<span class="text-green-400 font-bold">${job.salary}</span>
|
| 130 |
+
<button class="bg-blue-500 text-white px-6 py-2 rounded-lg hover:bg-blue-600 transition-colors">
|
| 131 |
+
<i data-feather="send" class="inline mr-2"></i>
|
| 132 |
+
Candidatar-se
|
| 133 |
+
</button>
|
| 134 |
+
</div>
|
| 135 |
+
</div>
|
| 136 |
+
`).join('');
|
| 137 |
+
|
| 138 |
+
feather.replace();
|
| 139 |
+
|
| 140 |
+
} catch (error) {
|
| 141 |
+
console.error('Error loading jobs:', error);
|
| 142 |
+
document.getElementById('jobsList').innerHTML = `
|
| 143 |
+
<div class="text-center text-gray-400">
|
| 144 |
+
<i data-feather="alert-circle" class="w-12 h-12 mx-auto mb-4"></i>
|
| 145 |
+
<p>Erro ao carregar vagas. Tente novamente.</p>
|
| 146 |
+
`;
|
| 147 |
+
feather.replace();
|
| 148 |
+
}
|
| 149 |
+
}
|
| 150 |
+
|
| 151 |
+
// Load jobs when page is ready
|
| 152 |
+
document.addEventListener('DOMContentLoaded', loadJobs);
|
| 153 |
+
</script>
|
| 154 |
+
</body>
|
| 155 |
+
</html>
|