分类 源码 下的文章

<!DOCTYPE html>
<html lang="zh">
  <head>
 <meta charset="UTF-8" />
 <meta name="viewport" content="width=device-width, initial-scale=1.0" />
 <title>Black Hole Visualization</title>
 <style>
   body,
   html {
     height: 100%;
     margin: 0;
     padding: 0;
   }

   body {
     height: 100%;
     background-color: rgba(25, 25, 25, 1);
     overflow: hidden;
   }

   #blackhole {
     height: 100%;
     width: 100%;
     position: relative;
     display: flex;
   }

   .centerHover {
     width: 255px;
     height: 255px;
     background-color: transparent;
     border-radius: 50%;
     position: absolute;
     left: 50%;
     top: 50%;
     margin-top: -128px;
     margin-left: -128px;
     z-index: 2;
     cursor: pointer;
     line-height: 255px;
     text-align: center;
     transition: all 500ms;
   }

   .centerHover.open {
     opacity: 0;
     pointer-events: none;
   }

   .centerHover:hover span {
     color: #ddd;
   }

   .centerHover:hover span:before {
     background-color: #ddd;
   }

   .centerHover:hover span:after {
     background-color: #ddd;
   }

   .centerHover span {
     color: #666;
     font-family: serif;
     font-size: 18px;
     position: relative;
     transition: all 500ms;
   }

   .centerHover span:before {
     content: "";
     display: inline-block;
     height: 1px;
     width: 16px;
     margin-right: 12px;
     margin-bottom: 4px;
     background-color: #666;
     transition: all 500ms;
   }

   .centerHover span:after {
     content: "";
     display: inline-block;
     height: 1px;
     width: 16px;
     margin-left: 12px;
     margin-bottom: 4px;
     background-color: #666;
     transition: all 500ms;
   }

   canvas {
     position: relative;
     z-index: 1;
     width: 100%;
     height: 100%;
     margin: auto;
   }

   #blackhole {
     height: 100%;
     width: 100%;
     position: relative;
     display: flex;
   }

   .centerHover {
     width: 255px;
     height: 255px;
     background-color: transparent;
     border-radius: 50%;
     position: absolute;
     left: 50%;
     top: 50%;
     margin-top: -128px;
     margin-left: -128px;
     z-index: 2;
     cursor: pointer;
     line-height: 255px;
     text-align: center;
     transition: all 500ms;
   }

   .centerHover.open {
     opacity: 0;
     pointer-events: none;
   }

   .centerHover:hover span {
     color: #ddd;
   }

   .centerHover:hover span:before {
     background-color: #ddd;
   }

   .centerHover:hover span:after {
     background-color: #ddd;
   }

   .centerHover span {
     color: #666;
     font-family: serif;
     font-size: 18px;
     position: relative;
     transition: all 500ms;
   }

   .centerHover span:before {
     content: "";
     display: inline-block;
     height: 1px;
     width: 16px;
     margin-right: 12px;
     margin-bottom: 4px;
     background-color: #666;
     transition: all 500ms;
   }

   .centerHover span:after {
     content: "";
     display: inline-block;
     height: 1px;
     width: 16px;
     margin-left: 12px;
     margin-bottom: 4px;
     background-color: #666;
     transition: all 500ms;
   }

   canvas {
     position: relative;
     z-index: 1;
     width: 100%;
     height: 100%;
     margin: auto;
   }
 </style>
  </head>
  <body>
 <div id="blackhole">
   <div class="centerHover"><span>点击进入</span></div>
 </div>
 <script>
   function blackhole(element) {
     const container = document.querySelector(element);
     const h = container.offsetHeight;
     const w = container.offsetWidth;
     const cw = w;
     const ch = h;
     const maxorbit = 255;
     const centery = ch / 2;
     const centerx = cw / 2;

     const startTime = new Date().getTime();
     let currentTime = 0;

     const stars = [];
     let collapse = false;
     let expanse = false;
     let returning = false;

     const canvas = document.createElement("canvas");
     canvas.width = cw;
     canvas.height = ch;
     container.appendChild(canvas);
     const context = canvas.getContext("2d");

     context.globalCompositeOperation = "multiply";

     function setDPI(canvas, dpi) {
       if (!canvas.style.width) canvas.style.width = canvas.width + "px";
       if (!canvas.style.height) canvas.style.height = canvas.height + "px";

       const scaleFactor = dpi / 96;
       canvas.width = Math.ceil(canvas.width * scaleFactor);
       canvas.height = Math.ceil(canvas.height * scaleFactor);
       const ctx = canvas.getContext("2d");
       ctx.scale(scaleFactor, scaleFactor);
     }

     function rotate(cx, cy, x, y, angle) {
       const radians = angle;
       const cos = Math.cos(radians);
       const sin = Math.sin(radians);
       const nx = cos * (x - cx) + sin * (y - cy) + cx;
       const ny = cos * (y - cy) - sin * (x - cx) + cy;
       return [nx, ny];
     }

     setDPI(canvas, 192);

     class Star {
       constructor() {
         const rands = [];
         rands.push(Math.random() * (maxorbit / 2) + 1);
         rands.push(Math.random() * (maxorbit / 2) + maxorbit);

         this.orbital = rands.reduce((p, c) => p + c, 0) / rands.length;

         this.x = centerx;
         this.y = centery + this.orbital;

         this.yOrigin = centery + this.orbital;

         this.speed =
           ((Math.floor(Math.random() * 2.5) + 1.5) * Math.PI) / 180;
         this.rotation = 0;
         this.startRotation =
           ((Math.floor(Math.random() * 360) + 1) * Math.PI) / 180;

         this.id = stars.length;

         this.collapseBonus = this.orbital - maxorbit * 0.7;
         if (this.collapseBonus < 0) {
           this.collapseBonus = 0;
         }

         this.color = "rgba(255,255,255," + (1 - this.orbital / 255) + ")";

         this.hoverPos = centery + maxorbit / 2 + this.collapseBonus;
         this.expansePos =
           centery +
           (this.id % 100) * -10 +
           (Math.floor(Math.random() * 20) + 1);

         this.prevR = this.startRotation;
         this.prevX = this.x;
         this.prevY = this.y;

         this.originalY = this.yOrigin;

         stars.push(this);
       }

       draw() {
         if (!expanse && !returning) {
           this.rotation = this.startRotation + currentTime * this.speed;
           if (!collapse) {
             if (this.y > this.yOrigin) {
               this.y -= 2.5;
             }
             if (this.y < this.yOrigin - 4) {
               this.y += (this.yOrigin - this.y) / 10;
             }
           } else {
             this.trail = 1;
             if (this.y > this.hoverPos) {
               this.y -= (this.hoverPos - this.y) / -5;
             }
             if (this.y < this.hoverPos - 4) {
               this.y += 2.5;
             }
           }
         } else if (expanse && !returning) {
           this.rotation =
             this.startRotation + currentTime * (this.speed / 2);
           if (this.y > this.expansePos) {
             this.y -= Math.floor(this.expansePos - this.y) / -80;
           }
         } else if (returning) {
           this.rotation = this.startRotation + currentTime * this.speed;
           if (Math.abs(this.y - this.originalY) > 2) {
             this.y += (this.originalY - this.y) / 50;
           } else {
             this.y = this.originalY;
             this.yOrigin = this.originalY;
           }
         }

         context.save();
         context.fillStyle = this.color;
         context.strokeStyle = this.color;
         context.beginPath();
         const oldPos = rotate(
           centerx,
           centery,
           this.prevX,
           this.prevY,
           -this.prevR
         );
         context.moveTo(oldPos[0], oldPos[1]);
         context.translate(centerx, centery);
         context.rotate(this.rotation);
         context.translate(-centerx, -centery);
         context.lineTo(this.x, this.y);
         context.stroke();
         context.restore();

         this.prevR = this.rotation;
         this.prevX = this.x;
         this.prevY = this.y;
       }
     }

     const centerHover = document.querySelector(".centerHover");

     centerHover.addEventListener("click", function () {
       collapse = false;
       expanse = true;
       returning = false;
       this.classList.add("open");

       setTimeout(() => {
         expanse = false;
         returning = true;

         setTimeout(() => {
           returning = false;
           this.classList.remove("open");
         }, 2000);
       }, 5000);
     });

     centerHover.addEventListener("mouseover", function () {
       if (expanse === false) {
         collapse = true;
       }
     });

     centerHover.addEventListener("mouseout", function () {
       if (expanse === false) {
         collapse = false;
       }
     });

     function loop() {
       const now = new Date().getTime();
       currentTime = (now - startTime) / 50;

       context.fillStyle = "rgba(25,25,25,0.2)";
       context.fillRect(0, 0, cw, ch);

       for (let i = 0; i < stars.length; i++) {
         if (stars[i] !== undefined) {
           stars[i].draw();
         }
       }

       requestAnimationFrame(loop);
     }

     function init() {
       context.fillStyle = "rgba(25,25,25,1)";
       context.fillRect(0, 0, cw, ch);
       for (let i = 0; i < 2500; i++) {
         new Star();
       }
       loop();
     }

     init();
   }

   document.addEventListener("DOMContentLoaded", () => {
     blackhole("#blackhole");
   });
 </script>
  </body>
