Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade to 1.0 #63

Open
wants to merge 436 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
436 commits
Select commit Hold shift + click to select a range
124cb2d
Added web3
Flash-Git Aug 10, 2019
692a6fb
Added web3 dc
Flash-Git Aug 10, 2019
2b029a8
Updated dependencies
Flash-Git Aug 10, 2019
ec38bbf
Renamed Icon
Flash-Git Aug 10, 2019
858dd49
Styling
Flash-Git Aug 10, 2019
0e8cdbb
Updated var name
Flash-Git Aug 10, 2019
614320d
Cleaning
Flash-Git Aug 10, 2019
b084314
Added button
Flash-Git Aug 10, 2019
eefa598
Added onClick
Flash-Git Aug 10, 2019
4778665
Removed a
Flash-Git Aug 10, 2019
f5ab9a5
Added sidebar toggling to appstate
Flash-Git Aug 10, 2019
bca17ac
Styling
Flash-Git Aug 10, 2019
9939e6a
Styling
Flash-Git Aug 10, 2019
8de0a32
Accept toggling
Flash-Git Aug 10, 2019
25e7d07
Styling
Flash-Git Aug 10, 2019
cdeb729
//eslint-disable-next-line
Flash-Git Aug 10, 2019
05e7d19
Added getTradeItems
Flash-Git Aug 10, 2019
7aba11a
Added min width to input
Flash-Git Aug 10, 2019
b1d4258
Connected setAddresses
Flash-Git Aug 10, 2019
dc55327
Removed unused call
Flash-Git Aug 10, 2019
56e0c42
Added to context
Flash-Git Aug 10, 2019
ff93847
Integrating ENS
Flash-Git Aug 11, 2019
60645f1
Set up ENS
Flash-Git Aug 11, 2019
a20ed63
Can't find utils
Flash-Git Aug 11, 2019
913ecf0
Adding web3 address checks
Flash-Git Aug 12, 2019
9616977
Removed temp user state
Flash-Git Aug 12, 2019
335db15
Flipped connect msg
Flash-Git Aug 12, 2019
fa61a84
Added ens check
Flash-Git Aug 12, 2019
c341170
Removed ENS file
Flash-Git Aug 12, 2019
098da7e
Updated item format
Flash-Git Aug 12, 2019
3dda906
Cleaned item form
Flash-Git Aug 13, 2019
1faa1fe
Styling
Flash-Git Aug 13, 2019
c8e37b7
Added prevalidation
Flash-Git Aug 14, 2019
09e1609
Comments
Flash-Git Aug 14, 2019
9c473ec
Added ens ownership verification
Flash-Git Aug 14, 2019
b4c20bb
Added isUser
Flash-Git Aug 14, 2019
bef6f57
Removed green border
Flash-Git Aug 16, 2019
f041b5c
Updated dependencies
Flash-Git Aug 17, 2019
9be7095
Updated dependencies
Flash-Git Aug 20, 2019
496e64b
Merge branch 'hooks' of github.com:flash-git/arca into hooks
Flash-Git Aug 20, 2019
72c7eca
Updated dependencies
Flash-Git Aug 21, 2019
98153c8
Updated with development information
Flash-Git Aug 23, 2019
ab843c1
Updated dependencies
Flash-Git Aug 27, 2019
355c5f7
Merge branch 'hooks' of github.com:flash-git/arca into hooks
Flash-Git Aug 27, 2019
a0f3ee3
Cleaned code
Flash-Git Aug 28, 2019
80f2f94
Merge branch 'hooks' of github.com:Flash-Git/Arca into hooks
Flash-Git Aug 28, 2019
be68f04
Added update command
Flash-Git Aug 30, 2019
6b441fa
Added a description
Flash-Git Aug 30, 2019
47c0d44
Updated dependencies
Flash-Git Sep 3, 2019
7993cee
Switched to yarn
Flash-Git Sep 6, 2019
fdef210
Formatting
Flash-Git Sep 7, 2019
ee9a07f
Added btn component
Flash-Git Sep 7, 2019
26ac089
Renamed item network property "sent" to "status"
Flash-Git Sep 7, 2019
847098a
Added button
Flash-Git Sep 7, 2019
9446de6
Added txData shell
Flash-Git Sep 7, 2019
83e87b6
Removed unused import
Flash-Git Sep 7, 2019
fd25f29
Added sendTx
Flash-Git Sep 7, 2019
c164719
sendTx handling
Flash-Git Sep 7, 2019
753710c
Normalised button
Flash-Git Sep 7, 2019
bcc256b
Added width and height
Flash-Git Sep 7, 2019
e7ba6c1
Changed sent to status
Flash-Git Sep 7, 2019
2b91683
Refactoring web3state
Flash-Git Sep 7, 2019
bbd95d7
Added types
Flash-Git Sep 7, 2019
9acbd7a
Fixed button
Flash-Git Sep 7, 2019
82a6061
Added connection
Flash-Git Sep 7, 2019
5c66f10
Updated dependencies
Flash-Git Sep 8, 2019
763bf6e
Refactored Web3Context
Flash-Git Sep 8, 2019
b0a98de
Broke loading
Flash-Git Sep 8, 2019
54e9f05
Updated web3 checks
Flash-Git Sep 8, 2019
fb722f8
Added modifyItem
Flash-Git Sep 8, 2019
a4224ea
Refactored send
Flash-Git Sep 8, 2019
f0613da
Updating calls
Flash-Git Sep 8, 2019
c6a021d
Removed log
Flash-Git Sep 8, 2019
739edde
Changed ordering
Flash-Git Sep 8, 2019
98bce42
Added loader
Flash-Git Sep 8, 2019
45a05d0
Added erc20 loading
Flash-Git Sep 8, 2019
068966a
End of page line
Flash-Git Sep 9, 2019
6a4f9e6
Added erc721s
Flash-Git Sep 9, 2019
a732495
Added index to map
Flash-Git Sep 9, 2019
dbf3784
txData isn't a function
Flash-Git Sep 9, 2019
915d966
Added userCheck
Flash-Git Sep 9, 2019
70bddbe
Cleaned up loader
Flash-Git Sep 9, 2019
f9fa5f9
Added loader
Flash-Git Sep 9, 2019
3f7699f
Removed button
Flash-Git Sep 9, 2019
4a70d69
Added loading to load()
Flash-Git Sep 9, 2019
e508728
Cleaning calls
Flash-Git Sep 9, 2019
9d2928c
Added enable
Flash-Git Sep 9, 2019
ffa4ccd
Added enable
Flash-Git Sep 9, 2019
7c01714
Add enable
Flash-Git Sep 9, 2019
7665530
Added connect
Flash-Git Sep 9, 2019
827261f
Cleaning
Flash-Git Sep 10, 2019
d4a70d8
Added handling of network change
Flash-Git Sep 10, 2019
fd0f255
Changed width to min-width
Flash-Git Sep 10, 2019
9b3bd04
Added promise handling
Flash-Git Sep 10, 2019
b2e8266
Removed error handling on setArca
Flash-Git Sep 10, 2019
1d92515
Updated dependencies
Flash-Git Sep 10, 2019
06b3b3e
Added check
Flash-Git Sep 10, 2019
9f9e5fc
Added web3 provider
Flash-Git Sep 10, 2019
69bded4
Added whitespace trimming
Flash-Git Sep 10, 2019
32c3c0c
Added enable message in console
Flash-Git Sep 10, 2019
e31eb9f
Improved loading
Flash-Git Sep 10, 2019
f138b06
Improved ens connection
Flash-Git Sep 10, 2019
01eeffd
Made div cosmetic button
Flash-Git Sep 10, 2019
041ce75
Console logging
Flash-Git Sep 10, 2019
fef3ae1
Added loaded items to trade context
Flash-Git Sep 10, 2019
79c29fb
Added setUserItems and setTradeItems
Flash-Git Sep 10, 2019
ea38d4b
Addded id
Flash-Git Sep 10, 2019
080252b
Fixed modify trade item status
Flash-Git Sep 10, 2019
d457790
Imported icon
Flash-Git Sep 10, 2019
c86f1ad
Styling
Flash-Git Sep 10, 2019
0ab93dc
Moved elements
Flash-Git Sep 10, 2019
75d3c83
Added remove button
Flash-Git Sep 10, 2019
f502af7
Refactored loader
Flash-Git Sep 11, 2019
9fbd1f0
Added setAccepted
Flash-Git Sep 11, 2019
6b2c314
Added getting accepted
Flash-Git Sep 11, 2019
0419952
Removed TODO
Flash-Git Sep 11, 2019
8305470
updated dependencies
Flash-Git Sep 12, 2019
c5625f5
Shortened update command
Flash-Git Sep 13, 2019
df66845
Updated dependencies
Flash-Git Sep 13, 2019
ded3dcc
Updated dependencies
Flash-Git Oct 4, 2019
14ef277
Updated Dependencies
Flash-Git Oct 13, 2019
3330467
Updated scripts
Flash-Git Oct 16, 2019
295e818
Upgraded dependencies
Flash-Git Oct 18, 2019
6425daa
Updated dependencies
Flash-Git Dec 13, 2019
feac6c7
Updated dependencies
Flash-Git Dec 22, 2019
5d213a8
Updated dependencies
Flash-Git Jan 25, 2020
45b6fd1
Formatting
Flash-Git Jan 28, 2020
a46e21b
Updated dependencies
Flash-Git Nov 7, 2020
48259dd
Updated dependencies
Flash-Git Nov 7, 2020
7a865ed
Moved concurrently to dev dependencies
Flash-Git Nov 19, 2020
9d4573d
Updated homepage
Flash-Git Nov 19, 2020
857e147
Converted server to typescript
Flash-Git Nov 20, 2020
87df20e
Merge branch 'hooks' into issue_9-typescript
Flash-Git Nov 20, 2020
969f836
Moved concurrently to dev dependency
Flash-Git Nov 20, 2020
51106d9
Upgraded dependencies
Flash-Git Nov 20, 2020
d7eb34c
Updated file extensions to .ts
Flash-Git Nov 20, 2020
b861088
Updated file extension to tsx
Flash-Git Nov 20, 2020
96f71a7
Upgraded packages
Flash-Git Nov 20, 2020
9f10bc1
Updated extension
Flash-Git Nov 20, 2020
8f62d86
Added react d.ts
Flash-Git Nov 20, 2020
d931d03
Added initial context definitions file
Flash-Git Nov 20, 2020
4642d00
Converted alerts context to typescript
Flash-Git Nov 20, 2020
9621e51
Converted app context to typescript
Flash-Git Nov 20, 2020
f7f2ff9
Updated Alerts
Flash-Git Nov 20, 2020
3c0a80c
Updated alerts
Flash-Git Nov 20, 2020
bcd8834
Converted trade context to typescript
Flash-Git Nov 20, 2020
1368787
Converted user context to typescript
Flash-Git Nov 20, 2020
d648d0a
Added initial user types
Flash-Git Nov 20, 2020
63088dd
Added types
Flash-Git Nov 20, 2020
4ec7d9c
Converted web3 context to typescript
Flash-Git Nov 21, 2020
26f8947
Added types
Flash-Git Nov 21, 2020
77f7904
Added types folder
Flash-Git Nov 28, 2020
180e506
Added types folder
Flash-Git Nov 28, 2020
c3d6990
Added types to abiItems
Flash-Git Nov 28, 2020
6442ae6
Added Alert Type
Flash-Git Nov 28, 2020
38b9c6f
Updated import name
Flash-Git Nov 28, 2020
cb8e114
Added types to loading
Flash-Git Nov 29, 2020
fc2de4f
Updated props
Flash-Git Nov 29, 2020
ae41ab6
Updated uuid calls
Flash-Git Nov 29, 2020
160f3e7
Added types to Tradebox
Flash-Git Nov 29, 2020
33703f7
Added types to web3state
Flash-Git Nov 29, 2020
197fe79
Merge pull request #12 from Flash-Git/issue_9-typescript
Flash-Git Nov 29, 2020
f443603
Updated dependencies
Flash-Git Nov 29, 2020
d771f9a
Updated scripts
Flash-Git Nov 30, 2020
70e648a
Added /build to ignore
Flash-Git Nov 30, 2020
658846c
Moved server into /server
Flash-Git Nov 30, 2020
3c234b7
Merge pull request #14 from Flash-Git/issue_10_11-restructure
Flash-Git Nov 30, 2020
2662b80
Button colour tweak
Flash-Git Nov 30, 2020
847a689
Replaced web3 with ethers
Flash-Git Nov 30, 2020
a1e065b
Replaced web3 with ethers
Flash-Git Nov 30, 2020
0969d09
Removed Tradestate
Flash-Git Nov 30, 2020
58ea308
Updated abis
Flash-Git Dec 1, 2020
c03d6c4
Added call/send functions
Flash-Git Dec 1, 2020
8980ef6
Updated web3 state
Flash-Git Dec 1, 2020
5f2016f
Set up new Web3State
Flash-Git Dec 3, 2020
2e40345
Set up new Web3Reducer
Flash-Git Dec 3, 2020
62d38e2
Set up new Web3 types
Flash-Git Dec 3, 2020
dc9a330
Started rewriting UserState
Flash-Git Dec 3, 2020
4cf3692
Filled UserState actions
Flash-Git Dec 3, 2020
cf61f0f
Updated new UserState types
Flash-Git Dec 3, 2020
486b8bb
Updated types
Flash-Git Dec 3, 2020
cf0bab2
Pulled abi from file
Flash-Git Dec 3, 2020
3d2f439
Updated to use refactored state
Flash-Git Dec 4, 2020
324f7ed
Added Partner State
Flash-Git Dec 4, 2020
4c1c3b6
Updated sendState
Flash-Git Dec 4, 2020
a9ab0d7
Updated return types
Flash-Git Dec 4, 2020
c15ec4a
Simplified PreTradeForm using ethers
Flash-Git Dec 4, 2020
7e99b7a
Updated navbar to use refactored state
Flash-Git Dec 4, 2020
18f3c76
Disabled sidebar
Flash-Git Dec 4, 2020
d236aff
Updated Box with new state
Flash-Git Dec 4, 2020
6fd4619
Updated ItemForm with new state
Flash-Git Dec 4, 2020
d3740b9
Renamed RemoveButton for consistency
Flash-Git Dec 4, 2020
27002f8
Added more actions to states
Flash-Git Dec 4, 2020
c00dd0c
Uncommented state.providers
Flash-Git Dec 4, 2020
ef653b5
Removed TradeState types
Flash-Git Dec 4, 2020
09a5f22
Added cancelState to SendBtn
Flash-Git Dec 4, 2020
ab5627c
Updated ENSForm with new State
Flash-Git Dec 4, 2020
d650269
Updated Accepted to new state
Flash-Git Dec 4, 2020
3a15e39
Updated Items to new state
Flash-Git Dec 4, 2020
0277e6e
Added trade action
Flash-Git Dec 5, 2020
08808ed
Implemented loading from arcaContract
Flash-Git Dec 5, 2020
fe5c20c
Formatting
Flash-Git Dec 5, 2020
b9d0842
Added actions to userState reducers
Flash-Git Dec 5, 2020
0c2f5a9
Removed TradeState
Flash-Git Dec 5, 2020
982e818
Removed TradeState types and added UserState types
Flash-Git Dec 5, 2020
dafd9b1
Merge pull request #17 from Flash-Git/issue_13-state_update
Flash-Git Dec 5, 2020
4fda5ef
Implemented toggleAccepted
Flash-Git Dec 5, 2020
7bb3bfb
Implemented loadItems
Flash-Git Dec 5, 2020
392e35f
Implemented sendItem and cancelItem
Flash-Git Dec 5, 2020
e492e25
Cleaned up types and params
Flash-Git Dec 5, 2020
9b3e89b
Hardcoded userbox
Flash-Git Dec 5, 2020
5f01a11
Updated types and params
Flash-Git Dec 5, 2020
9f34917
Implemented addItem and refactored form
Flash-Git Dec 5, 2020
ef595d5
Removed loader and enable
Flash-Git Dec 5, 2020
0320643
Disabled ens
Flash-Git Dec 5, 2020
6c1c290
Split items in state
Flash-Git Dec 6, 2020
d6ff637
Split items in state
Flash-Git Dec 6, 2020
6a838fd
Cleaned variables using better types
Flash-Git Dec 6, 2020
021b1d8
Updated types
Flash-Git Dec 6, 2020
94852e0
Fixed setStatusState and added try catch
Flash-Git Dec 6, 2020
242626a
Updated Transaction type to TransactionResponse
Flash-Git Dec 6, 2020
4631e6f
Added windowEth as a workaround for window's type
Flash-Git Dec 7, 2020
d390959
Merge pull request #19 from Flash-Git/issue_18-implement_arca_calls
Flash-Git Dec 7, 2020
a477e9e
Updated Alerts
Flash-Git Dec 7, 2020
d4ac4b0
Updated alert styling
Flash-Git Dec 7, 2020
f053a7e
Updated alert types
Flash-Git Dec 7, 2020
d35872f
Added alert for invalid addresses
Flash-Git Dec 7, 2020
f90a287
Updated state with ethers validation
Flash-Git Dec 7, 2020
fc01ff2
Added temporary web3 connectivity to Home
Flash-Git Dec 7, 2020
205fff8
Added untested alert to provider error event
Flash-Git Dec 7, 2020
8f7759a
Cleaned up Accepted and added alert
Flash-Git Dec 7, 2020
34d244d
Split items, fixed small issues and added alerts
Flash-Git Dec 7, 2020
56ac9c5
Corrected param name
Flash-Git Dec 7, 2020
e91851e
Added null to type options for accepted state
Flash-Git Dec 7, 2020
a673149
Improved error handling
Flash-Git Dec 7, 2020
843211f
Merge pull request #23 from Flash-Git/issue_20-fix_alerts
Flash-Git Dec 7, 2020
8319303
Added helper method for displaying short address
Flash-Git Dec 8, 2020
665b169
Added ability to remove local items
Flash-Git Dec 8, 2020
934db99
Added manual setting of alert ids for removals
Flash-Git Dec 8, 2020
8b3d942
Removed comment
Flash-Git Dec 8, 2020
19aee76
Cleaned up basic logic
Flash-Git Dec 8, 2020
952eba9
Added validation to item form
Flash-Git Dec 8, 2020
2c408ce
Styling
Flash-Git Dec 8, 2020
c171220
Removed unused imports
Flash-Git Dec 8, 2020
9c13c29
Updated dependencies
Flash-Git Dec 8, 2020
143efff
Updated README
Flash-Git Dec 9, 2020
47f019c
Added licence and contribution sections
Flash-Git Dec 9, 2020
89e4366
Added disclaimer
Flash-Git Dec 9, 2020
46cd32b
Added connect code to PreTradeForm
Flash-Git Dec 12, 2020
1839278
Merge pull request #31 from Flash-Git/issue_26-add_connect_button
Flash-Git Dec 12, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -64,4 +64,7 @@ config/keys.js

