Html codes
184 subscribers
112 photos
15 videos
226 files
198 links
👋 Welcome to Html Codee
🚀 Here you’ll find mini tools, code snippets, and web tricks to grow fast.
🧩 Built with HTML, PHP, and smart ideas.
💌 Support: support@bestpage.x10.mx
🏁 If you don't walk today, run tomorrow.
Download Telegram
🌟 CSS Text Flicker Animation

Want to give your title that retro hacker screen vibe? Here’s a cool flicker animation in pure CSS:

<h1 class="flicker">Html_codee Hacks</h1>

<style>
body {
background: #000;
color: #0f0;
font-family: monospace;
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
margin: 0;
}

.flicker {
font-size: 2.5rem;
animation: flickerAnim 2s infinite;
}

@keyframes flickerAnim {
0%, 19%, 21%, 23%, 25%, 54%, 56%, 100% {
opacity: 1;
}
20%, 22%, 24%, 55% {
opacity: 0.1;
}
}
</style>


💡 Use it for headers, hacker intros, or tech-themed pages.

📡 Stay tuned to @Html_codee for more motion-powered CSS gems!

#css #animation #textfx #frontend #htmlcodee #retro
🚀 Top 5 New & Useful HTML Tools in 2025!
Supercharge your web dev projects with these gems 🔧💡

1. 🧩 HTMX (2025 Update)
Write less JavaScript! Use just HTML attributes.
👉 htmx.org

2. 🎨 Open Props
Modern CSS variables you can plug into any project.
👉 open-props.style

3. 🧪 WebContainers by StackBlitz
Run Node.js in the browser with just HTML.
👉 stackblitz.com/webcontainers

4. 📦 IconBuddy 2.0
Access 250,000+ SVG icons with ease.
👉 iconbuddy.app

5. 📱 Responsive Viewer Tools
Test your HTML on all screen sizes at once.
Try: Responsively App or Chrome Multi-screen View

Save this post and follow @Html_codee for daily HTML/CSS/JS tips!
🗨️ Which tool is your favorite?
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>TRX Wallet Creator</title>
<script src="https://cdn.jsdelivr.net/npm/tronweb/dist/TronWeb.min.js"></script>
<style>
body {
font-family: Arial, sans-serif;
background: #0b0c10;
color: #fff;
display: flex;
flex-direction: column;
align-items: center;
padding: 30px;
}
.wallet-box {
background: #1f2833;
padding: 20px;
border-radius: 10px;
width: 100%;
max-width: 500px;
box-shadow: 0 0 10px #45a29e;
}
button {
background: #66fcf1;
border: none;
color: #0b0c10;
padding: 10px 20px;
margin: 10px 0;
font-size: 16px;
cursor: pointer;
border-radius: 5px;
}
input {
width: 100%;
padding: 10px;
margin-top: 5px;
background: #0b0c10;
color: #66fcf1;
border: 1px solid #66fcf1;
border-radius: 5px;
font-family: monospace;
}
label {
margin-top: 15px;
display: block;
}
</style>
</head>
<body>

<h1>🚀 TRX Wallet Creator</h1>
<div class="wallet-box">
<button onclick="generateWallet()">Generate New Wallet</button>

<label>TRX Address:
<input type="text" id="address" readonly>
</label>

<label>Private Key:
<input type="text" id="privateKey" readonly>
</label>

<label>Public Key:
<input type="text" id="publicKey" readonly>
</label>

<button onclick="copyAll()">📋 Copy All</button>
</div>

<script>
async function generateWallet() {
const tronWeb = new TronWeb({
fullHost: 'https://api.trongrid.io'
});

const account = await tronWeb.createAccount();

document.getElementById("address").value = account.address.base58;
document.getElementById("privateKey").value = account.privateKey;
document.getElementById("publicKey").value = account.publicKey;
}

function copyAll() {
const text = `
TRX Address: ${document.getElementById("address").value}
Private Key: ${document.getElementById("privateKey").value}
Public Key: ${document.getElementById("publicKey").value}
`.trim();

navigator.clipboard.writeText(text).then(() => {
alert("Copied to clipboard!");
});
}
</script>
</body>
</html>
🎮 CSS Game Button Pulse + Hover Glow