</html>

前言

你还在烦恼日子记不住?
你还在烦恼她 / 他记错帐?不要怕,程序来了,那天交的公粮,一目了然,清清楚楚,明明白白。
不止能记录今天的,甚至能记录月、年的,还能统计总数,交了多少又有谁能知道呢?(记得隐私,小心大家给你加班,假装你很强)
IMG_20250701_004409.jpg

演示 /

https://199696.xyz/assets/20/

像我一样单身的,根本不配拥有这种程序,玛的,用不上。

下载地址

https://pan.baidu.com/s/1FUOgV9Y6sNx-pIR3dRQdow?pwd=nsud 


1米(m) = 0.001千米(km)
1米(m) = 1米(m)
1米(m) = 10分米(dm)
1米(m) = 100厘米(cm)
1米(m) = 1000毫米(mm)
1米(m) = 10000丝米(dmm)
1米(m) = 100000丝(机械尺寸单位)
1米(m) = 1000000微米(μm)
1米(m) = 1000000000纳米(nm)
1米(m) = 0.002里
1米(m) = 0.3丈
1米(m) = 3尺
1米(m) = 30寸
1米(m) = 300分
1米(m) = 3000厘
1米(m) = 30000毫
1米(m) = 0.00054海里(nmi)
1米(m) = 0.5468066英寻
1米(m) = 3.2808399英尺(ft)
1米(m) = 39.3700787英寸(in)
1米(m) = 0.0006214英里(mi)
1米(m) = 0.004971弗隆(fur)
1米(m) = 1.0936133码(yd)


