Skip to content

Commit

Permalink
Merge pull request #50 from ncats/development
Browse files Browse the repository at this point in the history
Development
  • Loading branch information
iwwwish authored Jan 24, 2022

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
2 parents e1604b1 + 948dcd5 commit c857806
Showing 54 changed files with 480 additions and 18,680 deletions.
Binary file added client/default.profraw
Binary file not shown.
18,596 changes: 49 additions & 18,547 deletions client/package-lock.json

Large diffs are not rendered by default.

3 changes: 2 additions & 1 deletion client/package.json
Original file line number Diff line number Diff line change
@@ -23,6 +23,7 @@
"@angular/platform-browser": "12.2.0",
"@angular/platform-browser-dynamic": "12.2.0",
"@angular/router": "12.2.0",
"moment": "^2.29.1",
"rxjs": "6.5.4",
"tslib": "^2.0.0",
"zone.js": "0.11.4"
@@ -47,4 +48,4 @@
"tslint": "~6.1.0",
"typescript": "4.3.5"
}
}
}
13 changes: 11 additions & 2 deletions client/src/app/app.component.html
Original file line number Diff line number Diff line change
@@ -2,18 +2,27 @@
<mat-toolbar color="primary">
<a class="title" routerLink="/home">ADME @ NCATS</a>
<div class="navigation">
<a class="nav-item" routerLink="/predictions">Predict</a>
<a class="nav-item" [matMenuTriggerFor]="navMenu" >Models</a>
<mat-menu #navMenu="matMenu">
<button mat-menu-item routerLink="/models/rlm">RLM Stability</button>
<button mat-menu-item routerLink="/models/pampa_ph74">PAMPA pH 7.4</button>
<button mat-menu-item routerLink="/models/pampa_ph5">PAMPA pH 5.0</button>
<button mat-menu-item routerLink="/models/pampa_ph74">PAMPA pH 7.4</button>
<button mat-menu-item routerLink="/models/solubility">Solubility</button>
<button mat-menu-item routerLink="/models/hlc">HLC Stability</button>
<button mat-menu-item routerLink="/models/cyp450">CYP450</button>
</mat-menu>
<a class="nav-item" routerLink="/predictions">Predict</a>
<a class="nav-item" routerLink="/contact">Contact</a>
</div>
<span class="fill-middle"></span>
</mat-toolbar>
<router-outlet></router-outlet>
<div class="container footer">
<p style="text-align: center;">Last Updated: {{release_date}} <span class="v-bar-1">|</span> Current Release: <a href="{{release_url}}" target="_blank"><u>{{tag_name}}</u></a></p>
<p><a href="https://www.nih.gov/" target="_blank">NIH</a> <span class="v-bar-2">|</span>
<a href="https://ncats.nih.gov/" target="_blank">NCATS</a> <span class="v-bar-2">|</span>
<a href="https://ncats.nih.gov/privacy" target="_blank">PRIVACY ACT</a> <span class="v-bar-2">|</span>
<a href="https://ncats.nih.gov/accessibility" target="_blank">ACCESSIBILITY</a> <span class="v-bar-2">|</span>
<a href="https://ncats.nih.gov/disclaimer" target="_blank">DISCLAIMER</a>
</p>
</div>
32 changes: 31 additions & 1 deletion client/src/app/app.component.scss
Original file line number Diff line number Diff line change
@@ -48,4 +48,34 @@
margin-right: 0;
}
}
}
}

.footer {
position: relative;
bottom: 0;
height: 80px;
width: 100%;
color:#fff;
padding-bottom: 0px;
padding-top: 10px;
font-size: 13px;
background-color: #673ab7;
margin-bottom: -25px;
}

.v-bar-1 {
padding: 0px 5px;
color:#fff;
}

.v-bar-2 {
padding: 0px 10px;
color:#fff;
}

.footer a {
/* color: #337ab7; */
color:#fff;
text-decoration: none;
background-color: transparent;
}
17 changes: 17 additions & 0 deletions client/src/app/app.component.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,13 @@
import { Component, OnInit, OnDestroy, Inject } from '@angular/core';
import { HttpClient } from "@angular/common/http";
import { MatIconRegistry } from '@angular/material/icon';
import { DomSanitizer } from '@angular/platform-browser';
import { ResolveEnd, Router, RouterEvent } from '@angular/router';
import { Subscription } from 'rxjs';
import { GoogleAnalyticsService } from './google-analytics/google-analytics.service';
import { DOCUMENT } from '@angular/common';
import { DEPLOY_URL } from './utilities/deploy-url';
import * as moment from 'moment';