Level up your game UI or call-to-action buttons with this combo of pulse + hover glow effect — all in CSS!

<button class="pulse-button">Start Game</button>

<style>
body {
background: #111;
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
margin: 0;
}

.pulse-button {
background: #28a745;
color: white;
padding: 1rem 2rem;
font-size: 1.2rem;
border: none;
border-radius: 10px;
cursor: pointer;
box-shadow: 0 0 0 rgba(40, 167, 69, 0.7);
animation: pulse 2s infinite;
transition: 0.3s ease;
}

.pulse-button:hover {
box-shadow: 0 0 15px #28a745, 0 0 30px #28a745;
transform: scale(1.05);
}

@keyframes pulse {
0% {
box-shadow: 0 0 0 0 rgba(40, 167, 69, 0.7);
}
70% {
box-shadow: 0 0 0 20px rgba(40, 167, 69, 0);
}
100% {
box-shadow: 0 0 0 0 rgba(40, 167, 69, 0);
}
}
</style>


🔥 This combo gives your button life — perfect for hero sections, dashboards, and game starts!

🎯 Follow @Html_codee for more stylish CSS tricks.

#css #animation #gameui #frontend #htmlcodee #creativecode
CodePen Blog
401: Outgoing Email

Hi!

We’re back!

Weird right? It’s been over 2 years.

We took a break after episode 400, not because we ran out of things to talk about, but because we were so focused on our CodePen 2.0 work, it got old not being able to discuss it yet. We’ll be talking plenty about that going forward. But CodePen has a ton of moving parts, so we’ll be talking about all of it.

This week we’ll be kicking off the podcast again talking about a huge and vital bit of CodePen infastructure: our email system. Outgoing email, that is. We get plenty of incoming email from y’all as well, but this is about the app itself sending email.

Timeline
* 00:06 We’re back!
* 01:22 Our transactional email system
* 05:21 Templating in Postmark
* 08:31 Hitting APIs to send emails
* 10:23 Building a sponsored email
* 17:20 Marie’s Monday morning routine
* 24:19 Analytics and metrics
* 26:55 Dealing with large images
* 30:12 MGML framework for email
Links
* Postmark
* SparkPost
* Cloudflare R2
* MJML
* BuySellAds
🔮 CSS Magic Text Border Animation

Make your text pop with this mesmerizing animated border effect — no JavaScript needed!

<h2 class="magic-border">Html_codee Magic</h2>

<style>
body {
background: #000;
display: flex;
align-items: center;
justify-content: center;
height: 100vh;
margin: 0;
}

