MCPcopy Index your code
hub / github.com/JBEI/ice

github.com/JBEI/ice @6.0.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release 6.0.0 ↗ · + Follow
4,209 symbols 15,641 edges 650 files 862 documented · 20% updated 2y ago6.0.0 · 2024-02-22★ 4429 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

ICE: Inventory of Composable Elements

ICE is a registry platform that provides robust data storage for DNA components, integrated tools for part characterization, as well as mechanisms for secure access and information sharing with other users and software tools.

ICE is open source and distributed under the Modified BSD license. You can try it out at https://public-registry.jbei.org by creating a free account

Major Features

  • Support for storing biological parts in addition to plasmids, microbial strains and Arabidopsis seeds. Supported sequence formats are genbank, FASTA and SBOL
  • Full text and BLAST search capabilities
  • Advanced collection management
  • Graphical application and other tool integration for sequence design, annotation and verification
  • Real time DNA editing with live vector map display and sophisticated feature annotation
  • Opt-in community collaboration capabilities that enable dataset publishing and sharing across multiple ICE instances
  • Granular read and write permissions for entries or collections across users and groups
  • Automatic Sequence Annotation

Installation

Production

To install in a production environment, please consult our manual for detailed setup and configuration instructions.

Development

To set up a development environment or local machine installation make sure you have the following dependencies installed

Command line installation steps (linux environment):

  • Clone this repo

    git clone https://github.com/JBEI/ice.git ./ice
    cd ice
    
  • Build ICE. This may take a few minutes to download additional dependencies

    mvn clean install -DskipTests=true
    
  • Start the embedded undertow server

    java -cp "./target/ice-{version-number}-classes.jar:./target/ice-{version-number}/WEB-INF/lib/*" DevelopmentServer
    

Where "ice-{version-number}" is the version of ICE that was cloned. e.g. "ice-5.6.0"

  • Access the application at http://localhost:8080 and login using username and password "Administrator"

  • Ctrl + C to stop the application

Links

Related Projects

Open Vector Editor is used in ICE to display and edit sequences

Extension points exported contracts — how you extend this code

IFormatter (Interface)
Interface for Formatters. @author Zinovii Dmytriv [6 implementers]
src/main/java/org/jbei/ice/entry/sequence/composers/formatters/IFormatter.java
DataModel (Interface)
@author Hector Plahar [80 implementers]
src/main/java/org/jbei/ice/storage/DataModel.java
IDataTransferModel (Interface)
Interface for data transfer objects @author Hector Plahar [77 implementers]
src/main/java/org/jbei/ice/storage/IDataTransferModel.java
IAuthentication (Interface)
Interface for different authentication types. @author Hector Plahar [6 implementers]
src/main/java/org/jbei/ice/account/authentication/IAuthentication.java
HeaderValue (Interface)
Value of header @author Hector Plahar [4 implementers]
src/main/java/org/jbei/ice/bulkupload/HeaderValue.java

Core symbols most depended-on inside this repo

get
called by 944
src/main/java/org/jbei/ice/storage/IRepository.java
getBuilder
called by 576
src/main/java/org/jbei/ice/storage/hibernate/HibernateRepository.java
add
called by 450
src/main/java/org/jbei/ice/entry/EntryHistory.java
error
called by 382
src/main/java/org/jbei/ice/logging/Logger.java
getId
called by 221
src/main/java/org/jbei/ice/storage/DataModel.java
getEmail
called by 211
src/main/java/org/jbei/ice/storage/model/AccountModel.java
respond
called by 196
src/main/java/org/jbei/ice/services/rest/RestResource.java
currentSession
called by 169
src/main/java/org/jbei/ice/storage/hibernate/HibernateRepository.java

Shape

Method 3,517
Class 632
Enum 48
Interface 8
Function 4

Languages

Java87%
TypeScript13%

Modules by API surface

src/main/java/org/jbei/ice/dto/entry/PartData.java57 symbols
src/main/java/org/jbei/ice/services/rest/PartResource.java48 symbols
src/main/java/org/jbei/ice/storage/hibernate/dao/EntryDAO.java37 symbols
src/main/java/org/jbei/ice/storage/DAOFactory.java37 symbols
src/main/java/org/jbei/ice/account/Account.java36 symbols
src/main/java/org/jbei/ice/storage/model/AccountModel.java35 symbols
src/main/java/org/jbei/ice/dto/access/AccessPermission.java35 symbols
src/main/java/org/jbei/ice/storage/model/Entry.java31 symbols
src/main/java/org/jbei/ice/dto/search/SearchQuery.java31 symbols
src/main/java/org/jbei/ice/storage/model/TraceSequenceAlignment.java27 symbols
src/main/java/org/jbei/ice/storage/model/Sequence.java27 symbols
src/main/java/org/jbei/ice/dto/DNAFeature.java26 symbols

For agents

$ claude mcp add ice \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact