Osprey Bank is an online banking service for scam baiters to bait out scammers. For years, scammers have plagued the internet with malicious use of technology, we are here to stop that!
Team Osprey
- Mohammad Albinhassan ([email protected])
- Gila Pearlman ([email protected])
- Tulsi Popat ([email protected])
- Jonathan (Jon) Rivera ([email protected])
- Hang (Daniel) Tsang ([email protected])
Ruby on Rails 2.7.1, PostgreSQL, HTML, SCSS, JavaScript and deployed on Heroku
bundle install
yarn install
rake db:create
rake db:migrate
rake db:seed
rails server
There are two types of users on the application, a regular user and an admin. 1 Admin and 1 User is provided. With a single admin, you can create/edit/delete as many other admins or users as you want, including accounts and transactions. Essentially, given 1 admin account you can do anything on the website. To login, click the "Login" button at the top right corner of the home page, or visit the path /login, or more specifically, the URL https://ospreybank.herokuapp.com/login. The admin and user details for login:
username: admin0
password: Password12345
username: seinfeld
password: Password12345
Note: There is a fake data generator an admin can access from the admin dashboard by clicking the button "Fake User Generator" or by visiting the route "/admin/generator/new". All users generated using this will have a default password of Password12345. The admin can change this password later by clicking the "Edit Password" button on the User index page or on the User show page, or by visiting the route /admin/users/:id/edit_password
To gain access to the administrative area, simply login as the admin (username: admin0, password: Password12345), and it will automatically redirect you to the administrative area. To login, at the home page there is a login button at the top right that says "Login", or use the path "/login", or more specifically "https://ospreybank.herokuapp.com/login". Simply enter the admin credentials, click the "Login" button and the path "/admins" will be opened, which is the admin dashboard page/view (Admin interface URL: https://ospreybank.herokuapp.com/admins). To re-iterate, a regular user and admin login in the same place, depending on the type of user/access level, they will be redirected to differnt paths/places.
- There are nested resources that provide for a much better user experience. A full list of them can be found using rails routes or by viewing the routes.rb file. For example, a user can view all transactions from all accounts using the route: /transactions or for a specific account using /accounts/:id/transactions. Similarly, an admin can view all transactions or accounts for a specific user using the route /admin/users/:id/transactions or /admin/users/:id/accounts. These nested resources are very useful and convenient.
- An admin can create fake data on the website using following route: admin/generator/new, and can create fake transactions for specific users through the following route: admin/generator/new?userid=:id. Note: to create transactions for a specific user, that user must have an account. Also, when generating transactions, if the admin selects 100 transactions to create, the generator will create 100 sent transactions and 100 received transactions for each account a user has, so 200 in total for each account.
- Bootstrap Studio: This was used extensively throughout the development of the UI. Usage included using default themes/templates/stock images provided by the application.
- Bootstrap: Bootstrap was used significantly throughout the UI
- Font Awesome: This was used throughout the website for icons, such as in the admin dashboard page, or in the error pages.
- Rails Cast Episode 228 was used for implementing sortable rows. http://railscasts.com/episodes/228-sortable-table-columns
-
Images:
- https://siftware.com/wp-content/uploads/2020/09/happy-customer-alt.png
- https://www.okgv.com/wp-content/uploads/2019/08/OlsonKulkoskiGallowayVesely-1035146258.jpg
- https://img.freepik.com/free-photo/happy-senior-woman_256588-835.jpg?size=626&ext=jpg&ga=GA1.2.548558842.1600041600
- https://cdn.ps.emap.com/wp-content/uploads/sites/3/2019/12/stock-image-of-young-girl-woman-student-440x330.jpg
- Favicon Used: https://icons-for-free.com/finance+money+money+in+wallet+wallet+icon-1320086013421017813/
-
Gems Used (Full list can be found in the Gemfile, these are the most notable gems used specific to our application):
- bcrypt
- faker
- money-rails
- monetize
- chartkick
- groupdate
- minitest-reporters
- bootstrap
- bootstrap_form
- sass-rails
- jquery-rails
- rails-controller-testing