goosefx1 / gfx-web-app Goto Github PK
View Code? Open in Web Editor NEWGooseFX - Your Solana DeFi Destination. Trade Perps, Earn Yield in SSL Pools, Stake GOFX & Get Rewarded
Home Page: https://app.goosefx.io
License: MIT License
GooseFX - Your Solana DeFi Destination. Trade Perps, Earn Yield in SSL Pools, Stake GOFX & Get Rewarded
Home Page: https://app.goosefx.io
License: MIT License
Input:
git clone https://github.com/GooseFX1/gfx-web-app.git
cd gfx-web-app
yarn --pure-lockfile
yarn start
Output:
Starting the development server...
Error: error:0308010C:digital envelope routines::unsupported
at new Hash (node:internal/crypto/hash:71:19)
at Object.createHash (node:crypto:133:10)
at module.exports (/Users/jordan/gfx-web-app/node_modules/webpack/lib/util/createHash.js:135:53)
at NormalModule._initBuildHash (/Users/jordan/gfx-web-app/node_modules/webpack/lib/NormalModule.js:417:16)
at handleParseError (/Users/jordan/gfx-web-app/node_modules/webpack/lib/NormalModule.js:471:10)
at /Users/jordan/gfx-web-app/node_modules/webpack/lib/NormalModule.js:503:5
at /Users/jordan/gfx-web-app/node_modules/webpack/lib/NormalModule.js:358:12
at /Users/jordan/gfx-web-app/node_modules/loader-runner/lib/LoaderRunner.js:373:3
at iterateNormalLoaders (/Users/jordan/gfx-web-app/node_modules/loader-runner/lib/LoaderRunner.js:214:10)
at iterateNormalLoaders (/Users/jordan/gfx-web-app/node_modules/loader-runner/lib/LoaderRunner.js:221:10)
/Users/jordan/gfx-web-app/node_modules/react-scripts/scripts/start.js:19
throw err;
^
Error: error:0308010C:digital envelope routines::unsupported
at new Hash (node:internal/crypto/hash:71:19)
at Object.createHash (node:crypto:133:10)
at module.exports (/Users/jordan/gfx-web-app/node_modules/webpack/lib/util/createHash.js:135:53)
at NormalModule._initBuildHash (/Users/jordan/gfx-web-app/node_modules/webpack/lib/NormalModule.js:417:16)
at /Users/jordan/gfx-web-app/node_modules/webpack/lib/NormalModule.js:452:10
at /Users/jordan/gfx-web-app/node_modules/webpack/lib/NormalModule.js:323:13
at /Users/jordan/gfx-web-app/node_modules/loader-runner/lib/LoaderRunner.js:367:11
at /Users/jordan/gfx-web-app/node_modules/loader-runner/lib/LoaderRunner.js:233:18
at context.callback (/Users/jordan/gfx-web-app/node_modules/loader-runner/lib/LoaderRunner.js:111:13)
at /Users/jordan/gfx-web-app/node_modules/react-scripts/node_modules/babel-loader/lib/index.js:59:103 {
opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
library: 'digital envelope routines',
reason: 'unsupported',
code: 'ERR_OSSL_EVP_UNSUPPORTED'
}
Node.js v18.7.0
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
Intent: Collapsing the order form is not in-line with normal user expectations when deciding to expand the order book. To keep behavior aligned, we do not want the order form to disappear when the user selects the button to expand the order book.
The default number of rows displayed in the order book is 10.
When a user clicks the expand button on the order book, that displayed rows count increases to 20.
Requirements:
Currently, in the "create single nft" flow, when a user uploads a file, the preview image is firing a network request. This request errors out and prevents the preview to render. This is unneeded and should be removed.
See antd docs for info: https://ant.design/components/image/
When the input fields are updated with an errored preview image, it will remove the error message. It is likely that removing the network request will fix this but make sure that it does not appear under any circumstance
No "eye" icon and no click events should fire on either preview image. The only action on the small preview should be the delete action
There are several cases in the NFT market where the theme font 'Montserrat' is not being render in the UI. Go through all of the component styles and make sure that all styles are inheriting this font family
The route for the NFTDetails
and Sell
component pages use an optional route param of :nftMintAddress
. The component is currently not set up to read that route param and ensure that the component has the data it needs to render.
import { useParams } from 'react-router-dom'
const params = useParams<IAppParams>()
params.nftMintAddress
Create a useEffect hook that evaluates if the route param exists and the current context
if param "nftMintAddress" is present && general and nftMetadata === undefined, make a web3 call:
getParsedAccountByMint(nftMintAddress) then setGeneral() and setNftMetadata()
The component should only render the JSX if general and nftMetadata are defined.
A working solution should allow the user to paste in or reload the url "https:localhost:3000/NFTs/details/" and "https://localhost:300/NFTs/sell/" and see all the details data.
NFT Display - Image attached below - Collected NFT gallery is displaying images in NFTs in various sizes. We need to ensure the gallery view follows a strict grid, and images are the same size.
The current state does not enforce consistency of img dimension: see below
Refer to the V2 designs to enforce a 190px by 190px. If the height exceeds 190, fill the width and let the image overflow down the y axis
Currently "Created" tab is not reading from collected
<NFTDetails mode="my-created-NFT" backUrl={backUrl} handleClickPrimaryButton={() => setVisible(true)} />
inside the modal. Currently, NFTDetails uses data from the NFTDetails Context but if a user creates an NFT that does not exist in our DB then there will be no id to fetch. This requires an optional data
prop to be created where all of the nft data from the selected nft can be passed.Description: Fix a display bug with the horizontal scroll bar showing up at the bottom of the market selector drop down on the crypto trading page.
Requirements:
Just to start @Jonathan-Multivurse:
Usually, a DeFi app requires the user to connect the wallet which involves 2 clicks: the first click on the "connect wallet" button in the top right corner, the second click for choosing the wallet. e.g. https://www.orca.so/
However, this is not the case in our current app: we need three clicks. We might need to change the source code for the library we used for wallet connect to remove the additional click.
We are currently doing separate calculations for the same variables on the synths display. So we wanted to do the calculations on the backend and use that single source for all of the display variables.
Web app has to be more mobile friendly (www.app.goosefx.io)
See screenshots below for issues on iPhone 11 Pro:
Make sure any changes don't break the web, desktop, iPad responsiveness.
The footer carousel on the NFT page needs proper dimensions to account for its parents width while keeping the controls visible.
Currently, its width exceeds the boundaries of the page and the controls to scroll left and right are pushed outside the bounds of the page making them not visible or clickable.
Implement styles so that the carousel fits within the boundaries of its container so the controls are visible and clickable.
There is georestriction enabled from amplify in AWS.
Currently it is a domain level restriction for app.goosefx.io/
We do NOT need it currently for NFT store: https://app.goosefx.io/NFTs
Restriction should not be domain level and should be unique and only enabled for Synths, Crypto Trading, and Farming.
The navbar height is suppose to be 80px in height. Currently it is 96px
Additionally, the icons each have the incorrect height and width. Their heights should be 27px and their widths should be auto to prevent warping them.
The "Crypto" tab icon should be updated to match the latest comps
Make sure the the "Transaction History" tab is reading from the NFTDetailsProvider
"bid" property which is an array of bids.
If the array is empty, display the caption with a button that allows the user to place a bid. When clicked, that button should open a modal and capture the bid info and make a post request.
Refer to the designs as needed - https://www.figma.com/file/n8hazf3L3NMHBuuDxlK7qt/GooseFx-UI%2FUX-Web-App?node-id=1737%3A2244
We want to enhance the order book functionality by allowing a user to click values in the amounts column and having those amounts prefill in the order form above.
Currently, clicking the price column values will auto populate the price in the order form. (that is the desired behavior for the amount column also)
Requirements:
Refer to the V2 layout for home page
Update the current home page layout to use NFT Marketplace (UI.UX) 2.0
The api for floor and volume have not been created so just use the current data being returned by /all-collections
endpoint.
Use dummy data for price value but use title
and profile_pic_link
from returned data.
For the global search, use the data in allCollections
within the collections context data source. This feature essentially will be a filter on all collections via the search input.
If focus is brought to the searchbar and there is no characters input, display an empty results box with "Start typing to search collections"
If there is one or more characters typed in the searchbar, fill in the results with a maximum of 5 collections.
If there are no results, display a message in the box that says "No results found"
See image below for reference. See Figma designs for more details as needed
The Home page of the NFT Market has a banner that defaults to being expanded but optionally has a button to collapse it. Currently that button is not active and the banner cannot collapse.
A toggle function needs to be attached to the chevron below the image to activate expand and collapse. The text and call-to-action button need to change their size and position for the collapsed state. See image below
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.