Skip to content

Commit

Permalink
24.07.25 (#436)
Browse files Browse the repository at this point in the history
* Update README.md (#411)

* Update README.md

* Added Workflow diagram

* Added logo image

* fixed script driver not saving (#422)

Co-authored-by: tianywan819 <57418894+tianywan819@users.noreply.github.com>

* Embargo saving issue (#426)

* fixed script driver not saving

* Fixed Embargo Time not saving and prepopulate issue

---------

Co-authored-by: tianywan819 <57418894+tianywan819@users.noreply.github.com>

* Correct the logic for checking the existence of `extensionDomain` in the `bco` object within the `ExtensionDomain` component. This fix ensures accurate handling of the `extensionDomain` property. (#427)

- Update check from `"extension_domain" in bco` to `typeof bco.extensionDomain !== "undefined"`.
- Remove unnecessary comment from the remove button.

These changes improve the reliability and readability of the component.

Changes to be committed:
	modified:   client/src/components/builder/extensionDomain.js

* Contribution doc and related documentations. (#434)

* Create Contribute doc

* Create Contribute doc

* Update CONTRIBUTING.md

* Update code_of_conduct.md

* Update CONTRIBUTING.md

* Update CONTRIBUTING.md

* Update CONTRIBUTING.md

* Update

* Added contribution documents

* Update contribution doc

* PopUp box on Builder page on how to create bco (#435)

---------

Co-authored-by: Reeya Gupta <56750374+Reeya123@users.noreply.github.com>
Co-authored-by: Tianyi Wang <90009613+tiwa1154@users.noreply.github.com>
Co-authored-by: tianywan819 <57418894+tianywan819@users.noreply.github.com>
  • Loading branch information
4 people authored Jul 25, 2024
1 parent bd0e652 commit f60e0f7
Show file tree
Hide file tree
Showing 20 changed files with 809 additions and 379 deletions.
Empty file.
118 changes: 118 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
# Contributing to the Biocompute Project

Thank you for considering contributing to the Biocompute project! This document outlines the process to help you contribute.

All types of contributions are encouraged and valued. See the Table of Contents for different ways to help and details about how this project handles them. Please make sure to read the relevant section before making your contribution. It will make it a lot easier for us maintainers and smooth out the experience for all involved. The community looks forward to your contributions. 🎉

> And if you like the project, but just don't have time to contribute, that's fine. There are other easy ways to support the project and show your appreciation, which we would also be very happy about:
> - Star the project
> - Tweet about it
> - Refer this project in your project's readme
> - Mention the project at local meetups and tell your friends/colleagues
## Table of Contents

- [Code of Conduct](./docs/contributing/code_of_conduct.md)
- [How to Contribute](#how-to-contribute)
- [Reporting Bugs](#reporting-bugs)
- [Suggesting Enhancements](#suggesting-enhancements)
- [Submitting Code Changes](#submitting-code-changes)
- [Development Setup](#development-setup)
- [Style Guides](#style-guides)
- [Code Style](#code-style)
- [Commit Messages](#commit-messages)
- [Testing](#testing)
- [Documentation](#documentation)
- [License](#license)

## Code of Conduct

This project adheres to the Contributor Covenant [Code of Conduct](./docs/contributing/code_of_conduct.md). By participating, you are expected to uphold this code. Please report unacceptable behavior to the [Team](mailto:hadley_king@email.gwu.edu ).

## I Have a Question

> If you want to ask a question, we assume that you have read the available [Documentation](/README.md).
Before you ask a question, it is best to search for existing [Issues](https://github.com/biocompute-objects/portal_userdb/issues) that might help you. In case you have found a suitable issue and still need clarification, you can write your question in this issue. It is also advisable to search the internet for answers first.

If you then still feel the need to ask a question and need clarification, we recommend the following:

- Open an [Issue](https://github.com/biocompute-objects/portal_userdb/issues/new/choose).
- Provide as much context as you can about what you're running into.
- Provide project and platform versions (nodejs, npm, etc), depending on what seems relevant.

We will then take care of the issue as soon as possible.
## How to Contribute

### Reporting Bugs

#### Before Submitting a Bug Report
A good bug report shouldn’t leave others needing to chase you up for more information. Therefore, we ask you to investigate carefully, collect information and describe the issue in detail in your report. Please complete the following steps in advance to help us fix any potential bug as fast as possible.
If you find a bug, please create an issue on GitHub with the following information:

- A clear and descriptive title.
- Steps to reproduce the issue.
- Expected and actual behavior.
- Screenshots or logs, if applicable.
- Any other information that might be helpful.

### Suggesting Enhancements

This section guides you through submitting an enhancement suggestion for Biocompute project, **including completely new features and minor improvements to existing functionality**. Following these guidelines will help maintainers and the community to understand your suggestion and find related suggestions.

<!-- omit in toc -->
#### Before Submitting an Enhancement

- Make sure that you are using the latest version.
- Read the [documentation](/README.md) carefully and find out if the functionality is already covered, maybe by an individual configuration.
- Perform a [search](https://github.com/biocompute-objects/portal_userdb/issues) to see if the enhancement has already been suggested. If it has, add a comment to the existing issue instead of opening a new one.
- Find out whether your idea fits with the scope and aims of the project. It's up to you to make a strong case to convince the project's developers of the merits of this feature. Keep in mind that we want features that will be useful to the majority of our users and not just a small subset. If you're just targeting a minority of users, consider writing an add-on/plugin library.

<!-- omit in toc -->
#### How Do I Submit a Good Enhancement Suggestion?

Enhancement suggestions are tracked as [GitHub issues](https://github.com/biocompute-objects/portal_userdb/issues).Provide the following:

- Use a clear and descriptive title for the issue.
- A detailed explanation of the enhancement and why it would be useful.
- Any relevant examples or references.

### Submitting Code Changes

1. Fork the repository.
2. Create a new branch from `Development` (e.g., `feature-branch`).
3. Make your changes.
4. Ensure your code adheres to the [code style](./docs/contributing/style_guides.md).
5. Commit your changes with a descriptive message.
6. Push your branch to your fork.
7. Create a pull request (PR) to the `Development` branch of the original repository.

Please ensure your PR includes:

- A clear title and description of the change.
- References to any related issues (e.g., `Closes #123`).
- Necessary documentation updates.

## Development Setup

To set up a local development environment, follow the instructions in the [Development Setup](./docs/contributing/development_setup.md) guide.

## Style Guides

### Code Style

Follow the existing code style. We use ESLint for JavaScript. Run `npm run lint` to check your code.

### Commit Messages

- Use the present tense ("Add feature" not "Added feature").
- Capitalize the first letter.
- No period at the end.
- Include references to issues and pull requests when relevant.

## Testing

Please add tests for your changes and ensure all existing tests pass. Run the tests with:

```sh
npm test
111 changes: 100 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,106 @@
# BCO Portal
![biocompute](https://github.com/user-attachments/assets/785e87f2-66a5-4a17-821b-c52bdf3c56e6)

The BCO Portal consists of two applications.
# BioCompute: A Platform for Bioinformatics Analysis Workflow
## Introduction
BioCompute is a platform designed to facilitate the documentation and communication of bioinformatics analysis workflows. Following the IEEE 2791-2020 standard, BioCompute aims to ease communication burdens between research centers, organizations, and industries by providing a standardized, human- and machine-readable format for BioCompute Objects (BCOs).

## BCO Portal Server (AKA UserDB)
The [`SERVER`](server/README.md) directory contains the UserDB application. It utilizes Django (Python) and a SQLite3 DB.
## Key Features
- **Standardized Documentation**: Adopts the IEEE 2791-2020 standard for bioinformatics analyses.
- **User-Friendly Interface**: Build BioCompute Objects through an intuitive web portal.
- **Extensible**: Supports integration with various bioinformatics tools and databases.
- **Community-Driven**: Open-source and welcoming contributions from the community.

## BCO Portal Client (AKA Portal)
The [`CLIENT`](client/README.md) directory contains the UI application. It utilizes React and Redux ToolKit.
## Quickstart Guide

## Deployment instructions can be found here:
- [Local deployment for devleopment](docs/localDeployment.md)
- [Production deployment](docs/productionDeployment.md)
- [Docker deployment](docs/dockerDeployment.md) [WIP]
- [FAQ and trouble shooting](docs/faq.md)
Follow these steps to get started with BioCompute:

1. Clone the Repository:

`git clone https://github.com/biocompute/bcodb.git
cd bcodb`


3. Set Up the Environment:

Ensure you have Python and Node.js installed.

Install dependencies:

`pip install -r requirements.txt
npm install`

4. Run the Server:

`cd server
python manage.py runserver`

5. Run the Client:

`cd client
npm start`

Access the Portal:
Open your web browser and navigate to **'http://localhost:3000'**.

## Architecture

BioCompute consists of two main components:

- **BCO Portal Server (UserDB)**:

Located in the **[`SERVER`](server/README.md)** directory.
Built with Django (Python) and uses SQLite3 for the database.

- **BCO Portal Client (Portal)**:

Located in the **[`CLIENT`](client/README.md)** directory.
Built with React and Redux ToolKit.

## Workflow Diagram
![BCO Portal git workflow drawio](https://github.com/user-attachments/assets/5ebf19bd-a99a-4023-9be0-6f74930f891c)

## Installation
### Local Deployment for Development

Clone the Repository:

`git clone https://github.com/biocompute/bcodb.git
cd bcodb`

Install Dependencies:

`pip install -r requirements.txt
npm install
`

Run the Applications:

`cd server
python manage.py runserver
cd ../client
npm start`

Follow the detailed instructions in our [Local deployment Guide](docs/localDeployment.md)
### Production Deployment
Follow the detailed instructions in our [Production deployment Guide](docs/productionDeployment.md).

### Docker Deployment
Our [Docker deployment Guide](docs/dockerDeployment.md) is currently a work in progress. Stay tuned for updates.

## Contributing
We welcome contributions from the community! To contribute:

Fork the repository on GitHub.
Create a feature branch.
Commit your changes.
Submit a pull request.
Please refer to our [Contributing Guide](/CONTRIBUTING.md) for more details.

## FAQ and Troubleshooting
Find solutions to common issues in our [FAQ and trouble shooting Guide](docs/faq.md).

## License
BioCompute is licensed under the Apache 2.0 License. See the [LICENSE]() file for more details.

## Acknowledgements
We thank all our contributors and the wider community for their support.
Loading

0 comments on commit f60e0f7

Please sign in to comment.