Commit Graph

307 Commits

Author SHA1 Message Date
James Grugett
63b7f64683 Listen for folds in contract page 2022-02-06 16:55:14 -06:00
James Grugett
6914e5d706 Fix merge error 2022-02-03 21:11:59 -06:00
mantikoros
03f36cf954
User profile (#44)
* add id, userId to comment

* change user info cloud function and script; move cleanUsername to common

* change user info script

* fix rules

* add fund button: useLocation hook

* profile page

* merge

* profile stuff

* avatar uploading to storage bucket

* changeUserInfo: use transaction

* Styles for profile page

* Edit mode for profile, and more styles

Co-authored-by: James Grugett <jahooma@gmail.com>
2022-02-03 21:04:56 -06:00
James Grugett
552e6e6c3a
Custom feed (#43)
* Show custom feed of contracts from folds your follow or have bet on.

* Add tw-elements UI library

* Add loading spinner while feed loads

* Switch from onSnapshot to our listenForValues, which doesn't set with partial cached values

* Change home tags to communities

* Remove tw-elements for now
2022-02-03 18:13:04 -06:00
James Grugett
fdbaa5270b Show hot markets in fold feed 2022-02-02 23:58:27 -06:00
James Grugett
f80ef1cd34 Add hot markets to home feed 2022-02-02 00:40:46 -06:00
mantikoros
375ce69b7d yarn devdev 2022-02-01 21:23:06 -06:00
James Grugett
b95f258763 Add package.json to common directory, and lodash dependency 2022-02-01 12:59:51 -06:00
James Grugett
7e15c2870b Sort folds by followers in fold tag list 2022-02-01 12:47:31 -06:00
James Grugett
7c50b55331 Match lowercase tags for folds 2022-02-01 12:29:14 -06:00
James Grugett
565ded1063 Add folds links in market, hide tags behind Show tags toggle. 2022-02-01 12:06:42 -06:00
James Grugett
ff4bb3330a Change back to isProd = true 2022-01-30 22:29:16 -06:00
James Grugett
00b7f3505f Listen for contract updates in folds feed 2022-01-30 22:12:12 -06:00
mantikoros
f06ca8305c
Resolve prob (#41)
* rename MKT to PROB; show resolved probability; move format utilities to common

* ProbabilitySelector

* resolve to PROB

* prob and mkt labels
2022-01-30 15:51:30 -06:00
jahooma
ac9af1acd6 Don't load onSnapshot from cache in hook listen for contract (could help 404 errors?) 2022-01-29 23:05:32 -06:00
mantikoros
d9c67e8d49 new signed-out homepage 2022-01-26 18:21:25 -06:00
jahooma
348c8d565a Fold delete 2022-01-26 14:56:15 -06:00
Austin Chen
e4377ee3a3
Allow betting directly from the activity feed (#36)
* Show a popup for betting on the Activity feed

* Replace the popup with a YES/NO selector

* Autofocus the bet amount

* Hide BetRow when not appropriate

* Make bet modal larger on desktop

* Default to YES if no bet choice has been made yet
2022-01-26 14:08:03 -06:00
jahooma
76841e53b1 Follow and unfollow folds 2022-01-26 14:03:32 -06:00
jahooma
2ea05f8913 Folds query on lowercase tags. Adding to description updates tags & lowercaseTags fields. 2022-01-25 17:52:21 -06:00
jahooma
8b0091f30d Split out create fold button. Show about description on /folds 2022-01-25 17:02:02 -06:00
James Grugett
8b9d0e5dba
New fold page UI with tabs (#37)
* Tabbed fold page

* Implement market, leaderboard tab views for fold. And edit dialog

* Add about field to Fold
2022-01-25 14:47:25 -06:00
Austin Chen
13590bf5d1 Surface user emails in /admin 2022-01-24 00:48:10 -06:00
jahooma
bc3e43802b Listen for new folds on /folds 2022-01-23 23:48:10 -06:00
jahooma
b059a44acc Use fold hook 2022-01-23 00:51:19 -06:00
jahooma
aa1022546d Implement leaderboards for folds! 2022-01-22 17:59:50 -06:00
jahooma
0617fedb17 Add /markets for fold 2022-01-22 11:39:35 -06:00
mantikoros
4698d119b4 activity, withoutAnteBets: check for undefined 2022-01-22 11:15:14 -06:00
jahooma
d357f51883 Reorg homepage. No feed when not signed in, add back hot & closing soon for signed 2022-01-21 18:28:12 -06:00
James Grugett
60f68b178d
Folds (#34)
* Fold type, fold page, query for fold contracts

* Tsconfig: target esnext, nounused locals: false

* Store tags in field on contract. Script to update contract tags

* Show tags on fold page

* Load all fold comments server-side to serve better feed

* Fix the annoying firebase already initialized error!

* Add links to /edit and /leaderboards for fold

* Page with list of folds

* UI for creating a fold

* Create a fold

* Edit fold page
2022-01-21 17:21:46 -06:00
mantikoros
4528615863
Private user (#32)
* PrivateUser

* createUser: create private user; detect multiple signups

* include user properties in private user

* script: create private users

* unsubscribing from market resolution emails

* track total deposits
2022-01-18 21:36:46 -06:00
jahooma
142feaffff Don't show unlisted contracts in closing soon 2022-01-18 13:17:56 -06:00
mantikoros
908c8c03e6
Create user cloud function (#31)
* createUser cloud function; change User object

* initial commit

* listenForLogin: avoid race condition

* createUser: allow capital letters in username

* remove debugging

* leaderboard: empty url for undefined avatar image
2022-01-18 01:18:38 -06:00
James Grugett
6625983bb7
Leaderboards 🏅 (#30)
* Simple leaderboards

* Filter out SG from traders. Center leaderboard. Use Nextjs Image.

* Add leaderboards menu option

* Put leaderboards side-by-side on large screens

* Add medal emoji
2022-01-17 21:20:25 -06:00
jahooma
4d975ff512 Add closing soon section to home 2022-01-17 16:54:00 -06:00
jahooma
56c7e2597d Schedule cloud function to update user metrics: totalPnL, creatorVolume 2022-01-17 15:39:34 -06:00
Austin Chen
7d7286b1c1
Denormalize the avatar URL on contract creation (#29) 2022-01-16 01:03:59 -05:00
Austin Chen
279437ba08
List users on admin page (#28)
* Admin page using gridjs

* Move hook into separate file

* Link to each user's Manifold and Firestore /user entry

* Gate admin access to Austin/James/Stephen

* Don't leak the existence of /admin

* Add a custom 404 page that directs to Discord.

* Fix broken window.location.href on NextJS server
2022-01-15 22:09:15 -05:00
jahooma
f6079e68d0 Choose random hot contracts from top 16 every 5 minutes. 2022-01-15 00:44:33 -06:00
jahooma
e12e399679 Fix feed order moving around on load 2022-01-14 19:12:38 -06:00
jahooma
895eba4553 Get static props of just data for feed: active contracts, their bets & comments. 2022-01-14 18:16:32 -06:00
jahooma
dfcac2fb97 Hide ante bets in graph and feed 2022-01-13 11:01:23 -06:00
jahooma
de043de589 Add visibility field to contracts. Hot contracts & activity feed show only visibility 'public'. 2022-01-12 19:53:50 -06:00
jahooma
cc5312f52e Change is prod to true 2022-01-12 15:23:29 -06:00
mantikoros
9d5490cf9a
Switch to new dpm mechanism (#26)
* initial commit

* antes

* rename path, compute to contractPath, contractMetrics

* merge

* Include antes as bets; more calculations

* fees on estimated winnings

* mkt payout calculation

* contract: remove startPool, add phantomShares

* Merge branch 'main' into new-dpm

* dpm migration script

* my service account
2022-01-12 13:01:04 -06:00
Austin Chen
5b431226d4
Show all recent activity on a central feed (#24)
* Tracks all market activity on a single page

* Support both global and per-contract feeds

* UI tweaks

* Include contract description in activity feed

* Show activity feed on Create page
2022-01-11 11:56:26 -05:00
mantikoros
b97a65cf2c refactor data structures, calculations to common directory 2022-01-10 15:07:57 -06:00
jahooma
16ab0e0c37 Query hot contracts from volume24Hours field. 2022-01-09 14:26:51 -06:00
jahooma
6b4417d8b8 Every 15 minutes, compute contract volume in last 24 hours and 7 days 2022-01-09 13:34:42 -06:00
jahooma
6d4554e9ef Don't show resolved markets in hot markets 2022-01-09 12:14:20 -06:00
mantikoros
1b69a34270 allow updating contract description 2022-01-07 13:29:23 -06:00
mantikoros
0b8ad76b0f global warming: warm up all cloud functions on client 2022-01-05 12:30:16 -06:00
jahooma
e20537bf49 Remove tags and date from card. 2022-01-05 01:06:30 -06:00
jahooma
1bc323d575 Hot markets! 🔥 2022-01-05 00:33:01 -06:00
mantikoros
7c875f80da subsidized markets; create contract cloud function 2022-01-04 23:51:34 -06:00
Austin Chen
07ce27f20b
Show activity feed on each market & allow comments on your bets (#18)
* Copy feed template from TailwindUI

* Show all bets in a feed-like manner

* Tweak design of individual trades

* Allow traders to comment on their bets

* Code cleanups

* Incorporate contract description into the feed

* Support description editing from contract feed

* Group together bets placed within 24h

* Fix build error

* Add a feed item for market resolution

* Add a feed item for markets that have closed

* Comment on a separate subcollection
2022-01-03 23:21:14 -08:00
mantikoros
5890b74225
Mkt resolution: new standard resolution (pay back bets first) (#15)
* new standard resolution; contract.totalBets; MKT resolution

* recalculate script

* Fix one bug and change script name

Co-authored-by: jahooma <jahooma@gmail.com>
2022-01-01 19:03:18 -06:00
jahooma
a5e4411075 Load all contracts, and filter to 99 client-side. 2021-12-30 13:35:29 -05:00
Austin Chen
a9e1cbc0be
Point local server to prod Firebase for now (#13) 2021-12-29 23:31:26 -08:00
mantikoros
f48ae0170b
Sell bets (#12)
* sell bet

* dev mode

* single-pot no-refund payoff; bet selling

* Increase default fetch size 25 -> 99

* Fix about page numbering

* Don't flash no markets when loading on tag page.

* Change Title to use body font

* Make a bunch of predictions at once (#9)

* Set up a page to make bulk predictions

* Integrate preview into the same card

* List created predictions

* Make changes per James's comments

* Increase the starting balance (#11)

* Remove references to paying for our Mantic Dollars

* Update simulator to use new calculations

* Change simulator random to be evenly random again

* Sell bet UI

* Migrate contracts and bets script

* Add comment to script

* bets => trades; exclude sold bets

* change sale formula

* Change current value to uncapped sell value.

* Disable sell button while selling

* Update some 'bet' to 'trade'

Co-authored-by: Austin Chen <akrolsmir@gmail.com>
Co-authored-by: jahooma <jahooma@gmail.com>
2021-12-24 15:06:01 -06:00
James Grugett
ff4550fe51
Increase the starting balance (#11) 2021-12-21 13:52:27 -06:00
Austin Chen
9d438dc356
Make a bunch of predictions at once (#9)
* Set up a page to make bulk predictions

* Integrate preview into the same card

* List created predictions

* Make changes per James's comments
2021-12-20 22:29:32 -08:00
Austin Chen
f79d69cd69 Increase default fetch size 25 -> 99 2021-12-20 09:56:27 -08:00
Austin Chen
77e15e3aa8 Denormalize username to each contract 2021-12-17 23:27:29 -08:00
mantikoros
03a3df261c contract slugs 2021-12-17 17:16:42 -06:00
mantikoros
756f31b1b7 rename contract properties 2021-12-17 16:15:09 -06:00
Austin Chen
022caa4407 Revert to URLs without @ 2021-12-17 10:55:18 -08:00
jahooma
9bf257ef64 Embed markets below landing page. Listen for market changes 2021-12-16 22:44:48 -06:00
jahooma
2c9f8e00bf Fix nextjs console error by not loading from localstorage immedately. Use layout effect instead. 2021-12-16 22:09:38 -06:00
jahooma
96791e11a5 Stop flash of landing page when signed in and loading '/' 2021-12-16 21:37:38 -06:00
mantikoros
99637d913d add meta tags to contract 2021-12-16 12:21:16 -06:00
jahooma
8abbc34652 Improve graph for resolved bets 2021-12-16 00:44:04 -06:00
mantikoros
9bd0ad7211 test 2021-12-15 22:20:39 -06:00
Austin Chen
743616449f Prefix username URLs with @ 2021-12-15 18:26:38 -08:00
Austin Chen
9df78a4963 Support user profiles on /[username]
Currently all bets are also shown
2021-12-15 17:34:36 -08:00
Austin Chen
8e119a6338 Replace /contract/[id] with /[username]/[id] 2021-12-15 16:52:19 -08:00
mantikoros
e281233924 contract now has dpmWeights 2021-12-15 16:44:22 -06:00
mantikoros
4b123d47ee change starting balance to 100 2021-12-15 16:27:57 -06:00
jahooma
fda5013bf8 Simple bets list 2021-12-15 01:41:56 -06:00
jahooma
344b06124f useUser: Listen for changes to logged in user 2021-12-14 18:45:13 -06:00
jahooma
6e61b38a9b Remove resolved panel, move info into contract overview. 2021-12-14 12:51:30 -06:00
mantikoros
b85d9035b0 lower new user starting balance to M$1000 2021-12-14 11:36:23 -06:00
Austin Chen
dc90c4fa74 Extract shared logic into ContractDetails 2021-12-14 02:23:32 -08:00
jahooma
43941cd212 Simple market resolved panel 2021-12-14 00:12:25 -06:00
jahooma
15691c0a38 Query for user bets. Template page to show them. 2021-12-13 23:40:38 -06:00
Austin Chen
bae969058a Add a page which lists all markets
TODO: Add in functionality
2021-12-13 17:09:58 -08:00
mantikoros
5ffe266cf7 contract creation: use slug, calculate seed amounts from given probability 2021-12-13 19:07:36 -06:00
Austin Chen
e9c183a493 Allow users to sign in from /account
SQ
2021-12-13 10:37:16 -08:00
mantikoros
53907d2d52 user.balanceUsd => user.balance 2021-12-13 11:58:47 -06:00
jahooma
b216236503 Graph bets by afterProb. 2021-12-12 16:14:52 -06:00
Austin Chen
fb9a690707 Run prettier 2021-12-10 17:20:52 -08:00
mantikoros
d95bef8ab3 placeBet 2021-12-10 18:06:17 -06:00
jahooma
77ce27f45f Submit bets to firestore 2021-12-10 11:14:05 -06:00
Austin Chen
d945dc894b Merge branch 'contract-page' into create-contract 2021-12-10 00:21:55 -08:00
Austin Chen
70e86155be Sort contracts by creation time 2021-12-09 23:08:28 -08:00
jahooma
7309096854 Merge branch 'main' into contract-page 2021-12-10 00:33:11 -06:00
jahooma
443b742c4a Implement skeleton ContractPage 2021-12-10 00:21:12 -06:00
Austin Chen
4f2c8bcdce Add back listenForContract 2021-12-09 21:01:44 -08:00
Austin Chen
09b4639198 Allow users to create new contracts 2021-12-09 20:54:40 -08:00
Austin Chen
89a7bd65d2 Standardize on useUser hook 2021-12-09 16:09:16 -08:00
Austin Chen
7ec3da5504
Allow logging in with Firebase (#2)
* Pin package.json to exact version

* Fix according to reviewer feedback
2021-12-09 15:33:01 -08:00
jahooma
1cd3e2f1be Add contract page 2021-12-09 16:44:04 -06:00
jahooma
c8b86a43b9 Add template contract page 2021-12-09 16:05:55 -06:00
Austin Chen
e41250a89b Upload basic Firebase Auth code 2021-12-09 15:31:20 -06:00
Austin Chen
2a3d9e6272 Add Firestore package and config 2021-12-09 15:31:20 -06:00
Austin Chen
021341331f Upload basic Firebase Auth code 2021-12-08 16:43:42 -08:00
Austin Chen
55ddb2a7d4 Add Firestore package and config 2021-12-08 16:43:42 -08:00