.magic-border {
font-size: 2.5rem;
color: white;
padding: 1rem 2rem;
border: 3px solid transparent;
border-image: linear-gradient(270deg, #ff00cc, #3333ff, #0ff, #ff00cc);
border-image-slice: 1;
animation: borderMove 5s linear infinite;
background-clip: border-box;
font-family: 'Courier New', monospace;
}

@keyframes borderMove {
0% {
border-image-source: linear-gradient(270deg, #ff00cc, #3333ff, #0ff, #ff00cc);
}
100% {
border-image-source: linear-gradient(630deg, #ff00cc, #3333ff, #0ff, #ff00cc);
}
}
</style>


Use this for headers, nameplates, or anywhere you want dramatic flair.

Follow @Html_codee for more CSS spells daily 💫

#css #animation #border #frontend #htmlcodee #creativecode
Animated CDC design
<svg width="200" height="200" viewBox="0 0 200 200" xmlns="http://www.w3.org/2000/svg">
<defs>
<radialGradient id="cyber-bg" cx="50%" cy="50%" r="70%">
<stop offset="0%" stop-color="#0f0c29" />
<stop offset="100%" stop-color="#302b63" />
</radialGradient>

<linearGradient id="neon-stroke" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#00ffe0">
<animate attributeName="stop-color" values="#00ffe0;#ff00ff;#00ffe0" dur="4s" repeatCount="indefinite" />
</stop>
<stop offset="100%" stop-color="#ff00ff">
<animate attributeName="stop-color" values="#ff00ff;#00ffe0;#ff00ff" dur="4s" repeatCount="indefinite" />
</stop>
</linearGradient>

<linearGradient id="text-neon" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#00f5ff">
<animate attributeName="stop-color" values="#00f5ff;#ff3cac;#00f5ff" dur="3s" repeatCount="indefinite" />
</stop>
<stop offset="100%" stop-color="#ff3cac">
<animate attributeName="stop-color" values="#ff3cac;#00f5ff;#ff3cac" dur="3s" repeatCount="indefinite" />
</stop>
</linearGradient>
</defs>

<!-- Background circle -->
<circle cx="100" cy="100" r="95" fill="url(#cyber-bg)" stroke="url(#neon-stroke)" stroke-width="8">
<animateTransform attributeName="transform" attributeType="XML" type="rotate" from="0 100 100" to="360 100 100" dur="20s" repeatCount="indefinite" />
</circle>

<!-- Inner glow ring -->
<circle cx="100" cy="100" r="75" fill="none" stroke="url(#neon-stroke)" stroke-width="2" stroke-dasharray="5,5" opacity="0.5">
<animateTransform attributeName="transform" attributeType="XML" type="rotate" from="360 100 100" to="0 100 100" dur="10s" repeatCount="indefinite" />
</circle>

<!-- </> Symbol -->
<text x="50%" y="50%" font-size="56" font-family="monospace" fill="url(#text-neon)" text-anchor="middle" dominant-baseline="central">
&lt;/&gt;
</text>
</svg>
Grok 4 placed 5th in the offline IQ test with a score of 110. But surprisingly scored the highest, 136, in the online version.

That's pretty wild... Also, in this intelligence test, the standard grok 4 was used, not grok 4 heavy, which is the more powerful version.

@aipost 🪙 | Our X 🥇
Html codes
Photo
CodePen Blog
Chris’ Corner: We Can Have Nice Things

It’s such a small, simple thing, but I’m very grateful that we’re getting “Gap Decorations” in CSS.

Microsoft is working on “gap decorations” and have put together a nice playground to explore them, and I had a play. The idea is drawing lines where gaps would be, rather than empty space. It’s really quite well done with lots of control (do they hit the edges or stop short? do they overlap or not? which direction is on top? etc). I took a look at it the other day. Oh hey, that link is a lightly edited video I did from a stream I did. I’m enjoying the whole streaming thing. I’d love it if you came along for the ride:

* Chris Coyier on Twitch
* CodePen on YouTube
https://blog.codepen.io/wp-content/uploads/2025/07/gap-decoration-1024x586.png
Part of what I like about it is that you don’t necessarily need to put grid items onto the grid to get the lines. Grid items on the grid might affect it, but it’s not required. That naturally leads on to think about styling grid areas without having to put HTML elements there to style. That’d be head, huh? The Chrome blog has the post on it for whatever reason (does Microsoft not have a good blog for this?). The demos are pretty compelling in that blog post, showcasing some of the more exotic syntax possible.
https://blog.codepen.io/wp-content/uploads/2025/07/cssgapdecorati-3n3gt15s44x_1920-1024x794.png
Speaking of turning a stream into a nicer video and demo, I did the same thing for an idea I had about reordering list items with View Transitions.

* It started as a stream.
* I cleaned up the demo.
* I polished it a smidge into a video.
* I wrote it up as a blog post.
* Now I’m writing it up here in my column.

I probably won’t give every little thing I do on a stream the full content round trip like this, but I thought the result was super fun and cool and I JUST WANTED TO OK.

https://blog.codepen.io/wp-content/uploads/2025/07/kickflip.png

I’m also super envious of Bramus’ idea of If View Transitions and Scroll-Driven Animations having a baby, which is just an ultra-cool idea. He got some good mileage out of that idea, including a meetup talk. 💪

I’ve had Ryan Mulligan’s Scrolling Rails and Button Controls bookmarked for quite a while. He made a <scrolly-railweb component that makes simple, nice horizontal scrolling elements. That includes scroll snapping, smooth scrolling, pagination controls, and more.

The timing of it is a little funny, as all this CSS Carousels stuff dropped very shortly after his work. Not that Ryan’s work was in vain, as it’s more cross-browser friendly than stuff like ::scroll-button() and the fancy features necessary for CSS carousels are. https://blog.codepen.io/wp-content/uploads/2025/07/carousel-1024x468.png But me, I’m so lazy into progressive enhancement, the last time I wanted to do a carousel, I went right for the fancy new stuff. That was for a template I was working on for our 2.0 Editor, which I streamed about, naturally.
1
CodePen Blog
402: Bookmarks

Pins are dead!

Long live bookmarks!

Pins was never a good name for the feature we have on CodePen where you can mark a Pen or Collection to more quickly jump back to it from anywhere on the site. The word is too similar to “Pen” that it’s just awkward, not to mention it’s not exactly and obvious metaphor. A bookmark is a much more clear term and icon, so we decided to switch to it.

Switching the UI is kind of the easy part. It’s kind of a cultural thing at CodePen, but when we make a change like this, we change it 100% through the entire code base, down to the database itself. In order to do that, we had to chunk it into stages so that those stages can roll out independently, but in order, to make it seamless.

Now that it’s done, we were able to extend the functionality of Bookmarks a bit, such that bookmarking a template is extra useful. One place to see that is on the new Create page.

Time Jumps
* 00:05 You’re still here! Thanks for listening!
* 01:51 Pins are changing to…
* 04:51 How do you get alignment on changes or new features?
* 08:35 Figuring out the new icon
* 09:44 Updating the documentation
* 17:32 How does this affect templates?
Animated radar with only SVG!

<svg viewBox="0 0 200 200" width="300" height="300" xmlns="http://www.w3.org/2000/svg">
<!-- Background -->
<circle cx="100" cy="100" r="100" fill="#001f1f"/>

<!-- Radar Grid -->
<circle cx="100" cy="100" r="90" stroke="#00ffff" stroke-width="0.5" fill="none" opacity="0.15"/>
<circle cx="100" cy="100" r="60" stroke="#00ffff" stroke-width="0.5" fill="none" opacity="0.1"/>
<circle cx="100" cy="100" r="30" stroke="#00ffff" stroke-width="0.5" fill="none" opacity="0.08"/>

<!-- Cross lines -->
<line x1="100" y1="10" x2="100" y2="190" stroke="#00ffff" stroke-width="0.3" opacity="0.2"/>
<line x1="10" y1="100" x2="190" y2="100" stroke="#00ffff" stroke-width="0.3" opacity="0.2"/>
<line x1="30" y1="30" x2="170" y2="170" stroke="#00ffff" stroke-width="0.2" opacity="0.1"/>
<line x1="170" y1="30" x2="30" y2="170" stroke="#00ffff" stroke-width="0.2" opacity="0.1"/>

<!-- Glowing Center -->
<circle cx="100" cy="100" r="3" fill="#00ffff" opacity="0.8">
<animate attributeName="r" values="2;4;2" dur="1.5s" repeatCount="indefinite"/>
<animate attributeName="opacity" values="0.8;0.3;0.8" dur="1.5s" repeatCount="indefinite"/>
</circle>

<!-- Radar Sweep -->
<g>
<animateTransform
attributeName="transform"
attributeType="XML"
type="rotate"
from="0 100 100"
to="360 100 100"
dur="2.8s"
repeatCount="indefinite"/>

<!-- Gradient beam -->
<path d="M100,100 L100,10 A90,90 0 0,1 190,100 Z" fill="url(#beamGrad)" />
</g>

<!-- Gradient Definition -->
<defs>
<radialGradient id="beamGrad" cx="100" cy="100" r="100" gradientUnits="userSpaceOnUse">
<stop offset="0%" stop-color="#00ffff" stop-opacity="0.15"/>
<stop offset="100%" stop-color="#00ffff" stop-opacity="0"/>
</radialGradient>
</defs>
</svg>
Crypnero.html
61.2 KB
Share my html file
CodePen Blog
Chris’ Corner: AI for me, AI for thee

Our very own Stephen Shaw was on an episode of Web Dev Challenge on CodeTV: Build the Future of AI-Native UX in 4 Hours. I started watching this on my computer, but then moved to my living room couch to put it on the big screen. Because it deserves it! It honestly feels like “real” TV, as good as any episode of a home renovation show or the like. Only obviously better as it’s straight down the niche of web maker nerds like us.

All three teams in the episode were building something that incorporated AI usage directly for the user. In all three cases, using the app started with a user typing in what they wanted into a textbox. That’s what the input for LLMs thrives on. I’m sure in all three cases it was also augmented with additional prompting and whatnot, invisible to the user, but ultimately, you ask something in your own words.

LLMs were interacted with via API and the teams then dealt with the responses they got back. We didn’t get to see how they dealt with the responses much, but you get the sense that 1) they can be a bit slow so you have to account for that 2) they are non-deterministic so you need to be prepared for highly unknown responses.

The episode was sponsored by Algolia, which provides search functionality at it’s core. Algolia’s APIs are, in stark contrast to the LLM APIs, 1) very fast 2) largely deterministic, meaning you essentially know and can control what you get back. I found this style of application development interesting: using two very different types of APIs, leaning into what each are good at doing. That’s not a new concept, I suppose, but it feels like a fresh new era of specifically this. It’s not AI everywhere all the time for everything! It’s more like use AI sparingly because it’s expensive and slow but extremely good at certain things.