@Component({
selector: 'adme-root',
@@ -14,11 +16,16 @@ import { DEPLOY_URL } from './utilities/deploy-url';
})
export class AppComponent implements OnInit, OnDestroy {
private routerSubscription: Subscription;
data: any = [];
release_date: string;
release_url: string;
tag_name: string;
constructor(
iconRegistry: MatIconRegistry,
sanitizer: DomSanitizer,
private router: Router,
private gaService: GoogleAnalyticsService,
private http: HttpClient,
// tslint:disable-next-line:variable-name
@Inject(DOCUMENT) private _document: HTMLDocument,
@Inject(DEPLOY_URL) private deployUrl: string
@@ -27,13 +34,23 @@ export class AppComponent implements OnInit, OnDestroy {
'cancel',
sanitizer.bypassSecurityTrustResourceUrl(`${deployUrl}assets/icons/cancel-24px.svg`));
}
getReleaseData(){
const url ='https://api.github.com/repos/ncats/ncats-adme/releases/latest'
this.http.get(url).subscribe((res)=>{
this.data = res
this.release_date = moment.utc(this.data.published_at).local().format('DD/MM/YYYY');
this.release_url = this.data.html_url
this.tag_name = this.data.tag_name
})
}
ngOnInit() {
this._document.getElementById('appFavicon').setAttribute('href', `${this.deployUrl}assets/icons/favicon.ico`);
this.routerSubscription = this.router.events.subscribe((event: RouterEvent) => {
if (event instanceof ResolveEnd) {
this.gaService.sendPageView(event.state.root.firstChild.data.pageTitle, event.state.url);
}
});
this.getReleaseData();
}
ngOnDestroy() {
if (this.routerSubscription != null) {
6 changes: 5 additions & 1 deletion client/src/app/app.module.ts
Original file line number Diff line number Diff line change
@@ -36,6 +36,8 @@ import { ConfigService } from './config/config.service';
import { configServiceFactory } from './config/config.factory';
import { TrackLinkEventDirective } from './google-analytics/track-link-event/track-link-event.directive';
import { MatMenuModule } from '@angular/material/menu';
import {MatRadioModule} from '@angular/material/radio';
import {MatCheckboxModule} from '@angular/material/checkbox';
import { APP_BASE_HREF, PlatformLocation } from '@angular/common';

@NgModule({
@@ -77,7 +79,9 @@ import { APP_BASE_HREF, PlatformLocation } from '@angular/common';
MatSortModule,
MatTooltipModule,
MatIconModule,
MatMenuModule
MatMenuModule,
MatRadioModule,
MatCheckboxModule
],
entryComponents: [
StructureImageDialogComponent
54 changes: 11 additions & 43 deletions client/src/app/contact/contact.component.html
Original file line number Diff line number Diff line change
@@ -12,7 +12,7 @@ <h1>
Vishal Siramshetty
</div>
<div>
Postdoctoral Fellow (Informatics)
Postdoctoral Fellow (Informatics Core)
</div>
<div>
Email: <a href="mailto: siramshettyv2@nih.gov">siramshettyv2@nih.gov</a> (models/predictions related queries)
@@ -21,33 +21,17 @@ <h1>
</div>
<div class="profiles-row">
<div class="profile-image-container">
<img [src]="pranavImgSrc">
</div>
<div class="profile-info-container">
<div>
Pranav Shah
</div>
<div>
Lead (In Vitro ADME)
</div>
<div>
Email: <a href="mailto: pranav.shah@nih.gov">pranav.shah@nih.gov</a> (assay/data related queries)
</div>
</div>
</div>
<div class="profiles-row">
<div class="profile-image-container">
<img [src]="jorgeImgSrc">
<img [src]="ewyImgSrc">
</div>
<div class="profile-info-container">
<div>
Jorge Neyra
Ewy A. Mathé
</div>
<div>
Software Developer (Informatics)
Director (Informatics Core)
</div>
<div>
Email: <a href="mailto: jorge.neyra@nih.gov">jorge.neyra@nih.gov</a> (software related queries)
Email: <a href="mailto: ewy.mathe@nih.gov">ewy.mathe@nih.gov</a>
</div>
</div>
</div>
@@ -60,7 +44,7 @@ <h1>
Jordan Williams
</div>
<div>
Postbaccalaureate Fellow (In Vitro ADME)
Postbaccalaureate Fellow (DMPK Group)
</div>
<div>
Email: <a href="mailto: jordan.williams2@nih.gov">jordan.williams2@nih.gov</a>
@@ -69,33 +53,17 @@ <h1>
</div>
<div class="profiles-row">
<div class="profile-image-container">
<img [src]="noelImgSrc">
</div>
<div class="profile-info-container">
<div>
Noel Southall
</div>
<div>
Lead (Informatics)
</div>
<div>
Email: <a href="mailto: southalln@mail.nih.gov">southalln@mail.nih.gov</a>
</div>
</div>
</div>
<div class="profiles-row">
<div class="profile-image-container">
<img [src]="trungImgSrc">
<img [src]="pranavImgSrc">
</div>
<div class="profile-info-container">
<div>
Trung Nguyen
Pranav Shah
</div>
<div>
Staff Scientist (Informatics)
Lead, In Vitro ADME (DMPK Group)
</div>
<div>
Email: <a href="mailto: nguyenda@mail.nih.gov">nguyenda@mail.nih.gov</a>
Email: <a href="mailto: pranav.shah@nih.gov">pranav.shah@nih.gov</a> (assay/data related queries)
</div>
</div>
</div>
@@ -108,7 +76,7 @@ <h1>
Xin Xu
</div>
<div>
Lead (ADME Group)
Lead (DMPK Group)
</div>
<div>
Email: <a href="mailto: xin.xu3@nih.gov">xin.xu3@nih.gov</a>
12 changes: 4 additions & 8 deletions client/src/app/contact/contact.component.ts
Original file line number Diff line number Diff line change
@@ -8,12 +8,10 @@ import { DEPLOY_URL } from '../utilities/deploy-url';
styleUrls: ['./contact.component.scss']
})
export class ContactComponent implements OnInit {
jordanImgSrc: SafeResourceUrl;
vishalImgSrc: SafeResourceUrl;
pranavImgSrc: SafeResourceUrl;
jorgeImgSrc: SafeResourceUrl;
jordanImgSrc: SafeResourceUrl;
noelImgSrc: SafeResourceUrl;
trungImgSrc: SafeResourceUrl;
ewyImgSrc: SafeResourceUrl;
xinImgSrc: SafeResourceUrl;
rdkitImgSrc: SafeResourceUrl;
pythonImgSrc: SafeResourceUrl;
@@ -24,12 +22,10 @@ export class ContactComponent implements OnInit {
private domSanatizer: DomSanitizer,
@Inject(DEPLOY_URL) public deployUrl: string
) {
this.jordanImgSrc = domSanatizer.bypassSecurityTrustResourceUrl(`${this.deployUrl}assets/profile_images/williamsjos.jpg`);
this.vishalImgSrc = domSanatizer.bypassSecurityTrustResourceUrl(`${this.deployUrl}assets/profile_images/siramshettyv2.jpg`);
this.pranavImgSrc = domSanatizer.bypassSecurityTrustResourceUrl(`${this.deployUrl}assets/profile_images/shahpa2.png`);
this.jorgeImgSrc = domSanatizer.bypassSecurityTrustResourceUrl(`${this.deployUrl}assets/profile_images/neyraj2.jpg`);
this.jordanImgSrc = domSanatizer.bypassSecurityTrustResourceUrl(`${this.deployUrl}assets/profile_images/williamsjos.jpg`);
this.noelImgSrc = domSanatizer.bypassSecurityTrustResourceUrl(`${this.deployUrl}assets/profile_images/southalln.jpg`);
this.trungImgSrc = domSanatizer.bypassSecurityTrustResourceUrl(`${this.deployUrl}assets/profile_images/nguyenda.png`);
this.ewyImgSrc = domSanatizer.bypassSecurityTrustResourceUrl(`${this.deployUrl}assets/profile_images/mathee.jpg`);
this.xinImgSrc = domSanatizer.bypassSecurityTrustResourceUrl(`${this.deployUrl}assets/profile_images/xux7.jpg`);

this.rdkitImgSrc = domSanatizer.bypassSecurityTrustResourceUrl(`${this.deployUrl}assets/images/rdkit.png`);
28 changes: 20 additions & 8 deletions client/src/app/home/home.component.html
Original file line number Diff line number Diff line change
@@ -1,8 +1,18 @@
<div class="container">
<div class="inner-container">
<h2>
Background
</h2>

<div class="inner-container" style="padding-top: 0px;">
<!--
Banner Image Attibution (License: Creative Commons CCBY - https://creativecommons.org/licenses/by/3.0/us/legalcode):
- Processing by Shocho from the Noun Project
- molecule by DinosoftLab from the Noun Project
- Neural Network by Ian Rahmadi Kurniawan from the Noun Project
- Tissue Culture Plate by Julie Ko from the Noun Project
- Scatter Plot by SBTS from the Noun Project
- Data by Alice Design from the Noun Project
-->
<img [src]="bannerImgSrc" style="width: 100%; max-height: 100%; padding-bottom: 10px;">

<br>

<p style="text-align: justify;">
ADME@NCATS is a resource developed by NCATS to host in silico prediction models for various ADME (Absorption, Distribution, Metabolism and Excretion) properties. The resource serves as an important tool for the drug discovery community with potential uses in compound optimization and prioritization. The models were retrospectively validated on a subset of <a href="https://ncats.nih.gov/expertise/preclinical/npc" target="_blank">marketed drugs</a> which resulted in very good accuracies.
@@ -13,17 +23,20 @@ <h2>
<p style="text-align: justify;">
Data that were used for developing the models are made publicly accessible by depositing them into PubChem database. In some instances, when complete data cannot be made public, a subset of the data are deposited into PubChem. Links to the PubChem assays can be found in the individual model pages. The users are highly encouraged to use these data for development and validation of QSAR models.
</p>
<br>

<h2>
Publications
</h2>

<ol>
<li>
<p>Gonzalez, E., Jain, S., Shah P. et al., <a href="https://doi.org/10.1124/dmd.120.000320" target="_blank">Development of Robust QSAR Models for CYP2C9, CYP2D6, and CYP3A4 Catalysis and Inhibition.</a> <i> Drug Metab Dispos.</i> (June 2021).</p>
<p>Williams, J., Siramshetty, V.B., Nguyen D.T. et al., <a href="https://doi.org/10.1016/j.bmc.2021.116588" target="_blank">Using in vitro ADME data for lead compound selection: An emphasis on PAMPA pH 5 permeability and oral bioavailability.</a> <i> Bioorg. Med. Chem.</i> 56, 116588 (2022).</p>
</li>
<li>
<p>Gonzalez, E., Jain, S., Shah P. et al., <a href="https://doi.org/10.1124/dmd.120.000320" target="_blank">Development of Robust QSAR Models for CYP2C9, CYP2D6, and CYP3A4 Catalysis and Inhibition.</a> <i> Drug Metab Dispos.</i> 49 (9) 822-832 (2021).</p>
</li>
<li>
<p>Siramshetty, V.B., Williams, J., Nguyen D.T. et al., <a href="https://doi.org/10.1177/24725552211017520" target="_blank">Validating ADME QSAR Models Using Marketed Drugs.</a> <i> SLAS Discov Adv Sci Drug Discov.</i> (June 2021).</p>
<p>Siramshetty, V.B., Williams, J., Nguyen D.T. et al., <a href="https://doi.org/10.1177/24725552211017520" target="_blank">Validating ADME QSAR Models Using Marketed Drugs.</a> <i> SLAS Discov Adv Sci Drug Discov.</i> 26(10):1326-1336 (2021).</p>
</li>
<li>
<p>Siramshetty, V.B., Shah, P., Kerns, E. et al., <a href="https://doi.org/10.1038/s41598-020-77327-0" target="_blank">Retrospective assessment of rat liver microsomal stability at NCATS: data and QSAR models.</a> <i> Sci Rep.</i> 10, 20713 (2020).</p>
@@ -32,6 +45,5 @@ <h2>
<p>Shah, P., Siramshetty, V.B., Zakharov, A.V. et al., <a href="https://doi.org/10.1186/s13321-020-00426-7" target="_blank">Predicting liver cytosol stability of small molecules.</a> <i> J Cheminform.</i> 12, 21 (2020).</p>
</li>
</ol>

</div>
</div>
17 changes: 16 additions & 1 deletion client/src/app/home/home.component.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,25 @@
import { Component, OnInit } from '@angular/core';
//import { Component, OnInit } from '@angular/core';
import { Component, OnInit, Inject } from '@angular/core';
import { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';
import { DEPLOY_URL } from '../utilities/deploy-url';

@Component({
selector: 'adme-home',
templateUrl: './home.component.html',
styleUrls: ['./home.component.scss']
})

export class HomeComponent implements OnInit {

bannerImgSrc: SafeResourceUrl;

constructor(
private domSanatizer: DomSanitizer,
@Inject(DEPLOY_URL) public deployUrl: string
) {
this.bannerImgSrc = domSanatizer.bypassSecurityTrustResourceUrl(`${this.deployUrl}assets/images/banner.png`);
}


ngOnInit() {}
}
Loading

0 comments on commit c857806

Please sign in to comment.