lordmau5 / ffs Goto Github PK
View Code? Open in Web Editor NEWSimple fluid storage - reimagined.
License: Other
Simple fluid storage - reimagined.
License: Other
FancyFluidStorage Version:
2.0.3
MinecraftForge Version:
12.18.3.2254
Client or Server?:
What happens / happened?:
I play a single. I leave the game - I go back - the amount of liquid in the tank increases in two.
Checked with different liquids - all the same.
FancyFluidStorage Version:
1.10.2-2.0.3-b11
MinecraftForge Version:
2185
Client or Server?:
Crash Report (via. Pastebin):
https://gist.github.com/xenoflot/12ce57bac5cb2e96c2cc177e9dafee68
What happens / happened?:
Updated our server tonight and was checking out a recipe bug. Looked at something in JEI and the server crashed. Client did no crash. No other players online at the time. At first I thought the events were related, but after the server came back up, I went in and looked at exactly the same recipe with no problem.
I've put the tail of the log in the gist above. Reporting here first since FFS gets mentioned first. If you'd like me to log with another author, I'm happy to do so.
I can see that the xu2 quarry is mentioned in the crash. I only know of one xu2 quarry on the server. It's probably out of render range from my base and the spawn chunks but is probably chunkloaded.
extrautils2 ver 1.10.2-1.2.0
How can we reproduce it?:
No idea, sorry. I don't believe it was related to anything I was doing on the server at the time.
FancyFluidStorage Version: 1.16.3-3.0.4
MinecraftForge Version: 34.1.25
Client or Server?:
Crash Report (via. Pastebin):
crash-2020-10-22_22.37.26-server.txt
What happens / happened?:
How can we reproduce it?:
Right Click on tank value cause the server to crash
FancyFluidStorage Version:
MinecraftForge Version:
Client or Server?:
Crash Report (via. Pastebin):
https://github.com/Lordmau5/FFS/files/683349/crash-2017-01-03_16.04.30-server.txt
What happens / happened?:
Upon entering dimension id -2 from Advanced Rocketry crash with included error.
How can we reproduce it?:
[15:12:26] [Netty Local Client IO #2/ERROR] [FML]: There was a critical exception handling a packet on channel ffs
java.util.ConcurrentModificationException: null
at java.util.WeakHashMap$HashIterator.nextEntry(Unknown Source) ~[?:1.8.0_381]
at java.util.WeakHashMap$ValueIterator.next(Unknown Source) ~[?:1.8.0_381]
at java.util.AbstractCollection.removeAll(Unknown Source) ~[?:1.8.0_381]
at com.lordmau5.ffs.util.TankManager.remove(TankManager.java:88) ~[TankManager.class:?]
at com.lordmau5.ffs.network.handlers.client.OnTankBreak.channelRead0(OnTankBreak.java:15) ~[OnTankBreak.class:?]
at com.lordmau5.ffs.network.handlers.client.OnTankBreak.channelRead0(OnTankBreak.java:11) ~[OnTankBreak.class:?]
at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) ~[SimpleChannelInboundHandler.class:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) ~[AbstractChannelHandlerContext.class:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) ~[AbstractChannelHandlerContext.class:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) ~[AbstractChannelHandlerContext.class:4.1.9.Final]
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) ~[MessageToMessageDecoder.class:4.1.9.Final]
at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111) ~[MessageToMessageCodec.class:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) ~[AbstractChannelHandlerContext.class:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) ~[AbstractChannelHandlerContext.class:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) ~[AbstractChannelHandlerContext.class:4.1.9.Final]
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1334) ~[DefaultChannelPipeline$HeadContext.class:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) ~[AbstractChannelHandlerContext.class:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) ~[AbstractChannelHandlerContext.class:4.1.9.Final]
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:926) ~[DefaultChannelPipeline.class:4.1.9.Final]
at io.netty.channel.embedded.EmbeddedChannel.writeInbound(EmbeddedChannel.java:274) ~[EmbeddedChannel.class:4.1.9.Final]
at net.minecraftforge.fml.common.network.internal.FMLProxyPacket.processPacket(FMLProxyPacket.java:99) [FMLProxyPacket.class:?]
at net.minecraft.network.NetworkManager.channelRead0(NetworkManager.java:147) [gw.class:?]
at net.minecraft.network.NetworkManager.channelRead0(NetworkManager.java:49) [gw.class:?]
at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) [SimpleChannelInboundHandler.class:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [AbstractChannelHandlerContext.class:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [AbstractChannelHandlerContext.class:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [AbstractChannelHandlerContext.class:4.1.9.Final]
at ic2.core.network.RpcHandler.channelRead0(RpcHandler.java:123) [RpcHandler.class:?]
at ic2.core.network.RpcHandler.channelRead0(RpcHandler.java:25) [RpcHandler.class:?]
at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) [SimpleChannelInboundHandler.class:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [AbstractChannelHandlerContext.class:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [AbstractChannelHandlerContext.class:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [AbstractChannelHandlerContext.class:4.1.9.Final]
at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.handleClientSideCustomPacket(NetworkDispatcher.java:382) [NetworkDispatcher.class:?]
at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.channelRead0(NetworkDispatcher.java:268) [NetworkDispatcher.class:?]
at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.channelRead0(NetworkDispatcher.java:72) [NetworkDispatcher.class:?]
at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) [SimpleChannelInboundHandler.class:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [AbstractChannelHandlerContext.class:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [AbstractChannelHandlerContext.class:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340) [AbstractChannelHandlerContext.class:4.1.9.Final]
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1334) [DefaultChannelPipeline$HeadContext.class:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362) [AbstractChannelHandlerContext.class:4.1.9.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348) [AbstractChannelHandlerContext.class:4.1.9.Final]
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:926) [DefaultChannelPipeline.class:4.1.9.Final]
at io.netty.channel.local.LocalChannel.finishPeerRead0(LocalChannel.java:443) [LocalChannel.class:4.1.9.Final]
at io.netty.channel.local.LocalChannel.access$500(LocalChannel.java:49) [LocalChannel.class:4.1.9.Final]
at io.netty.channel.local.LocalChannel$5.run(LocalChannel.java:397) [LocalChannel$5.class:4.1.9.Final]
at io.netty.channel.DefaultEventLoop.run(DefaultEventLoop.java:54) [DefaultEventLoop.class:4.1.9.Final]
at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:858) [SingleThreadEventExecutor$5.class:4.1.9.Final]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_381]
[15:12:26] [Netty Local Client IO #2/ERROR] [FML]: Network Disconnect: A fatal error has occurred, this connection is terminated
[15:12:26] [Netty Local Client IO #2/INFO] [EnderCore]: Reset configs to client values for com.enderio.core.common.config.ConfigHandler
[15:12:26] [Netty Local Client IO #2/INFO] [FluxNetworks]: FluxNetworkData has been unloaded
[15:12:26] [Netty Local Client IO #2/INFO] [mcjtylib_ng]: Client disconnected from server
[15:12:26] [Netty Local Client IO #2/INFO] [mcjtylib_ng]: Cleaning up RFTools dimensions
[15:12:26] [Netty Local Client IO #2/INFO] [Astral Sorcery]: Cleaning client cache...
[15:12:26] [Netty Local Client IO #2/INFO] [Astral Sorcery]: Cleared cached client data! Disconnected from server.
[15:12:26] [Netty Local Client IO #2/INFO] [scannable]: Building block state lookup table...
[15:12:26] [Client thread/INFO] [HammerCore]: Cleaning 0 textures from VRAM
[15:12:26] [Client thread/INFO] [HammerCore]: Interrupting 0 image download threads
[15:12:26] [Server thread/INFO] [FluxNetworks]: FluxNetworkData has been successfully loaded
I could swear this was a wrenchable capability of FFS at one point, but I don't see that its possible anymore.
Ideally the export-rate would be configurable.
Bonus if there are multiple tiers of configurable valves but totally not necessary :)
DISCLAIMER
I am using shaders and resource packs in the following screenshots. And while some of them may be the culprit of this issue, I've witnessed this even without any shaders or resource packs enabled way before I found out by hard that this mod was causing them. No hard/soft/vague crashes (because why would a graphical bug even cause a crash?), so I can't post a relevant log, although I can post one in case further action is needed.
I wasn't able to find a single issue about this made on this mod, so I guess I'll insist on being the first.
As always, solutions for this issue might work for everyone who's having this same issue but are 100% not guaranteed to work for those with even a slightly different issue. Regardless, I appreciate your input(s)!
Fancy Fluid Storage Version
3.2.6 (Latest for 1.18.2)
Minecraft Forge Version
40.2.9
Client or Server?
Crash Report (via. Paste.ee)
No crashes occurred with the mod.
Describe the bug
Whenever there's [any amount (mB) of] fluid inside a tank, entities and certain blocks will appear to render inside-out as if they have flipped normals. That and also some other graphical bugs. It's hard to thoroughly describe this bug with just text, so I'll provide some screenshots below.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Fluid is added to an FFS tank without any graphical bugs.
Screenshots
No Fluid in Tank
Fluid in Tank
Other Entities, Player Armor Rendering, Water Rendering
Additional context
This doesn't just occur with only water or lava in a tank. I've also tested this with other (acceptable) fluids such as molten soulsteel from Thermal Series.
This mod may or may not receive updates or support either for 1.18.2 or as a whole, so I won't keep any promises that this will be fixed. But hopefully, this can be looked at.
FancyFluidStorage Version: 2.1.3
MinecraftForge Version: 2837
Client or Server?:
Crash Report (via. Pastebin): https://pastebin.com/s1VtGJVf
What happens / happened?:
Client crash happened on server.
I made a tank, put some Essence Of Knowledge (from Thermal Foundation), then right clicked the Valve. The game crashed.
How can we reproduce it?:
FancyFluidStorage Version:
Fancy Fluid Storage-1.12-2.1.3.jar
MinecraftForge Version:
forge-14.21.4.2725
Client or Server?:
Crash Report (via. Pastebin):
https://pastebin.com/xLNU6yYW
It starts looping this Error-Msg as soon as I place down the valve and stops as soon as I activate the tank
What happens / happened?:
Storing Fluids works as normal, however the fluids can't be extracted with a bucket by right-clicking. When looking at the tank, it doesn't show the amount of fluid stored, just the material used (WAILA just shows glass, stone, ... but no information about the tank.
How can we reproduce it?:
Overlay-Render is turned off in config, might have something to do with it.
Modpack-Name:
InvicPackReloaded (Version 5.1)
https://www.curseforge.com/minecraft/modpacks/invicpackreloaded
Pictures:
No Tank-Info, No bucket extraction
Right-Clicking Opens Tank-UI, ...
... however it only shows the amount of fluid stored when hovering over certain spots.
Animation is shown when right-clicking (Same on Server and in Singleplayer)
FancyFluidStorage Version: 2.0.3-b11
MinecraftForge Version: 12.18.3.2239
Client or Server?:
Crash Report (via. Pastebin): No crash
RFtools Liquid Monitor is unable to see the level of a FFS tank. I spoke with the RFtools dev here ( McJtyMods/RFTools#1112 (comment) ) I'm sure this support would also open up for alot of other mods interaction.
FancyFluidStorage Version: 2.0.3
MinecraftForge Version: 12.18.3.1285
Client or Server?:
Crash Report (via. Pastebin):
What happens / happened?: Tanks inaccurately remembering fluid amounts upon world loading. Tanks that had just a little fluid in them will suddenly be completely full when I reopen my world.
How can we reproduce it?: I'm not sure.
FancyFluidStorage Version: 1.10.2-2.0.2-b9
MinecraftForge Version: 1.10.2
Client or Server?:
Crash Report (via. Pastebin): http://pastebin.com/sK7Q7pAh
What happens / happened?: Crashed client. I was breaking iron ore with my 3x3 drill from Actually Additions, holding shift to disable its 3x3 functionality. was not holding GRAVE for veinmine. Was in the ExtraUtilities2 Deep Dark (ID:-11325)
You told me to post it here from discord :P
FancyFluidStorage Version: v. 2.0.3 for minecraft 1.10.2
MinecraftForge Version: 12.18.3.2422
Client or Server?: I'm using ftb beyond with this installed into it so i'm not sure if its a client or server but the crash report says server but i'm playing singleplayer.
Crash Report (via. Pastebin): https://pastebin.com/0qGw653P
What happens / happened?: whenever i break a tank valve it doesn't get removed only becomes a ghost block and after a few tries to break it the game crashes.
How can we reproduce it?: I'm unsure as it only recently started happening and there was nothing wrong up till now.
From the curseforge description:
Modpack policy: One can use the mod in their modpacks, as long as they are crediting us properly for it.
As well, monetization is not allowed.
The MIT license allows unlimited commercial use. My recommendation would be either to just reword this to be more of a suggestion ("If you own a mod repost website, please don't post this mod") or to switch to a license that is compatible with that requirement such as CC BY-NC 4.0. Just know that a non-commercial license is no longer technically open source. But I don't think it's much of a problem for a minecraft mod, as long as you have all of the other freedoms.
this crash seems to be caused by FFS but it happends when using just CnB stuff. I do not even have a FFS built yet.
EDIT: I disabled this mod and it does not crash anymore, so its not caused by CnB itself.
FFS: Fancy Fluid Storage-1.10.2-2.0.1-b8.jar
Forge: forge-1.10.2-12.18.3.2202
Client or Server?:
Client stacktrace: http://pastebin.com/GaqjYpFv
Server stacktrace: http://pastebin.com/RNQS7dSd
Right clicking a chiseled block with the red negative paper thing makes my client crash and the server throw an error (server does not crash)
Given the whitelist you've provided in #23, it would be very powerful if that could be extended with an integer or float (percentage) which would indicate how much that type of block affects the volume of the tank.
I haven't the faintest notion how I'd break this down mathematically: possibly just by summing up the volume-value all the frame blocks and calculating the total volume from that (rather than by internal air blocks).
It would really only have meaning while in Whitelist mode.
Possible example:
minecraft:redstone_block 500 // Every frame block of redstone contributes 500 to total volume
2.0.3-b11:
12.18.3.2281:
Client or Server?:
Hello, I am experiencing a crash on load after attaching a RF Tools Weak Powercube to a Fancy Fluid Storage Metaphaser.
FancyFluidStorage Version: 1.12.2-2.2.4
MinecraftForge Version: 14.23.5.2838
Client or Server?:
Crash Report (via. Pastebin): https://pastebin.com/a6YANmK4
What happens / happened?:
Sometimes, server crash on block break event.
How can we reproduce it?:
Start a server with a small -xmx setting (this will make the garbage collector work more often)
Setup some quarry (the builder from rfTool can be a good choice because he break blocks very fast) in a dimension not charged by a player.
Suspected error:
I suspect crash append if gc run in isPartOfTank() method after getDimensionSafely() call.
Mobs are spawning inside of the tanks. When there is fluid inside the tank, the mobs are spawning inside the fluid.
Dimension id -2 which is a Space Station from Advanced Rocketry.
allowing a double walled hollow cube for the tank shape. I was thinking it would be nice to make a lava tank that is actually the walls of a room.
have a tank emit light to prevent mobs from spawning inside, or have fluids damage any mobs that spawn there.
allow pulling a valve that has fluid, but it loses any fluid it has in it unless you use a T.I.T.
I tried to empty the valve when it glitches, but was not able to break it without making the T.I.T
FancyFluidStorage Version: Fancy Fluid Storage-1.10.2-2.0.3-b11
MinecraftForge Version: forge 1.10.2-12.18.3.2422
Client or Server?: Client, offline
What happens / happened?: Whenever I leave and then come back in the dimension or restart the game, my fluid tanks get filled up entirely with whatever fluid is im them.
FancyFluidStorage Version:
1.12.2-2.2.3
MinecraftForge Version:
1.12.2
Client or Server?:
What happens / happened?:
Note that all this occurs with HWYLA set to display fluid in tanks under "Capability"
Looking at any block comprising a tank, it displays the type of fluid and the amount. This seems to be the built in WAILA compatability from FFS. Looking at the tank valve, it will list both HWYLA's built in fluid display and FFS's WAILA integration.
If I were to disable HWYLA's built in fluid display, it would affect liquid display for tanks from other mods, but leaving it on leads to redundancy when looking at the valve.
Maybe this could be fixed by providing a config or a button under HWYLA to display fluid amount only when looking at tank blocks instead of the valve, or make the entire tank visible to HWYLA and let it handle displaying fluid capacity. Or just include an option to disable FFS WAILA integration all together? Basically, I'd prefer to leave on HWYLA's default tank capacity setting and avoid redundancy.
This is more nitpicky, but the way FFS displays fluid levels could also be changed to display similar to how HWYLA does it natively, displaying the liquid followed by the amount as opposed to listing the liquid type and amount on separate lines. For example:
Liquid Blue Slime: 15000 mB / 40000 mB
vs.
Fluid: Liquid Blue Slime
Amount: 15000 mB/40000 mB
How can we reproduce it?:
Enable HWYLA's "Show tank data" under "Capability"
FancyFluidStorage Version:
Fancy Fluid Storage-1.12-2.1.3.jar
MinecraftForge Version:
Minecraft Version: 1.12.2(modded) forge-14.23.5.2768
Client or Server?:
Crash Report (via. Pastebin):
https://pastebin.com/zncZmLUS
What happens / happened?:
Immediately when 2nd block placed
How can we reproduce it?:
Running in a SP game.
Accidently placed a 2nd tank valve next to another valve that was already part of a formed tank w/liquid in it. The 2nd valve was not supposed to be part of a tank or anything, just added to the ground in front of it.
Hiya Lordmau5, we're excited that you've resumed development on this mod!
Request: Please allow users to specify a block whitelist (default: anything goes) so that players can only generate valid FFS structures with specific blocks.
(I've reviewed prior issues to ensure I'm not requesting something already rejected)
FancyFluidStorage Version:
1.10.2- 2.0.3-b11
MinecraftForge Version:
12.18.3.2511
Client or Server?:
Crash Report (via. Pastebin):
https://pastebin.com/a20SkZLL
What happens / happened?:
client crashed at random times
How can we reproduce it?:
just load a chunk with a tank in or unload it
FancyFluidStorage Version:
2.0.3-b11
MinecraftForge Version:
1.10.2
Client or Server?:
What happens?:
The tank doesn't output any fluid, expect if I use buckets, that could be cool to setup what valves can input/output
How can we reproduce it?:
Connect a fluid tank or any machine that uses fluids as input to a FFS tank
If this cannot be fixed, or you've abandoned this project:
I'm gonna try to reload your mod to make it more complex
FancyFluidStorage Version: 2.2.4
MinecraftForge Version: 14.23.5.2836
Client or Server?:
Crash Report (via. Pastebin): N/A
What happens / happened?: I am playing the modpack FTB Ultimate Reloaded v1.7.1. I have a tank with 2 valves, one input and one output, both connected with fluiducts (Thermal Dynamics v2.5.4.18). When I disconnect and come back, I see that the tank is "turned off" and the input pipe is no longer connected with the tank.
How can we reproduce it?:
FancyFluidStorage Version:
1.12-2.1.3.jar
MinecraftForge Version:
1.12.2
Client or Server?:
Crash Report (via. Pastebin):
https://pastebin.com/iqnURZRp
What happens / happened?:
Game keeps crashing, while im logging in the world just about to play.
How can we reproduce it?:
Just log in MC and wait, then crash happens.
I am loving this mod, I was hoping it would be able to store the botania mana, is this something that would be possible? I am trying to create water tank style structures in my skyblock and would love to have this ability.
The only complaint I have is I have to light the inside up or mobs spawn in the tanks.
FancyFluidStorage Version:3.1.0
MinecraftForge Version:1.16.5
Client or Server?:
Crash Report (via. Pastebin):https://pastebin.com/TXHvXVQ9
What happens / happened?:upon flying(Elytra) into an area with large FFS tanks holding IE oil, the server would crash leaving the client fine. These tanks had been fine for a long time, the eventually started causing crashes, I think other tanks on the server didn't cause the same crash. we suspect it was caused by a data race in the chunk loading
How can we reproduce it?:
FancyFluidStorage Version: 2.2.5
MinecraftForge Version: 14.23.5.2846
Is computercraft support implemented in the 1.12 branch? Using "peripheral.getMethods()" for the side the tank computer is on only returns the default "getDocs()" and "getMetadata()" methods. Seems like a lot of the code relating to CC is commented out in the branch, but I'm not really familiar with the CC api so not sure what all is required there.
It's possible I'm just doing something wrong! Happy to provide any other info if it helps.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.