A stock trading application that leverages real-world stock market information data from iex api. The application showcases user authentication, an admin dashboard, and stock portfolio management.
- Devise
- Tailwind CSS
- Shadcn
- Chartkick
- Kaminari
- JSBundling
- Turbo Stimulus
- Rspec
- Admin console with RESTful actions for users
- User email and admin verification
- User can receive email notifications
- Users can view live stock market information
- Users can create transactions
- Users can view their transactions
- Users can view their portfolio
- Install dependencies
bundle install && yarn install
- Set the environment variables:
IEX_API_SECRET_TOKEN = <Create an iex account to access their api tokens>
IEX_API_PUBLISHABLE_TOKEN = <Create an iex account to access their api tokens>
GOOGLE_SMTP_EMAIL = <Add a google email address>
GOOGLE_SMTP_PASSWORD = <Generate an app password from your Google account>
- Create the database
bin/rails db:create &&
bin/rails db:migrate &&
bin/rails db:migrate RAILS_ENV=test
- Create an admin account
bin/rails c
admin = User.create!(first_name: <first name>, email: <email>, password: <password>, role: 1)
admin.skip_confirmation!
admin.save
user = User.create!(first_name: <first name>, email: <email>, password: <password>, role: 0, approved: 1)
user.skip_confirmation!
user.save
- Run the application
bin/rails s