0.0.0-development • Published 7 years ago

twitch-stocks v0.0.0-development

Weekly downloads
3
License
GPL-3.0
Repository
github
Last release
7 years ago

Twitch Stocks

Build Status Coverage Status Commitizen friendly

Twitch Stocks allows you to invest in Twitch streamers using virtual points. (No money involved)

Say your favorite streamer averages 20,000 viewers one week and you invest in them. The next week they managed to bump their average viewer count to 22,000. You just profited! Maybe you're feeling risky and want to invest in a low-viewer streamer in the hopes that they blow up in viewership.

Everything, such as using viewer count as value, is tentative at this point.

Live Site

Come check out the live site: https://twitch-stocks.now.sh/


Development

Getting Started

Firstly, check out the project's Roadmap and issues.

  1. Install Node.js.

I recommend using Node Version Manager: Linux/macOS Windows

  1. Fork the repo.

  2. Clone the project.

git clone https://github.com/ChrisALee/twitch-stocks.git
  1. Navigate to the directory (twitch-stocks by default).
cd twitch-stocks
  1. Choose one of the three directories to work on and follow from step 4:

Client

Server

Twitch

Note to those on Windows:

The build scripts require the use of linux console emulators such as cmder, cygwin or Bash on Ubuntu on Windows. Simply install one of the above then run npm run dev as usual in the console emulators instead of cmd or powershell.

Any contributions are appreciated.

For details on how to contribute (code style and more) please visit our contributing guidelines.

Check out the issues tab for our project's TODO's, bugs, and questions.

The same information can also be found on the project page.


Learning Resources

Next.js:

  • Learn Next.js - I'd suggest to start here.
  • Next.js examples - Treat this as a reference for figuring out how to do certain tasks or integrate other tools with Next.js.

React:

  • Eric Douglas' curated list of React resources - I'd look at React, ES2015+, Redux, and Bundlers. Just be aware that we're using Next.js, so some stuff like routing is abstracted away. If you went through Learn Next.js, you might be able to spot the differences.

Node.js/Express:

MongoDB:

TypeScript:

  • Learn TypeScript in 5 minutes - Follow along but be aware that the parts on installing and compiling Typescript won't apply since it's already installed in our project. You might just have to set it up so it works with your IDE/text-editor.
  • TypeScript Playground
  • Learn Typescript with React - I'd recommend knowing the basics of React from previous resources before trying to understand this.
  • TypeScript React examples - Folder structure in these examples will differ from ours. I'd look at how the specific components are written rather than any outer index/app files.
  • Microsoft TypeScript Tic-Tac-Toe example - This is a great reference for what the code for our classes will look like. Main difference, however, will be that each class will be in its own file.

Testing Frameworks:

  • Unit Tests- Testing of individual functions or classes by mocking input and making sure the output is as expected.
  • Integration Tests- Testing several modules to ensure they work together as expected.
  • Functional Tests- Testing a scenario on the product itself (on the browser, for example) regardless the internal structure to ensure expected behavior. by Vitalik Zaidman (Article here)
Jest:
Enzyme:
SuperTest:

Join us on Discord #twitch-stocks!

Please be sure to ask any questions if you get stuck on anything related to the project or languages used. We're all learning here, and teaching is a great way to reinforce concepts.


Bug / Feature Request

If you find a bug (the website couldn't handle the query and / or gave undesired results), kindly open an issue here by including your search query and the expected result.

If you'd like to request a new function, feel free to do so by opening an issue here. Please include sample queries and their corresponding results.


Built With

Contributors

Thank you to:

  • FalseHonesty
  • Cowtongue (Chris Lee)
  • kbaek11 (Kyung)
  • Gging
  • jamiro24
  • Rubiks_cube
  • ReformedPacifist
  • notjason
  • christoabrown

We are definitely open to having anyone help and contribute.

Check out this spreadsheet and add your name!

And, once again, come chat with us on Discord #twitch-stocks!