neon-trader-2077 / index.html
bybrawe's picture
Add 2 files
2970595 verified
raw
history blame
24.9 kB
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>NEON TRADER 2077</title>
<script src="https://cdn.tailwindcss.com"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
<style>
@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@400;700&family=Rajdhani:wght@300;500;700&display=swap');
:root {
--neon-pink: #ff2a6d;
--neon-blue: #05d9e8;
--neon-purple: #d300c5;
--dark-bg: #0d0221;
--darker-bg: #02010a;
}
body {
font-family: 'Rajdhani', sans-serif;
background-color: var(--dark-bg);
color: white;
overflow-x: hidden;
}
h1, h2, h3, .font-orbitron {
font-family: 'Orbitron', sans-serif;
}
.neon-text-pink {
color: var(--neon-pink);
text-shadow: 0 0 5px var(--neon-pink), 0 0 10px var(--neon-pink);
}
.neon-text-blue {
color: var(--neon-blue);
text-shadow: 0 0 5px var(--neon-blue), 0 0 10px var(--neon-blue);
}
.neon-border-pink {
border: 2px solid var(--neon-pink);
box-shadow: 0 0 10px var(--neon-pink), inset 0 0 10px var(--neon-pink);
}
.neon-border-blue {
border: 2px solid var(--neon-blue);
box-shadow: 0 0 10px var(--neon-blue), inset 0 0 10px var(--neon-blue);
}
.glow-pink {
animation: glow-pink 2s infinite alternate;
}
.glow-blue {
animation: glow-blue 2s infinite alternate;
}
@keyframes glow-pink {
from {
box-shadow: 0 0 5px var(--neon-pink);
}
to {
box-shadow: 0 0 20px var(--neon-pink);
}
}
@keyframes glow-blue {
from {
box-shadow: 0 0 5px var(--neon-blue);
}
to {
box-shadow: 0 0 20px var(--neon-blue);
}
}
.scanline {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(
to bottom,
rgba(255, 255, 255, 0) 0%,
rgba(255, 255, 255, 0.03) 50%,
rgba(255, 255, 255, 0) 100%
);
background-size: 100% 8px;
pointer-events: none;
animation: scanline 8s linear infinite;
}
@keyframes scanline {
0% {
background-position: 0 0;
}
100% {
background-position: 0 100vh;
}
}
.flicker {
animation: flicker 5s infinite alternate;
}
@keyframes flicker {
0%, 19%, 21%, 23%, 25%, 54%, 56%, 100% {
opacity: 1;
}
20%, 22%, 24%, 55% {
opacity: 0.5;
}
}
.stock-up {
color: #00ff00;
text-shadow: 0 0 5px #00ff00;
}
.stock-down {
color: #ff0000;
text-shadow: 0 0 5px #ff0000;
}
.terminal-text {
font-family: 'Courier New', monospace;
color: var(--neon-blue);
text-shadow: 0 0 5px var(--neon-blue);
}
.grid-bg {
background-image:
linear-gradient(rgba(5, 217, 232, 0.1) 1px, transparent 1px),
linear-gradient(90deg, rgba(5, 217, 232, 0.1) 1px, transparent 1px);
background-size: 20px 20px;
}
.cyber-button {
transition: all 0.3s;
position: relative;
overflow: hidden;
}
.cyber-button:hover {
transform: translateY(-2px);
box-shadow: 0 0 15px currentColor;
}
.cyber-button::before {
content: '';
position: absolute;
top: 0;
left: -100%;
width: 100%;
height: 100%;
background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
transition: all 0.5s;
}
.cyber-button:hover::before {
left: 100%;
}
.pulse {
animation: pulse 2s infinite;
}
@keyframes pulse {
0% {
opacity: 0.7;
}
50% {
opacity: 1;
}
100% {
opacity: 0.7;
}
}
</style>
</head>
<body class="min-h-screen grid-bg">
<div class="scanline"></div>
<!-- Header -->
<header class="bg-black bg-opacity-80 border-b border-neon-blue py-4 px-6 flex justify-between items-center neon-border-blue">
<div class="flex items-center space-x-4">
<div class="w-12 h-12 bg-neon-pink rounded-full glow-pink flex items-center justify-center">
<i class="fas fa-chart-line text-xl text-white"></i>
</div>
<h1 class="text-3xl font-bold neon-text-pink flicker">NEON TRADER 2077</h1>
</div>
<div class="flex items-center space-x-6">
<div class="text-center">
<p class="text-xs text-gray-400">CRYPTO TIME</p>
<p id="current-time" class="text-xl neon-text-blue font-orbitron">23:59:45</p>
</div>
<div class="text-center">
<p class="text-xs text-gray-400">NET WORTH</p>
<p class="text-xl neon-text-pink font-orbitron">₡ 1,245,890</p>
</div>
<div class="w-10 h-10 rounded-full bg-neon-blue bg-opacity-30 flex items-center justify-center neon-border-blue cursor-pointer hover:bg-opacity-50 transition">
<i class="fas fa-user neon-text-blue"></i>
</div>
</div>
</header>
<main class="container mx-auto px-4 py-6">
<div class="grid grid-cols-1 lg:grid-cols-4 gap-6">
<!-- Left sidebar -->
<div class="lg:col-span-1 space-y-6">
<!-- Portfolio Summary -->
<div class="bg-black bg-opacity-70 p-4 rounded-lg neon-border-pink">
<h2 class="text-xl neon-text-pink font-orbitron mb-4">PORTFOLIO</h2>
<div class="space-y-3">
<div class="flex justify-between items-center">
<span class="text-gray-400">Total Value:</span>
<span class="neon-text-blue font-bold">₡ 1,245,890</span>
</div>
<div class="flex justify-between items-center">
<span class="text-gray-400">Day Change:</span>
<span class="text-green-400 font-bold">+₡ 24,560 (+2.01%)</span>
</div>
<div class="flex justify-between items-center">
<span class="text-gray-400">Buying Power:</span>
<span class="neon-text-blue font-bold">₡ 245,890</span>
</div>
</div>
<div class="mt-6">
<h3 class="text-sm text-gray-400 mb-2">ASSET DISTRIBUTION</h3>
<div class="h-2 w-full bg-gray-800 rounded-full mb-2">
<div class="h-2 rounded-full bg-gradient-to-r from-neon-pink to-neon-purple" style="width: 65%;"></div>
</div>
<div class="flex justify-between text-xs">
<span class="neon-text-pink">Stocks (65%)</span>
<span class="neon-text-blue">Crypto (35%)</span>
</div>
</div>
</div>
<!-- Quick Actions -->
<div class="bg-black bg-opacity-70 p-4 rounded-lg neon-border-blue">
<h2 class="text-xl neon-text-blue font-orbitron mb-4">QUICK ACTIONS</h2>
<div class="grid grid-cols-2 gap-3">
<button class="cyber-button bg-neon-pink bg-opacity-20 text-white py-2 px-3 rounded-md neon-border-pink neon-text-pink">
<i class="fas fa-arrow-up mr-2"></i> Buy
</button>
<button class="cyber-button bg-red-500 bg-opacity-20 text-white py-2 px-3 rounded-md border border-red-500 text-red-400">
<i class="fas fa-arrow-down mr-2"></i> Sell
</button>
<button class="cyber-button bg-neon-blue bg-opacity-20 text-white py-2 px-3 rounded-md neon-border-blue neon-text-blue">
<i class="fas fa-exchange-alt mr-2"></i> Trade
</button>
<button class="cyber-button bg-purple-500 bg-opacity-20 text-white py-2 px-3 rounded-md border border-purple-500 text-purple-400">
<i class="fas fa-coins mr-2"></i> Crypto
</button>
</div>
</div>
<!-- News Feed -->
<div class="bg-black bg-opacity-70 p-4 rounded-lg neon-border-pink">
<h2 class="text-xl neon-text-pink font-orbitron mb-4">CYBER NEWS</h2>
<div class="space-y-4">
<div class="border-b border-gray-800 pb-3">
<p class="text-xs text-gray-400">10:45 AM</p>
<p class="text-sm neon-text-blue">Arasaka Corp announces breakthrough in neural interface tech</p>
</div>
<div class="border-b border-gray-800 pb-3">
<p class="text-xs text-gray-400">09:30 AM</p>
<p class="text-sm neon-text-blue">Militech wins major defense contract</p>
</div>
<div class="border-b border-gray-800 pb-3">
<p class="text-xs text-gray-400">08:15 AM</p>
<p class="text-sm neon-text-blue">NetWatch reports surge in rogue AIs</p>
</div>
<div class="pb-2">
<p class="text-xs text-gray-400">07:00 AM</p>
<p class="text-sm neon-text-blue">Night City stock exchange hits record high</p>
</div>
</div>
</div>
</div>
<!-- Main Content -->
<div class="lg:col-span-3 space-y-6">
<!-- Market Overview -->
<div class="bg-black bg-opacity-70 p-4 rounded-lg neon-border-blue">
<div class="flex justify-between items-center mb-4">
<h2 class="text-xl neon-text-blue font-orbitron">MARKET OVERVIEW</h2>
<div class="flex space-x-2">
<button class="cyber-button bg-gray-800 text-white text-xs py-1 px-3 rounded-md">STOCKS</button>
<button class="cyber-button bg-gray-800 text-white text-xs py-1 px-3 rounded-md">CRYPTO</button>
<button class="cyber-button bg-gray-800 text-white text-xs py-1 px-3 rounded-md">FUTURES</button>
</div>
</div>
<div class="grid grid-cols-2 md:grid-cols-4 gap-4 mb-6">
<div class="bg-gray-900 bg-opacity-50 p-3 rounded-lg border border-gray-800">
<p class="text-xs text-gray-400">NIGHT CITY INDEX</p>
<p class="text-xl neon-text-blue font-orbitron">4,328.76</p>
<p class="text-sm text-green-400">+42.18 (0.98%)</p>
</div>
<div class="bg-gray-900 bg-opacity-50 p-3 rounded-lg border border-gray-800">
<p class="text-xs text-gray-400">TECH SECTOR</p>
<p class="text-xl neon-text-pink font-orbitron">1,845.32</p>
<p class="text-sm text-green-400">+28.45 (1.56%)</p>
</div>
<div class="bg-gray-900 bg-opacity-50 p-3 rounded-lg border border-gray-800">
<p class="text-xs text-gray-400">BTC/USD</p>
<p class="text-xl neon-text-blue font-orbitron">₡ 42,876</p>
<p class="text-sm text-red-400">-1,245.76 (2.82%)</p>
</div>
<div class="bg-gray-900 bg-opacity-50 p-3 rounded-lg border border-gray-800">
<p class="text-xs text-gray-400">ETH/USD</p>
<p class="text-xl neon-text-pink font-orbitron">₡ 2,876</p>
<p class="text-sm text-green-400">+45.32 (1.60%)</p>
</div>
</div>
<!-- Stock Chart -->
<div class="h-64 bg-gray-900 bg-opacity-50 rounded-lg mb-4 relative overflow-hidden">
<!-- This would be a chart in a real app - using a placeholder here -->
<div class="absolute inset-0 flex items-center justify-center">
<div class="terminal-text text-opacity-50">[ LIVE PRICE CHART ]</div>
</div>
<div class="absolute bottom-0 left-0 right-0 h-1 bg-gradient-to-r from-neon-pink via-neon-blue to-neon-purple"></div>
</div>
<div class="flex justify-between items-center">
<div class="flex space-x-2">
<button class="cyber-button bg-gray-800 text-white text-xs py-1 px-3 rounded-md">1D</button>
<button class="cyber-button bg-neon-blue bg-opacity-20 text-white text-xs py-1 px-3 rounded-md neon-border-blue">1W</button>
<button class="cyber-button bg-gray-800 text-white text-xs py-1 px-3 rounded-md">1M</button>
<button class="cyber-button bg-gray-800 text-white text-xs py-1 px-3 rounded-md">1Y</button>
</div>
<div class="text-xs text-gray-400">
<span class="neon-text-blue">ARAS</span> |
<span class="neon-text-pink">MILT</span> |
<span class="neon-text-blue">KANG</span> |
<span class="neon-text-pink">NETW</span>
</div>
</div>
</div>
<!-- Watchlist -->
<div class="bg-black bg-opacity-70 p-4 rounded-lg neon-border-pink">
<div class="flex justify-between items-center mb-4">
<h2 class="text-xl neon-text-pink font-orbitron">WATCHLIST</h2>
<div class="relative">
<input type="text" placeholder="Search assets..." class="bg-gray-900 bg-opacity-50 text-white text-sm py-1 px-3 pr-8 rounded-md border border-gray-800 focus:outline-none focus:border-neon-blue">
<i class="fas fa-search absolute right-3 top-2 text-gray-500"></i>
</div>
</div>
<div class="overflow-x-auto">
<table class="w-full">
<thead>
<tr class="text-left text-sm text-gray-400 border-b border-gray-800">
<th class="pb-2">SYMBOL</th>
<th class="pb-2">PRICE</th>
<th class="pb-2">CHANGE</th>
<th class="pb-2">% CHANGE</th>
<th class="pb-2">VOLUME</th>
<th class="pb-2">ACTIONS</th>
</tr>
</thead>
<tbody id="stock-table">
<!-- Stock data will be inserted here by JavaScript -->
</tbody>
</table>
</div>
</div>
</div>
</div>
</main>
<!-- Footer -->
<footer class="bg-black bg-opacity-80 border-t border-neon-blue py-3 px-6 neon-border-blue mt-6">
<div class="flex justify-between items-center">
<div class="flex items-center space-x-4">
<div class="flex items-center space-x-1">
<div class="w-2 h-2 rounded-full bg-green-500 pulse"></div>
<span class="text-xs text-gray-400">CONNECTED</span>
</div>
<span class="text-xs text-gray-400">LATENCY: <span class="neon-text-blue">28ms</span></span>
<span class="text-xs text-gray-400">API: <span class="neon-text-pink">v3.2.7</span></span>
</div>
<div class="text-xs text-gray-400">
<span class="neon-text-blue">NEON TRADER 2077</span> | SECURE TRADING TERMINAL | <span class="neon-text-pink">ENCRYPTED</span>
</div>
</div>
</footer>
<script>
// Update current time
function updateTime() {
const now = new Date();
const timeString = now.toLocaleTimeString('en-US', {hour12: false});
document.getElementById('current-time').textContent = timeString;
}
setInterval(updateTime, 1000);
updateTime();
// Sample stock data
const stocks = [
{ symbol: 'ARAS', name: 'Arasaka Corp', price: 245.67, change: 3.45, percentChange: 1.42, volume: '4.5M' },
{ symbol: 'MILT', name: 'Militech Intl', price: 187.32, change: -2.34, percentChange: -1.23, volume: '3.2M' },
{ symbol: 'KANG', name: 'Kang Tao Arms', price: 92.45, change: 1.87, percentChange: 2.06, volume: '1.8M' },
{ symbol: 'NETW', name: 'NetWatch', price: 156.78, change: 5.67, percentChange: 3.75, volume: '2.7M' },
{ symbol: 'BIOT', name: 'Biotechnica', price: 78.23, change: -0.45, percentChange: -0.57, volume: '1.2M' },
{ symbol: 'TRAU', name: 'Trauma Team', price: 134.56, change: 2.34, percentChange: 1.77, volume: '2.1M' },
{ symbol: 'ZETT', name: 'Zetatech', price: 67.89, change: -1.23, percentChange: -1.78, volume: '3.5M' },
{ symbol: 'BTC', name: 'Bitcoin', price: 42876, change: -1245, percentChange: -2.82, volume: '24.5K' },
{ symbol: 'ETH', name: 'Ethereum', price: 2876, change: 45, percentChange: 1.60, volume: '18.7K' }
];
// Render stock table
function renderStockTable() {
const tableBody = document.getElementById('stock-table');
tableBody.innerHTML = '';
stocks.forEach(stock => {
const isCrypto = stock.symbol === 'BTC' || stock.symbol === 'ETH';
const row = document.createElement('tr');
row.className = 'border-b border-gray-800 hover:bg-gray-900 hover:bg-opacity-50';
const changeClass = stock.change >= 0 ? 'stock-up' : 'stock-down';
const changeSymbol = stock.change >= 0 ? '+' : '';
row.innerHTML = `
<td class="py-3">
<div class="font-bold ${isCrypto ? 'neon-text-blue' : 'neon-text-pink'}">${stock.symbol}</div>
<div class="text-xs text-gray-400">${stock.name}</div>
</td>
<td class="py-3 font-orbitron">₡ ${stock.price.toLocaleString()}</td>
<td class="py-3 font-orbitron ${changeClass}">${changeSymbol}${stock.change}</td>
<td class="py-3 font-orbitron ${changeClass}">${changeSymbol}${stock.percentChange}%</td>
<td class="py-3 text-gray-400">${stock.volume}</td>
<td class="py-3">
<div class="flex space-x-2">
<button class="cyber-button bg-green-900 bg-opacity-20 text-green-400 text-xs py-1 px-2 rounded border border-green-500">
<i class="fas fa-arrow-up mr-1"></i> Buy
</button>
<button class="cyber-button bg-red-900 bg-opacity-20 text-red-400 text-xs py-1 px-2 rounded border border-red-500">
<i class="fas fa-arrow-down mr-1"></i> Sell
</button>
</div>
</td>
`;
tableBody.appendChild(row);
});
}
renderStockTable();
// Simulate stock price changes
function simulateMarket() {
stocks.forEach(stock => {
// Random price change between -2% and +2%
const changePercent = (Math.random() * 4 - 2) / 100;
const newPrice = stock.price * (1 + changePercent);
const change = newPrice - stock.price;
const percentChange = (change / stock.price) * 100;
stock.price = parseFloat(newPrice.toFixed(2));
stock.change = parseFloat(change.toFixed(2));
stock.percentChange = parseFloat(percentChange.toFixed(2));
// Random volume change
const volumeNum = parseFloat(stock.volume.replace(/[MK]/g, ''));
const volumeChange = Math.random() * 0.2 - 0.1; // -10% to +10%
let newVolume = volumeNum * (1 + volumeChange);
if (stock.volume.includes('M')) {
newVolume = newVolume.toFixed(1) + 'M';
} else {
newVolume = Math.round(newVolume) + 'K';
}
stock.volume = newVolume;
});
renderStockTable();
}
setInterval(simulateMarket, 5000);
// Add cyberpunk terminal effect to inputs
document.querySelectorAll('input').forEach(input => {
input.addEventListener('focus', () => {
input.classList.add('neon-border-blue');
input.classList.remove('border-gray-800');
});
input.addEventListener('blur', () => {
input.classList.remove('neon-border-blue');
input.classList.add('border-gray-800');
});
});
// Add button hover effects
document.querySelectorAll('.cyber-button').forEach(button => {
button.addEventListener('mouseenter', () => {
const rect = button.getBoundingClientRect();
const x = event.clientX - rect.left;
const y = event.clientY - rect.top;
button.style.setProperty('--x', `${x}px`);
button.style.setProperty('--y', `${y}px`);
});
});
</script>
<p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - <a href="https://enzostvs-deepsite.hf.space?remix=bybrawe/neon-trader-2077" style="color: #fff;text-decoration: underline;" target="_blank" >🧬 Remix</a></p></body>
</html>