从移动互联网时代开始,不管是企业官网、个人博客、论坛等等,都有自动生成iOS/Android APP的需求。

自从类似Claude sonnet+Cursor 这样的组合对编程较好支持后,AI自动生成iOS/Android APP已经成为重要的AI应用领域,出现了一堆新产品。APP生成工具主要分为两大类:
a、AI辅助生成APP工具
b、从已有网站/Wordpress/论坛等生成APP工具

AI生成APP工具
bolt.new
https://bolt.new/

支持Web/APP生成a0.dev
https://a0.dev/
APP开源框架
Expo.dev
开发Replit
https://replit.com/aSim
https://asim.sh/
https://news.ycombinator.com/item?id=43547677

支持直接在移动端生成APP的APP
Lovable
https://lovable.dev/
Tempo
https://www.tempo.new/
Create
https://www.create.xyz/
Avid
https://www.getavid.dev/

网站生成APP
Median.co
https://median.co/  
原GoNative.ioApp
MySite
https://www.appmysite.com/
Web2APP
https://web2app.app/
Appypie
https://www.appypie.com
WebViewGold
https://www.webviewgold.com/
变色龙云
http://webtoapp.bslyun.com/
WordPress
https://github.com/longmix/
wordpress-to-app 开源
https://apppresser.com/
https://wordpress.org/plugins/app-builder/
https://wordpress.org/plugins/appmysite/
https://wordpress.org/plugins/mobiloud-mobile-app-plugin/
https://wordpress.org/plugins/wpappninja/