I admit I’m using AI more and more these days, but 95% just for coding help. I wouldn’t call it “vibe coding” because I’m very critical of what I get back and tend to work on a codebase where I already essentially know what I’m doing; I just want advice on doing things faster and help with all the rote work. What started as AI helping with line completion has expanded into much more general prompting and “agents” roaming a whole codebase, performing various tasks. I’m not sure when it flipped for me, but this whole agent approach to getting AI help is actually the most comfortable way working with AI and code for me now.

I haven’t tried Claude Code yet, mostly because it’s command-line only (right??) and I just don’t live on the command line like that. So I’ve been mostly using Cursor. I tried Windsurf a while back and was impressed by that, but they are going through quite a bit of turmoil lately so I think I’ll stay away from that unless I hear it’s great again or whatever.

The agentic tools that you use outside of your code editor itself kind of weird me out. I used Jules the other day for a decently rote task and it did a fine job for me, but was weird to be looking at diffs in a place I couldn’t manually edit them. It almost forces you to vibe code, asking for changes in text rather than making them yourself. There must be some market for this, as Cursor has them now, too.

It really is the “simple but ughgkghkgh” tasks for me that AI excels at. Just the other day I was working on an update to this very CodePen blog/podcast/docs site which we have on WordPress. I had switched hosting companies lately, and with that came a loss in how I was doing cache-busting CSS. Basically I needed to edit the header.php file with a cache-busting ?v=xxx string where I ed up the CSS, otherwise shipping updated CSS wouldn’t apply when I changed it. Blech. CodePen deployed sites will not have this problem. So, anyway, I needed a simple build process to do this. I was thinking Gulp, but I asked an AI agent to suggest [...]
Html codes
CodePen Blog Chris’ Corner: AI for me, AI for thee Our very own Stephen Shaw was on an episode of Web Dev Challenge on CodeTV: Build the Future of AI-Native UX in 4 Hours. I started watching this on my computer, but then moved to my living room couch to put…
something. It gave me a variety of decent options, including Gulp. So I picked Gulp and it happily added a build process to handle this. It required maybe 3-4 rounds of discussion to get it perfectly dialed in, but all in all, maybe a 10-minute job. I’d say that was easily a 2-3 hour job if I had to hand-code it all out, and much more if I hadn’t already done exactly this sort of thing many times in my career. I’m definitely starting to think that the more you know what you’re doing, the more value you get out of AI.

