Giter Site home page Giter Site logo

desktop's Introduction

Rucio - Scientific Data Management

Rucio is a software framework that provides functionality to organize, manage, and access large volumes of scientific data using customisable policies. The data can be spread across globally distributed locations and across heterogeneous data centers, uniting different storage and network technologies as a single federated entity. Rucio offers advanced features such as distributed data recovery or adaptive replication, and is highly scalable, modular, and extensible. Rucio has been originally developed to meet the requirements of the high-energy physics experiment ATLAS, and is continuously extended to support LHC experiments and other diverse scientific communities.

Documentation

General information, API/REST description and guides can be found in our documentation or on our webpage.

Try it out

We provide a dockerized environment which serves both as a demo environment and a development environment. It includes all the necessary preconfigured components for multiple storage and transfers developments.

Developers

For information on how to contribute to Rucio, please refer and follow our CONTRIBUTING guidelines. We strongly recommend to use the dockerized environment for development.

Operators

To learn how to deploy and configure Rucio, consult the documentation available online.

Getting Support

If you are looking for support, please contact us via one of our official channels.

desktop's People

Contributors

bari12 avatar viveknigam3003 avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

desktop's Issues

Improve User documentation and Client Usage Guide

Motivation

The usage guide provided with the app in the user documentation is not self-sufficient and seems incomplete. There is also a large scope of improvement by adding more illustrations, GIFs, etc to help the users setup and use the application easily.

Modification

Improve the user documentation and usage guide for Rucio Desktop by adding more screenshots and GIFs with explanation to use the app and set it up for a first time user.
Contact @viveknigam3003 for more details on this issue.

Add detailed API References.

Motivation

The application provides many API wrappers for the Rucio RESTFUL APIs which can be found here. Yet the API reference isn't complete.

Modification

Add the API reference for the API wrappers provided with this software in the developer documentation.

Add Contribution Guide

Motivation

A well-written contribution guide helps the community in understanding the patterns for contributing to the project. It is necessary to improve engagement among the community and lower the entry-barrier for the new-comers.

Modification

Add a contribution guide which resembles the one for the organisation.

Enhancement: Add unit tests for APIs

Motivation

To setup CI/CD workflows and ensure successful contributions without any hassle, a test suite is necessary for the whole application including UI and the server.

Modification

Add unit tests for UI components.

Expected Results

  • Unit test suite using Jest for the front-end components.

Handle path state on Explore unmount

Motivation

The path for Explorer is stored and accessed from the state tree which works fine when browsing the scoped namespace. BUT, the application does not handle unexpected unmount of the Explore tab component, which causes the app to crash.

Error Log:

Error: EIO: i/o error, stat '/ruciofs/rucio-server-x509/test/dataset3/rucio-server-x509'
[1]     at Object.statSync (fs.js:933:3)
[1]     at getFiles (/home/vivek/Desktop/GSoC_2020/desktop/server/APIs/files.js:23:10)
[1]     at /home/vivek/Desktop/GSoC_2020/desktop/server/routes/files.js:16:16
[1]     at Layer.handle [as handle_request] (/home/vivek/Desktop/GSoC_2020/desktop/node_modules/express/lib/router/layer.js:95:5)
[1]     at next (/home/vivek/Desktop/GSoC_2020/desktop/node_modules/express/lib/router/route.js:137:13)
[1]     at Route.dispatch (/home/vivek/Desktop/GSoC_2020/desktop/node_modules/express/lib/router/route.js:112:3)
[1]     at Layer.handle [as handle_request] (/home/vivek/Desktop/GSoC_2020/desktop/node_modules/express/lib/router/layer.js:95:5)
[1]     at /home/vivek/Desktop/GSoC_2020/desktop/node_modules/express/lib/router/index.js:281:22
[1]     at Function.process_params (/home/vivek/Desktop/GSoC_2020/desktop/node_modules/express/lib/router/index.js:335:12)
[1]     at next (/home/vivek/Desktop/GSoC_2020/desktop/node_modules/express/lib/router/index.js:275:10)

Modification

Fix the unmount handling by adding a cleaup effect for component unmount, and resets the path state on unmount.

Expected Results

  • The app handles unexpected clicking of any other tab.
  • Path state cleaned and reset on opening some other tab or selecting some other function.

Create a bundled package for Rucio Desktop.

Motivation

Current version of Rucio Desktop only works in Developer mode and no binaries are compiled for the software to be used on client machines.

Modification

Write build configurations and create binaries for target systems for public release.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.