Discuz论坛
DZ 阅读器– Discuz! X 论坛阅读工具iOS:https://apps.apple.com/app/id1602665775

Android:
https://ittool.app/file/dz_reader.apk 或Google Play搜索:DZ Reader
Shopify商店
https://apps.shopify.com/categories/store-design-storefronts-mobile-app-builder

APP开发框架Expo
https://expo.dev/


这是一款由某某 AI 生成的实时工资计算题,他能粗糙的计算出你的时薪是多少?只需要你输入 “月薪,月上班天数,每日上班工时”。简单粗暴,让牛马有希望,让你的知道付出是有回报的,虽然不多,但总归是有的。

没有演示站,自己复制粘贴去看看。
IMG_20250524_104332.jpg

通过百度网盘分享的文件:实时工资计算器.…
链接:https://pan.baidu.com/s/1MYrNjka8SMGPTfPRCNzvhA?pwd=w841 
提取码:w841
复制这段内容打开「百度网盘APP 即可获取」


【运行环境】
空间:Net2.0/3.5/4.0
数据库:MSSQL2000/2005/2008/2012
【本版简介】
此破解版是基于柯林最新免费版破解而来
出炉时间是:2016-09-18 版本号:V12.08.11
【后台信息】
后台地址:http://域名/admin
后台帐号:wap
后台密码:888888
【安装说明】
老鸟就不必理会此教程了!就简单的讲一下安装方法吧
下载程序后-解压kelink.bak-还原数据库-上传程序
修改Web.config数据库信息-后台设置域名转发-完成
不会安装的朋友可以联系别人代上传安装(收费),我不会

【注意事项】
破解版请勿修改后台的主域名,改了主域名那么底部就会有柯林的版权

通过百度网盘分享的文件:柯林WAP建站程…
链接:https://pan.baidu.com/s/1j9TXxXhziPD03zSmM48hSA?pwd=8e55 
提取码:8e55
复制这段内容打开「百度网盘APP 即可获取」



我用AI写的第一款真正意义上程序,域名管理系统。对我个人没什么球用,但给你们就不一样了,你们都是大佬。

功能如下:
1.域名增/删/编辑功能
2.域名自动数量统计
3.自定义设置网站名、联系方式
4.所有数据使用sql储存。

前端图片演示(瞎弄整的,自己可以写个用):
Image_51964758861270.png
后台图片演示(网上下的模板,自己瞎改了一下):
Image_51969676685747.png
安装教程:
1.下载
2.解压
3.导入xgk.sql
4.在db.php中填上你的数据库信息。
5.登陆后台:https://网站/login.php
6.默认管理员帐号admin密码xgkadmin

(帐号和密码在login.php第6行修改,这个没有储存在数据库,如果无法访问后台时,请安装一个PDO扩展)

注意:一个烂球域名管理程序,应该没人闲得去搞你,所以,本程序没有任何安全防护。

再注意:禁止拿去干违法犯罪的事情,你下载安装了就是使用者自己的责任,大佬论坛首发,转载请注名:来源大佬论坛就好,嘿嘿嘿嘿,也可以去我博客(https://mbsh.cn)看看,生活博客论落到没有生活文章。

通过网盘分享的文件:贵客域名管理程序.tar.gz
链接: https://pan.baidu.com/s/1a9iiCzEyUq9PVw_3jGZTOg?pwd=4741 提取码: 4741