.vscode/

client/src/res/
client/src/res/

# production
build/
82 changes: 59 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,25 +1,61 @@
# ARCA - The Ethereum Trading Platform
##### [Ethereum ÐApp live on the Rinkeby and Goerli testnets](https://etharca.com)
# Arca - The Ethereum Trading Platform

Arca lets anyone open a trading box with any other Ethereum address and safely trade multiple different tokens at a time directly from your wallet.
Ethereum ÐApp ~~live~~ **UNDER MAINTENANCE** on the Rinkeby and Goerli testnets at [etharca.com.](https://etharca.com)

Arca lets anyone open a trading box with any other Ethereum address and safely atomically trade multiple different tokens at a time directly from your wallet.
Currently supports both ERC20 and ERC721 tokens.
___

## Instructions:

### Step 1 - Connect
-Go to https://etharca.com
-Load up any 2 Ethereum addresses
![Image of Arca_1](https://i.imgur.com/6Hb5HhC.png)

### Step 2 - Add Orders
-Use the sidebar to add a token to your box
-Send the order to the Blockchain (the token(s) do not leave your account)
![Image of Arca_2](https://i.imgur.com/nlnC6Mz.png)

### Step 3 - Execute Trade
-Accept the trade
-Wait for your trade partner to accept
-The Arca contract will execute the swap (make sure to have the tokens in your wallet)
-Done
![Image of Arca_1](https://i.imgur.com/tLwVBVv.png)

## Ongoing Development

This was written as my first React project and hooks had not even been fully released yet.
In response to this, a full rewrite of the front end is ongoing at my discretion.

- Arca's front end is being [rewritten](https://github.com/Flash-Git/Arca/tree/hooks). (400+ Commits)
- Arca's contract is being rewritten to support meta transactions following the Gas Station Network Alliance specification

## Usage Instructions

Find someone you want to trade tokens following the ERC20 or ERC721 standards with.

- Add your address and theirs as inputs

- Add the contract address and balance/id of a token you want to trade and repeat this until you have added them all

- Approve the trade once both you and your trade partner are satisfied with the outcome

The swap will happen atomically.

## Developer Instructions

Download the source code from the git repository:

```bash
git clone [email protected]:Flash-Git/Arca.git
```

Navigate to the root of the project and install the dependencies for both the client and server:

```bash
cd Arca
yarn devInstall
```

Start both the client and server:

```bash
yarn dev
```

Open your browser and navigate to your local address on port 3000:

<http://localhost:3000/>

To interact with the Ethereum Blockchain you will need to inject a Web3 Provider into the page. This is most often done with [Metamask](https://metamask.io/download.html).

## Contributing

Pull requests are welcome. Please open an issue first to discuss what you would like to change.

## License

[MIT](https://choosealicense.com/licenses/mit/)
Loading