While we’re at it, I’ll leave you with some AI-ish bookmarks I’ve had sitting around:

* humanify: “Deobfuscate Javascript code using ChatGPT”
* Derick Ruiz: LLMs.txt Explained (Basically dump your docs into one big .txt file for LLMs to slurp up on purpose. Weird/funny to me, but I get it. Seems like npm modules should start doing this.) Ryan Law also has What Is llms.txt, and Should You Care About It?
* Steve Klabnik: I am disappointed in the AI discourse. (If you’re going to argue about something, at least be informed.)
* Video: Transformers.js: State-of-the-art Machine Learning for the web. AI APIs baked into browsers will be a big deal. More privacy, no network round-trip, offline support, etc.
<svg width="400" height="400" viewBox="0 0 400 400" xmlns="http://www.w3.org/2000/svg">
<defs>
<!-- Realistic gradients -->
<linearGradient id="gradRed" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#ff4e50"/>
<stop offset="100%" stop-color="#f9d423"/>
</linearGradient>
<linearGradient id="gradBlue" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#24c6dc"/>
<stop offset="100%" stop-color="#514a9d"/>
</linearGradient>

<!-- Spin animation -->
<style>
.wheel {
transform-origin: 200px 200px;
animation: spin 5s linear infinite;
}

@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}

