Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
ngx-bootstrap
Advanced tools
ngx-bootstrap is a popular Angular library that provides Bootstrap components powered by Angular. It allows developers to use Bootstrap's UI components in their Angular applications with ease, offering a wide range of features and customization options.
Alerts
The Alerts component allows you to display different types of alert messages such as success, info, warning, and danger. This is useful for providing feedback to users.
<alert type="success">Success Alert</alert>
Modals
The Modals component allows you to create and manage modal dialogs. This is useful for displaying additional information or forms without navigating away from the current page.
<button type="button" class="btn btn-primary" (click)="openModal()">Open Modal</button>
<ng-template #template>
<div class="modal-body">
<p>Modal content goes here.</p>
</div>
</ng-template>
Datepicker
The Datepicker component provides a user-friendly way to select dates. It supports various configurations and customizations to fit different use cases.
<input type="text" class="form-control" bsDatepicker>
Tabs
The Tabs component allows you to create tabbed interfaces. This is useful for organizing content into separate sections that can be easily navigated by users.
<tabset>
<tab heading="Tab 1">Content of Tab 1</tab>
<tab heading="Tab 2">Content of Tab 2</tab>
</tabset>
Tooltips
The Tooltips component provides a way to display additional information when users hover over or focus on an element. This is useful for providing contextual help or explanations.
<button type="button" class="btn btn-secondary" tooltip="Tooltip text">Hover me</button>
ng-bootstrap provides Bootstrap components for Angular without the need for jQuery. It offers a similar set of features to ngx-bootstrap but is designed to work seamlessly with Angular's reactive forms and other Angular-specific features.
PrimeNG is a comprehensive UI component library for Angular that includes a wide range of components such as data tables, charts, and form controls. It offers more components than ngx-bootstrap but may have a steeper learning curve.
Angular Material is the official Material Design component library for Angular. It provides a set of high-quality, reusable UI components based on Google's Material Design guidelines. It offers a different design aesthetic compared to Bootstrap.
Best way to quickly integrate Bootstrap 3 or Bootstrap 4 Components with Angular
ngx-bootstrap contains all core (and not only) Bootstrap components powered by Angular. So you don't need to include original JS components, but we are using markup and CSS provided by Bootstrap.
ngx-bootstrap is an Open Source (MIT Licensed) project, it's an independent project with ongoing development made possible thanks to the support of our awesome backers. If you also would like to show support or simply give back to Open Source community, please consider becoming a backer sponsor of ngx-bootstrap on OpenCollective
All donated funds are managed transparently on OpenCollective and will be used solely for compensating work and expenses for contributors. Valor Software employees and contractors are not eligible to use these funds.
What's there for you? Proper recognition and exposure of your name/logo/website on our page. Our main sponsors will be presented under this section! Be the first!
Install ngx-bootstrap
from npm
:
npm install ngx-bootstrap --save
Add needed package to NgModule imports:
import { TooltipModule } from 'ngx-bootstrap/tooltip';
@NgModule({
...
imports: [TooltipModule.forRoot(),...]
...
})
Add component to your page:
<button type="button" class="btn btn-primary"
tooltip="Vivamus sagittis lacus vel augue laoreet rutrum faucibus.">
Simple demo
</button>
You will need bootstrap styles:
Bootstrap 3
<!-- index.html -->
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
Bootstrap 4
<!--- index.html -->
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" rel="stylesheet">
Use the Angular CLI ng add command for updating your Angular project
ng add ngx-bootstrap
Or use ng add
to add needed component (for example tooltip)
ng add ngx-bootstrap --component tooltip
Add component to your page:
<button type="button" class="btn btn-primary"
tooltip="Vivamus sagittis lacus vel augue laoreet rutrum faucibus.">
Simple demo
</button>
Sometimes, your project might contain some library that could interfere with the bootstrap framework, or you might have a customized version of bootstrap. The consequence is that the process of determining bootstrap version might be failed, which can break the UI. In that case, we can still set the bootstrap version manually in the bootstrapping component (i.e. AppComponent
):
import { setTheme } from 'ngx-bootstrap/utils';
@Component({...})
export class AppComponent {
constructor() {
setTheme('bs3'); // or 'bs4'
...
}
}
Main source of API documentation and usage scenarios available here: https://valor-software.com/ngx-bootstrap/
Additionally you can find demos and docs deployed from latest code with angular@latest and angular@next
Server side rendered version of this documentation available here served with Angular universal and nest.js
Check demo page for API reference
Bootstrap and angular-cli
please refer to using-with-bootstrap-and-angular-cliangular-seed
please refer to getting-started-with-angular-seedsystem.js
(and angular2 quickstart) please checkout sample repositoryplnkr
sample available hereAoT using ngc and rollup
please refer to ngx-bootstrap-with-aotASP.NET Core 2.0
please refer to using-with-asp.net-core-2First time:
npm install
npm run build
To update your fork and prepare it for local usage:
git pull upstream development
rm -rf node_modules
npm install
npm run build
To run the demo:
npm run demo.serve
// to serve local demo. This is for testing only, without watchers.For local development run:
npm run build.watch
// in first terminalng serve
// in secondIf you want to run the demo with Angular Universal:
npm run demo.serve-universal
The only two dependencies are Angular and Bootstrap CSS. Here is the versions compatibility list:
ngx-bootstrap | Angular | Bootstrap CSS |
---|---|---|
5.x.x | 7.x.x - 8.x.x | 3.x.x or 4.x.x |
4.x.x | 6.x.x - 7.x.x | 3.x.x or 4.x.x |
3.x.x | 6.x.x - 7.x.x | 3.x.x or 4.x.x |
2.x.x | 2.x.x - 4.x.x | 3.x.x or 4.x.x |
1.x.x | 2.x.x | 3.x.x or 4.x.x |
So if you are in trouble, here's where you can look for help.
The best place to ask questions is on StackOverflow (under the ngx-bootstrap
tag)
You can also join our Slack channel and link your stackoverflow question there. But try to avoid asking generic help questions directly on Slack since they can easily get lost in the chat. You can also search among the existing GitHub issues.
If, and only if, none of the above helped, please open a new issue.
All contributions very welcome! And remember, contribution is not only PRs and code, but any help with docs or helping other developers to solve issues are very appreciated! Thanks in advance!
Please read our contribution guidelines.
Please read central ngx
modules readme for details, plans and approach
Crossbrowser testing sponsored by Saucelabs
End-to-end testing sponsored by Cypress
5.3.0 (2019-10-11)
FAQs
Angular Bootstrap
The npm package ngx-bootstrap receives a total of 225,925 weekly downloads. As such, ngx-bootstrap popularity was classified as popular.
We found that ngx-bootstrap demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 3 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.