Closed splix closed 8 years ago
For clarification, you are proposing a API Wrapper for both the existing RPC and IPC client in Java? As opposed to the EthereumJ which is a full client implementation.
I think it is a good idea, and fairly small project compared to a full client. On a similar subject, is EthereumJ implementing a light client yet?
Yes, API wrapper, a low level around JSON RPC, and a high level on top of it for interacting with contracts.
EthereumJ is a full client implementation, people can probably use it as embedded node, I even think it's EF goal for this project. But it's too heavyweight solution.
I think it is a great idea, I believe it would find a lot of use.
I can start this project this weekend.
Any suggestions how to name this project?
I would like to help with coding too.
One of the most common criticisms this project gets is that it is just a cut&paste. New code being added should be named in a way that marks it clearly as ETC in origin.
How about jetcrpc j-etc-rpc jclassic-rpc etc-rpc4j those are all pretty business-like. Maybe there are some crazier ideas...
Moving this to its own topic so it doesn't clutter the thread.
There is no reason not not use the Ethereum name, it would work with both, since its an RPC client.
The pragmatic course of action for the Ethereum classic/original community is to be consistent with our assertion that we hold legitimate and more logical claim to the Ethereum name space.
I recommend something space related, like SpaceCom or EtherCommander
@splix this project should be very straight-forward. The big question in my mind is how to treat the domain objects. Are you of a mind to use JSON-like Map<String, Object> structures or a declared set of strictly-typed domain classes?
I suspect ethereumJ probably already has spec'd the domain objects -- the path of least resistance would be to start from there.
@ericsomdahl I'm not a big fan of names with xxxx4j
or xxxx4java
, like it was popular 15 years ago :) and I don't think name should indicate that it's written by classic team, as we're writing lib that can be used for any of ethereum node and chain, so project name is not the best place for politics imho. org.ethereumclassic.
package is enough to stand for itself :)
We need something simple and clean for a name, maybe with using ether. I see following words as a part of or consonant to project name:
I like making up fictitious names for a projects, or playing with related words. Imho name should describe the project, but something easy to remember, to pronounce and to google. But nothing comes to mind at this moment.
I'm planing to use strictly typed domains classes. My idea to provide few layers of control, layer by layer, from low level RPC to hight level control of groups of related structures and contract execution. Support both Geth and Parity, with all extended methods, and for every chain. Going to make it Async First.
There is one important question left, I've not decided yet which java version to use. Java7 is still used by some platform, including Android. And there is nothing imho that requires Java8. I will probably start with Java7, and later we'll figure it out.
A Java library to operate through Ethereum JSON RPC
Java is standard de facto for corp and fintech development, if we want to have clients from big firms it's extremely important to provide full Java support for them (and EthereumJ is not a solution).
We need flexible client that can connect to Parity and Geth:
I have experience with connecting Java apps to Ethereum and I can easily develop this library. But I will appreciate any help, as I have limited time. I need help with writing documentation and examples. And also we need a good name for this project.
If everybody agree that it's a good idea I can start with this project. Let's discuss