<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Git Clone on Producthunt daily</title>
        <link>https://producthunt.programnotes.cn/en/tags/git-clone/</link>
        <description>Recent content in Git Clone on Producthunt daily</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>en</language>
        <lastBuildDate>Thu, 26 Jun 2025 15:31:08 +0800</lastBuildDate><atom:link href="https://producthunt.programnotes.cn/en/tags/git-clone/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>multipleWindow3dScene</title>
        <link>https://producthunt.programnotes.cn/en/p/multiplewindow3dscene/</link>
        <pubDate>Thu, 26 Jun 2025 15:31:08 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/multiplewindow3dscene/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1555077445-0c0f29d9302c?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3NTA5MjI5NzV8&amp;ixlib=rb-4.1.0" alt="Featured image of post multipleWindow3dScene" /&gt;&lt;h1 id=&#34;bgstaalmultiplewindow3dscene&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/bgstaal/multipleWindow3dScene&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;bgstaal/multipleWindow3dScene&lt;/a&gt;
&lt;/h1&gt;&lt;h1 id=&#34;multiple-window-3d-scene-using-threejs&#34;&gt;Multiple Window 3D Scene using Three.js
&lt;/h1&gt;&lt;h2 id=&#34;introduction&#34;&gt;Introduction
&lt;/h2&gt;&lt;p&gt;This project demonstrates a unique approach to creating and managing a 3D scene across multiple browser windows using Three.js and localStorage. It&amp;rsquo;s designed for developers interested in advanced web graphics and window management techniques.&lt;/p&gt;
&lt;h2 id=&#34;features&#34;&gt;Features
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;3D scene creation and rendering with Three.js.&lt;/li&gt;
&lt;li&gt;Synchronization of 3D scenes across multiple browser windows.&lt;/li&gt;
&lt;li&gt;Dynamic window management and state synchronization using localStorage.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;installation&#34;&gt;Installation
&lt;/h2&gt;&lt;p&gt;Clone the repository and open &lt;code&gt;index.html&lt;/code&gt; in your browser to start exploring the 3D scene.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-fallback&#34; data-lang=&#34;fallback&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/bgstaal/multipleWindow3dScene
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;usage&#34;&gt;Usage
&lt;/h2&gt;&lt;p&gt;The main application logic is contained within &lt;code&gt;main.js&lt;/code&gt; and &lt;code&gt;WindowManager.js&lt;/code&gt;. The 3D scene is rendered in &lt;code&gt;index.html&lt;/code&gt;, which serves as the entry point of the application.&lt;/p&gt;
&lt;h2 id=&#34;structure-and-components&#34;&gt;Structure and Components
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;index.html&lt;/code&gt;: Entry point that sets up the HTML structure and includes the Three.js library and the main script.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WindowManager.js&lt;/code&gt;: Core class managing window creation, synchronization, and state management across multiple windows.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;main.js&lt;/code&gt;: Contains the logic for initializing the 3D scene, handling window events, and rendering the scene.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;three.r124.min.js&lt;/code&gt;: Minified version of the Three.js library used for 3D graphics rendering.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;detailed-functionality&#34;&gt;Detailed Functionality
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;WindowManager.js&lt;/code&gt; handles the lifecycle of multiple browser windows, including creation, synchronization, and removal. It uses localStorage to maintain state across windows.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;main.js&lt;/code&gt; initializes the 3D scene using Three.js, manages the window&amp;rsquo;s resize events, and updates the scene based on window interactions.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;contributing&#34;&gt;Contributing
&lt;/h2&gt;&lt;p&gt;Contributions to enhance or expand the project are welcome. Feel free to fork the repository, make changes, and submit pull requests.&lt;/p&gt;
&lt;h2 id=&#34;license&#34;&gt;License
&lt;/h2&gt;&lt;p&gt;This project is open-sourced under the MIT License.&lt;/p&gt;
&lt;h2 id=&#34;acknowledgments&#34;&gt;Acknowledgments
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;The Three.js team for their comprehensive 3D library.&lt;/li&gt;
&lt;li&gt;x.com/didntdrinkwater for this readme.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;contact&#34;&gt;Contact
&lt;/h2&gt;&lt;p&gt;For more information and updates, follow &lt;a class=&#34;link&#34; href=&#34;https://twitter.com/_nonfigurativ_&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;@&lt;em&gt;nonfigurativ&lt;/em&gt;&lt;/a&gt; on Twitter.&lt;/p&gt;
</description>
        </item>
        
    </channel>
</rss>