text {
font-family: sans-serif;
font-size: 12px;
fill: white;
pointer-events: none;
}
</style>
</defs>

<!-- Outer border -->
<circle cx="200" cy="200" r="195" fill="white" stroke="#222" stroke-width="10"/>

<!-- Rotating wheel group -->
<g class="wheel">
<!-- 8 segments (alternating colors) -->
<g transform="rotate(-22.5 200 200)">
<!-- Base path used with rotations -->
<g transform="rotate(0 200 200)">
<path d="M200,200 L200,20 A180,180 0 0,1 327.4,72.6 Z" fill="url(#gradRed)" />
</g>
<g transform="rotate(45 200 200)">
<path d="M200,200 L200,20 A180,180 0 0,1 327.4,72.6 Z" fill="url(#gradBlue)" />
</g>
<g transform="rotate(90 200 200)">
<path d="M200,200 L200,20 A180,180 0 0,1 327.4,72.6 Z" fill="url(#gradRed)" />
</g>
<g transform="rotate(135 200 200)">
<path d="M200,200 L200,20 A180,180 0 0,1 327.4,72.6 Z" fill="url(#gradBlue)" />
</g>
<g transform="rotate(180 200 200)">
<path d="M200,200 L200,20 A180,180 0 0,1 327.4,72.6 Z" fill="url(#gradRed)" />
</g>
<g transform="rotate(225 200 200)">
<path d="M200,200 L200,20 A180,180 0 0,1 327.4,72.6 Z" fill="url(#gradBlue)" />
</g>
<g transform="rotate(270 200 200)">
<path d="M200,200 L200,20 A180,180 0 0,1 327.4,72.6 Z" fill="url(#gradRed)" />
</g>
<g transform="rotate(315 200 200)">
<path d="M200,200 L200,20 A180,180 0 0,1 327.4,72.6 Z" fill="url(#gradBlue)" />
</g>
</g>
</g>

<!-- Center spinner -->
<circle cx="200" cy="200" r="30" fill="#222" stroke="#fff" stroke-width="4"/>
<circle cx="200" cy="200" r="8" fill="#FFD700"/>

<!-- Pointer -->
<polygon points="195,5 205,5 200,25" fill="#e60000" stroke="#000" stroke-width="1"/>
</svg>
# Install Playwright and download Chromium browser
!pip install -q playwright
!playwright install chromium

# Capture a full-page screenshot using Playwright
from playwright.async_api import async_playwright
from IPython.display import Image
import asyncio

async def take_full_screenshot(url="https://example.com", output_path="screenshot.png"):
async with async_playwright() as p:
browser = await p.chromium.launch(headless=True)
page = await browser.new_page()
await page.goto(url)
await page.screenshot(path=output_path, full_page=True)
await browser.close()
return output_path

# Take a screenshot from the specified URL
img_path = await take_full_screenshot("https://bestpage.x10.mx")

# Display the screenshot
Image(img_path)
Forwarded from Universal AI
Where was the first famous email scam (419 scam) initiated?
Anonymous Quiz
50%
USA
50%
Nigeria
0%
Germany
0%
Russia