Stocks in the Future is a program with the mission of developing highly motivated middle school students who are eager to learn and dedicated to attending class through the use of incentives coupled with a financial literacy curriculum focused on investing that reinforces Math, Language Arts and Social Studies. Stocks in the Future pushes to educate, encourage, and empower the next generation of financially-literate individuals. This application is used by the students to manage their portfolios by trading and selling their stocks. It is also used by the teachers and administrator to manage the classrooms, enter student's grades, attendance, and post announcements.
If you have any questions about an issue, comment on the issue, open a new issue, or ask in the RubyForGood slack. Stocks-in-the-future has a #stocks-in-the-future channel in the Slack. Feel free to join the community!
To understand the project better, read the project documentation.
Then follow our contributing guide to get started.
- A ruby version manager such as rvm, rbenv or asdf
- Ruby 3.4.4 (Installed via ruby manager ^)
- PostgreSQL, if you're not using Docker.
- npm and yarn (
npm install -g yarn)
Go to the Easy Docker Scripts page for an easy way to set up this app, test this app, seed data, run RuboCop, and execute other routine tasks.
Create config/database.yml. A copy of config/database.yml.sample should be adequate.
Build and start the application with docker compose up. Once the application has successfully started, you should be able to visit it at http://localhost:3000/
Run commands in docker with the bin/dc helper script on macos or Linux.
$ bin/dc rails db:setup
$ bin/dc rails testOr by prefacing rails commands with docker compose run stocks.
$ docker compose run stocks rails db:setup
$ docker compose run stocks rails test- Run setup:
bin/setup - Run the Rails server locally:
bin/dev
It is strongly recommended to use Docker. See instructions above.
After running bin/rails db:setup, the database will automatically be seeded with three default users.
| Role | Username | Password |
|---|---|---|
| Teacher | Teacher | password |
| Student | Student | password |
| Admin | Admin | password |
Use the username and password to log in and test the application locally.
Access the app via localhost:3000