Skip to content

Files

Latest commit

ffaef97 · Mar 4, 2025

History

History
This branch is 7 commits behind aces/cbrain:master.

BrainPortal

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Mar 4, 2025
Dec 8, 2017
Jun 6, 2024
Sep 9, 2024
Feb 19, 2025
Aug 5, 2024
Feb 14, 2025
Aug 7, 2015
Mar 2, 2025
Jan 5, 2015
Apr 15, 2024
Mar 3, 2025
Feb 15, 2021
Jan 16, 2025
Oct 8, 2024
Nov 6, 2018
Mar 5, 2020
Feb 5, 2024
Dec 8, 2017
Dec 2, 2016
Feb 24, 2025
Dec 8, 2017
Dec 8, 2017
Dec 8, 2017

CBRAIN Project : BrainPortal

Welcome the CBRAIN BrainPortal application!

About BrainPortal

BrainPortal is the frontend of the CBRAIN architecture. It is a Rails application that provides a web-based graphical user interface to CBRAIN. Users can upload, tag and search their files. They can launch compute-intensive processing jobs on remote High-Performance Computing sites. Remote file repositories can be created to provide files from any network-enabled system.

Design Philosophy

BrainPortal has been built using Ruby on Rails. Ruby is a dynamic, object oriented language. Rails is a web-development framework based on Ruby. In keeping with the rails philosophy of development, BrainPortal is built using the model-view-controller (MVC) architectural pattern, and to great extent, using principles of RESTful design, meaning that the primary components of the system are modeled as resources that interact with each other using common HTTP verbs. The two main subcategories of resource in BrainPortal are:

  • ActiveRecord Models that interact directly with the database.
  • ActiveResource Models that interact with an ActiveRecord resource over a network.

Some key models in the system include:

  • User Represents an actual user of the system.
  • Userfile Models a user's files as entries in the database.
  • DataProvider Represents an external provider for the contents of the userfiles.
  • CbrainTask Represents a task request to a cluster, and its evolving states.
  • PortalTask The subclass of CbrainTask used to model tasks as seen on the BrainPortal side.
  • Bourreau Represents a remote execution server for processing tasks. All CbrainTask requests are sent to one of these.