bitpie钱包安卓版|secman

作者: bitpie钱包安卓版
2024-03-07 21:01:36

GitHub - scmn-dev/secman: [Archived] Human-friendly and amazing secrets manager.

GitHub - scmn-dev/secman: [Archived] Human-friendly and amazing secrets manager.

Skip to content

Toggle navigation

Sign in

Product

Actions

Automate any workflow

Packages

Host and manage packages

Security

Find and fix vulnerabilities

Codespaces

Instant dev environments

Copilot

Write better code with AI

Code review

Manage code changes

Issues

Plan and track work

Discussions

Collaborate outside of code

Explore

All features

Documentation

GitHub Skills

Blog

Solutions

For

Enterprise

Teams

Startups

Education

By Solution

CI/CD & Automation

DevOps

DevSecOps

Resources

Learning Pathways

White papers, Ebooks, Webinars

Customer Stories

Partners

Open Source

GitHub Sponsors

Fund open source developers

The ReadME Project

GitHub community articles

Repositories

Topics

Trending

Collections

Pricing

Search or jump to...

Search code, repositories, users, issues, pull requests...

Search

Clear

Search syntax tips

Provide feedback

We read every piece of feedback, and take your input very seriously.

Include my email address so I can be contacted

Cancel

Submit feedback

Saved searches

Use saved searches to filter your results more quickly

Name

Query

To see all available qualifiers, see our documentation.

Cancel

Create saved search

Sign in

Sign up

You signed in with another tab or window. Reload to refresh your session.

You signed out in another tab or window. Reload to refresh your session.

You switched accounts on another tab or window. Reload to refresh your session.

Dismiss alert

This repository has been archived by the owner on Sep 9, 2022. It is now read-only.

scmn-dev

/

secman

Public archive

Notifications

Fork

10

Star

79

[Archived] Human-friendly and amazing secrets manager.

secman.dev

License

MIT license

79

stars

10

forks

Branches

Tags

Activity

Star

Notifications

Code

Issues

0

Pull requests

0

Discussions

Actions

Projects

1

Security

Insights

Additional navigation options

Code

Issues

Pull requests

Discussions

Actions

Projects

Security

Insights

scmn-dev/secman

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

 mainBranchesTagsGo to fileCodeFolders and filesNameNameLast commit messageLast commit dateLatest commit History1,349 Commits.devcontainer.devcontainer  .github.github  .vscode.vscode  apiapi  clicli  constantsconstants  cryptocrypto  dockerdocker  hubhub  internalinternal  iosios  pkgpkg  sccscc  scriptsscripts  toolstools  .editorconfig.editorconfig  .gitattributes.gitattributes  .gitignore.gitignore  .gitpod.yml.gitpod.yml  .golangci.yml.golangci.yml  .goreleaser.yml.goreleaser.yml  .npmrc.npmrc  .snyk.snyk  CHANGELOG.mdCHANGELOG.md  LICENSELICENSE  README.mdREADME.md  Taskfile.yamlTaskfile.yaml  go.modgo.mod  go.sumgo.sum  main.gomain.go  package.jsonpackage.json  pnpm-lock.yamlpnpm-lock.yaml  pnpm-workspace.yamlpnpm-workspace.yaml  turbo.jsonturbo.json  View all filesRepository files navigationREADMECode of conductMIT licenseSecurityArchived

since 30 april 2022, secman has archived after two years of working, the reason is that there is not enough interest in this project

secman is a password manager can store, retrieves, generates, and synchronizes passwords, The most important difference is secman is not GPG cored. Instead, it uses a master password to securely store your passwords. and you can easily manage your passwords from everywhere with Secman Cloud .

Projects

Project

Package

Version

Links

CLI

scmn-dev/secman

README.md

Hub

@secman/hub

README.md

Scc

@secman/scc

README.md

Crypto

@secman/crypto

README.md

Featuers

Not GPG cored.

It uses a master password to securely store your passwords.

It syncs your passwords.

Easy to use.

It is written in Go to be fast.

You can easily manage your passwords from everywhere, from desktop, web, command line, and more.

to learn about secman types, check out the secman types page.

Installation ⬇

Secman CLI

Using script

Shell

curl -sL https://u.secman.dev | bash

PowerShell

iwr -useb https://w.secman.dev | iex

then restart your powershell

Homebrew

brew install scmn-dev/tap/secman

Scoop

scoop bucket add secman https://github.com/scmn-dev/scoop

scoop install secman

Secman Hub

Refer to secman hub instructions.

Secman Web Extension

Check out secman web extension for installation instructions.

Usage

Some Resources

website

docs

blog

privacy policy of secman

Contributing

Thanks for your interest in contributing to secman. You can start a development environment with gitpod

Special thanks ❤

thanks to @charmbracelet for thier awesome TUI libraries .

License

secman is licensed under the terms of MIT License

About

[Archived] Human-friendly and amazing secrets manager.

secman.dev

Topics

cli

golang

typescript

crypto

manager

password-manager

tui

terminal-based

human-friendly

secrets-manager

secman

Resources

Readme

License

MIT license

Code of conduct

Code of conduct

Security policy

Security policy

Activity

Custom properties

Stars

79

stars

Watchers

7

watching

Forks

10

forks

Report repository

Releases

52

5 May Release v6.3.0

Latest

May 5, 2022

+ 51 releases

Packages

1

 

Contributors

9

Languages

Vue

36.3%

Go

27.8%

TypeScript

24.3%

JavaScript

6.3%

SCSS

4.0%

Dockerfile

0.7%

Other

0.6%

Footer

© 2024 GitHub, Inc.

Footer navigation

Terms

Privacy

Security

Status

Docs

Contact

Manage cookies

Do not share my personal information

You can’t perform that action at this time.

Releases · scmn-dev/secman · GitHub

Releases · scmn-dev/secman · GitHub

Skip to content

Toggle navigation

Sign in

Product

Actions

Automate any workflow

Packages

Host and manage packages

Security

Find and fix vulnerabilities

Codespaces

Instant dev environments

Copilot

Write better code with AI

Code review

Manage code changes

Issues

Plan and track work

Discussions

Collaborate outside of code

Explore

All features

Documentation

GitHub Skills

Blog

Solutions

For

Enterprise

Teams

Startups

Education

By Solution

CI/CD & Automation

DevOps

DevSecOps

Resources

Learning Pathways

White papers, Ebooks, Webinars

Customer Stories

Partners

Open Source

GitHub Sponsors

Fund open source developers

The ReadME Project

GitHub community articles

Repositories

Topics

Trending

Collections

Pricing

Search or jump to...

Search code, repositories, users, issues, pull requests...

Search

Clear

Search syntax tips

Provide feedback

We read every piece of feedback, and take your input very seriously.

Include my email address so I can be contacted

Cancel

Submit feedback

Saved searches

Use saved searches to filter your results more quickly

Name

Query

To see all available qualifiers, see our documentation.

Cancel

Create saved search

Sign in

Sign up

You signed in with another tab or window. Reload to refresh your session.

You signed out in another tab or window. Reload to refresh your session.

You switched accounts on another tab or window. Reload to refresh your session.

Dismiss alert

This repository has been archived by the owner on Sep 9, 2022. It is now read-only.

scmn-dev

/

secman

Public archive

Notifications

Fork

10

Star

79

Code

Issues

0

Pull requests

0

Discussions

Actions

Projects

1

Security

Insights

Additional navigation options

Code

Issues

Pull requests

Discussions

Actions

Projects

Security

Insights

Releases: scmn-dev/secman

Releases

Tags

Releases · scmn-dev/secman

5 May Release v6.3.0

05 May 20:32

abdfnx

v6.3.0

6aeffc9

Compare

Choose a tag to compare

View all tags

5 May Release v6.3.0

Latest

Latest

Note:

This is the latest version of secman. thanks for using secman!

Changelog

6aeffc9 update secman cli docker image dockerfile

c0bd4dc publish v6.3.0 versio, add v6.3.0 release notes

761eb61 make a lot of fixes, improvements, and updates for secman

21b9557 build(deps): bump github.com/scmn-dev/get-latest from 0.1.2 to 0.1.3 (#224)

ec7ce1f build(deps): bump github.com/evertras/bubble-table from 0.11.0 to 0.11.1 (#225)

a350c99 Merge pull request #223 from abdfnx/main

abaa35d Merge branch 'scmn-dev:main' into main

c12441b Update README.md

12ecafd Merge branch 'scmn-dev:main' into main

f1f5cc8 build(deps): bump github.com/aws/aws-lambda-go from 1.30.0 to 1.31.1 (#222)

fcfeccc go: update go modules and sums

1baab0b Merge branch 'scmn-dev:main' into main

e0ba0f6 build(deps): bump github.com/tidwall/gjson from 1.14.0 to 1.14.1 (#43) (#221)

29205e5 build(deps): bump github.com/tidwall/gjson from 1.14.0 to 1.14.1 (#43)

e8d1562 build(deps): bump github.com/evertras/bubble-table from 0.10.1 to 0.11.0 (#218)

e534542 build(deps): bump github.com/tidwall/gjson from 1.14.0 to 1.14.1 (#219)

91fe7df build(deps-dev): bump babel-loader from 8.2.4 to 8.2.5 in /hub (#220)

efe1d44 add new go modules, update executable files in secman

5f35eb5 Merge pull request #217 from Kishinskii/main

0a63da8 better fix for list error

dc9437f Merge pull request #216 from Kishinskii/main

d1ec8aa fix panic: runtime error

e0ada34 security: fix all github potential security vulnerabilities

131ec1e Merge pull request #214 from abdfnx/main

7d1a06b Merge branch 'scmn-dev:main' into main

3bc3b34 build(deps): bump github.com/evertras/bubble-table from 0.9.0 to 0.10.1 (#40)

e1a3d8f build(deps): bump github.com/abdfnx/tran from 0.1.3 to 0.1.31 (#41)

f9f2d41 Merge branch 'main' of https://github.com/scmn-dev/secman

a3b4d1f secman cli: change os exiting code to 2 instead of 0

0d41ce9 Merge pull request #213 from abdfnx/main

f9afdcf build(deps): bump github.com/spf13/viper from 1.10.1 to 1.11.0 (#39)

51ef0b5 Merge branch 'main' of https://github.com/scmn-dev/secman

2ae69b5 secman cli: rename all password types flags to singular

fee2cdf docker: fix smcr/secman docker image bugs, add new task

f4f6d19 security: fix github potential security vulnerabilities (async)

fcdecec actions(docker-ci): fix CI by remove cloning old docker repo

4d3d2ba bring scmn-dev/docker repo to secman repo, update tasks

cc1f303 fix(secman hub): fix secman hub pwa installation button

43111fc build(deps): bump @oclif/core from 1.6.4 to 1.7.0 in /scc (#212)

82eae89 move secman issue templates to scmn-dev/.github

9cc3bbc modfile: update secman go modfile

c0ebd5b version checker: update secman cli version checker view and colors

What's Changed

build(deps): bump @oclif/core from 1.6.4 to 1.7.0 in /scc by @dependabot in #212

build(deps): bump github.com/spf13/viper from 1.10.1 to 1.11.0 (#39) by @abdfnx in #213

build(deps): bump abdfnx/tran & evertras/bubble-table by @abdfnx in #214

fix panic: runtime error by @Kishinskiy in #216

better fix for list error by @Kishinskiy in #217

build(deps-dev): bump babel-loader from 8.2.4 to 8.2.5 in /hub by @dependabot in #220

build(deps): bump github.com/tidwall/gjson from 1.14.0 to 1.14.1 by @dependabot in #219

build(deps): bump github.com/evertras/bubble-table from 0.10.1 to 0.11.0 by @dependabot in #218

build(deps): bump github.com/tidwall/gjson from 1.14.0 to 1.14.1 (#43) by @abdfnx in #221

build(deps): bump github.com/aws/aws-lambda-go from 1.30.0 to 1.31.1 by @dependabot in #222

Merge by @abdfnx in #223

build(deps): bump github.com/evertras/bubble-table from 0.11.0 to 0.11.1 by @dependabot in #225

build(deps): bump github.com/scmn-dev/get-latest from 0.1.2 to 0.1.3 by @dependabot in #224

Full Changelog: v6.2.3...v6.3.0

Contributors

dependabot, Kishinskiy, and abdfnx

Assets

30

checksums.txt

2.36 KB

2022-05-05T20:29:53Z

secman_freebsd_v6.3.0_386.zip

10.7 MB

2022-05-05T20:29:53Z

secman_freebsd_v6.3.0_amd64.zip

11 MB

2022-05-05T20:30:08Z

secman_freebsd_v6.3.0_arm.zip

10.6 MB

2022-05-05T20:29:56Z

secman_freebsd_v6.3.0_arm64.zip

10.2 MB

2022-05-05T20:29:54Z

secman_linux_v6.3.0_386.zip

10.7 MB

2022-05-05T20:30:09Z

secman_linux_v6.3.0_amd64.zip

11.1 MB

2022-05-05T20:29:55Z

secman_linux_v6.3.0_arm.zip

10.7 MB

2022-05-05T20:29:53Z

secman_linux_v6.3.0_arm64.zip

10.3 MB

2022-05-05T20:29:55Z

secman_macos_v6.3.0_amd64.zip

10.9 MB

2022-05-05T20:29:54Z

Source code

(zip)

2022-05-05T19:56:08Z

Source code

(tar.gz)

2022-05-05T19:56:08Z

Show all 30 assets

All reactions

0

Join discussion

7 April Release v6.2.3

07 Apr 14:50

abdfnx

v6.2.3

03bb287

Compare

Choose a tag to compare

View all tags

7 April Release v6.2.3

Added

nothing

Changed

Bring scmn-dev/desktop repo to secman repo.

Rename Secman Desktop to Secman Hub.

Build secman monorepo.

Upgrade go to go1.18.

Rename Secman Core CLI to scc.

Fixed

Fix github security vulnerabilities.

Fix secman ui command.

Changelog

03bb287 tasks: update upload-scoop-manifest task commands in Taskfile

6a52633 actions(release): fix secman release workflow by fix task name

c2b5d50 task: rename node_checks to node-checks in Taskfile

277fd9b task: add more tasks to fix release workflow (build step)

9020813 actions(release): fix release action and add new steps, add new tasks

34c60c0 actions(release): fix secman release workflow, update steps names

606fd20 add secman v6.2.3 release notes , update tasks and packages

6558c3b publish secman v6.2.3, update package & modfile configs, update pkgs

54e3331 build(deps): bump vee-validate from 2.2.15 to 3.4.14 in /hub (#208)

b3dc002 update README, add new task, update hub header, fix secman ui command

e9fa07e hub: add Install Secman Hub as Desktop App button, update icons

5973b56 docs(REAMDE): add Secman Core readme file about secman core

6955889 Merge pull request #204 from abdfnx/main

f9d6c75 build(deps-dev): bump typescript from 4.1.6 to 4.6.3 in /hub (#36)

8073ec3 build(deps): bump github.com/evertras/bubble-table from 0.8.4 to 0.9.0 (#31)

5925462 build(deps-dev): bump @vue/cli-plugin-typescript in /hub (#32)

dcba000 downgrade some packages to fix secman hub issues and bugs

a1ce071 build(deps): bump vee-validate from 2.2.15 to 3.4.14 in /hub (#200)

6e8d18a build(deps-dev): bump @vue/cli-service from 4.5.17 to 5.0.4 in /hub (#199)

c51ce63 add babel-loader package to hub, update lockfile

8077449 build(deps-dev): bump @vue/cli-plugin-router in /hub (#201)

76657c2 Merge pull request #203 from abdfnx/main

1eabd29 build(deps): bump vue-debounce from 2.6.0 to 3.0.2 in /hub (#27)

69c0a11 build(deps): bump dotenv from 11.0.0 to 16.0.0 in /hub (#29)

ba7ac78 build(deps-dev): bump @vue/cli-plugin-babel from 4.5.17 to 5.0.4 in /hub (#202)

241f814 update: rename core to scc, update tasks, and update configs

7abf31a docs(README): fix secman license file url, update Secman Hub section

fb00e7b Merge branch 'main' of https://github.com/scmn-dev/secman

565ee91 upgrade: update secman module name, upgrade go to 1.18, build secman hub

b32941d build(deps): bump prettier from 2.6.1 to 2.6.2 in /core (#196)

9ff54e2 build(deps): bump cfonts from 2.10.0 to 2.10.1 in /core (#195)

b6bb8f5 build(deps): bump @oclif/core from 1.6.3 to 1.6.4 in /core (#194)

12588b0 chore: update clean npm script and update @secman/crypto package

d65ccfc fix(security): fix all github security vulnerabilities in package.json

10d29df upgrade: move secman desktop and spinner to secman repo and build sm monorepo

2d25db1 docs(README): make secman license text link bold

b1d0e03 build(deps): bump prettier from 2.6.0 to 2.6.1 in /core (#193)

What's Changed

build(deps): bump prettier from 2.6.0 to 2.6.1 in /core by @dependabot in #193

build(deps): bump @oclif/core from 1.6.3 to 1.6.4 in /core by @dependabot in #194

build(deps): bump cfonts from 2.10.0 to 2.10.1 in /core by @dependabot in #195

build(deps): bump prettier from 2.6.1 to 2.6.2 in /core by @dependabot in #196

build(deps-dev): bump @vue/cli-plugin-babel from 4.5.17 to 5.0.4 in /hub by @dependabot in #202

build(deps): bump dotenv and vue-debounce by @abdfnx in #203

build(deps-dev): bump @vue/cli-plugin-router from 4.5.17 to 5.0.4 in /hub by @dependabot in #201

build(deps-dev): bump @vue/cli-service from 4.5.17 to 5.0.4 in /hub by @dependabot in #199

build(deps): bump vee-validate from 2.2.15 to 3.4.14 in /hub by @dependabot in #200

build(deps): bump evertras/bubble-table, @vue/cli-plugin-typescript and typescript by @abdfnx in #204

build(deps): bump vee-validate from 2.2.15 to 3.4.14 in /hub by @dependabot in #208

Full Changelog: v6.2.2...v6.2.3

Contributors

dependabot and abdfnx

Assets

30

1

abdfnx reacted with thumbs up emoji

All reactions

1 reaction

1 person reacted

0

Join discussion

24 March Release v6.2.2

24 Mar 16:29

abdfnx

v6.2.2

8656fc4

Compare

Choose a tag to compare

View all tags

24 March Release v6.2.2

Added

Add --auto-generate flag to secman insert command (this flag only works with login type).

Changed

Update secman list interface view.

Fixed

nothing

Changelog

8656fc4 publish secman v6.2.2, add secman v6.2.2 release notes

132da07 update: add tab to secman list short help view, update actions

4964222 new features: add --auto-generate option to insert command

37fce57 build(deps): bump github.com/AlecAivazis/survey/v2 from 2.3.3 to 2.3.4 (#190)

93b9989 build(deps): bump @oclif/core from 1.6.1 to 1.6.3 in /core (#191)

b7749a6 build(deps): bump github.com/AlecAivazis/survey/v2 from 2.3.2 to 2.3.3 (#189)

262ce55 add scoop section in goreleaser config, remove old scoop scripts

beb9864 actions(build-ci): switch oses in homebrew and bfs jobs

5582082 actions(build-ci): add Setup Node.js step in homebrew job

ca276a8 actions(build-ci): add changing owner command to build-ci workflow

063d8ae goreleaser: remove sudo privileges from brews section

c9dbf43 actions(release): add GITHUB_ACTIONS_NAME and GITHUB_ACTIONS_EMAIL env

e27a38c actions(release): add more jobs and tasks for secman scoop bucket

4f647b6 add sudo privileges to brew section, add scoop task in release ci

What's Changed

build(deps): bump github.com/AlecAivazis/survey/v2 from 2.3.2 to 2.3.3 by @dependabot in #189

build(deps): bump @oclif/core from 1.6.1 to 1.6.3 in /core by @dependabot in #191

build(deps): bump github.com/AlecAivazis/survey/v2 from 2.3.3 to 2.3.4 by @dependabot in #190

Full Changelog: v6.2.1...v6.2.2

Contributors

dependabot

Assets

29

1

abdfnx reacted with rocket emoji

All reactions

1 reaction

1 person reacted

0

Join discussion

Secman v6.2.1

18 Mar 20:59

abdfnx

v6.2.1

5e89962

Compare

Choose a tag to compare

View all tags

Secman v6.2.1

Added

Add --tree-view flag to secman list command.

$ secman list --tree-view

.

├──Logins

│ ├──Railway

│ ├──Charm

│ ├──Vercel

│ ├──Hashicorp

│ ├──Firebase

│ ├──Stripe

│ ├──Twitter

│ ├──Amazon

│ ├──Microsoft Account

│ └──MetaMask

├──Credit Cards

│ └──paypal.com

├──Emails

│ └──Gmail

├──Notes

│ └──Secret

├──Servers

└──┴──Home server

Add --user flag to secman whoami command to display user.

Build secman files command with secman files send and secman files receive sub-commands. Ingrated with tran.

Create secman encrypt command with --sha256, --sha512, --aes, --aes-key, and --md5 flags.

Add --username and --password flags to secman auth login command.

Changed

Update secman initializer and add ~/.secman directory checker.

Fixed

Fix secman config file issue in secman auth login command.

Changelog

5e89962 publish secman v6.2.1, add secman v6.2.1 release notes

7237221 fix: fix secman config file issue in secman auth login command

dbeb27a update secman initializer and add ~/.secman dir checker

0dc1f4f new feature: add --username and --password flags to auth login cmd

e7e0695 goreleaser: add post_install prop to brews section

747aa74 add license prop to secman brew config, add encrypt command

7ebba81 feature: finish from secman files receive command

c8a50ff new feature: start building secman files command with send subcmd

64f1752 feature: add --user flag to secman whoami command to display user

685c19b update: add --tree-view flag to secman list command, update sumfile

bf3a3e5 build(deps): bump @oclif/core from 1.6.0 to 1.6.1 in /core (#187)

0d8e521 Merge pull request #186 from abdfnx/main

30ea49f Merge branch 'scmn-dev:main' into main

b3bbd5e build(deps): bump prettier from 2.5.1 to 2.6.0 in /core (#17)

532609e docs(README): add secman cli preview svg image in README

b9fcbef build(deps): bump github.com/evertras/bubble-table from 0.8.3 to 0.8.4 (#185)

5d8298d Merge pull request #184 from abdfnx/main

a477d9a build(deps): bump @oclif/core from 1.5.3 to 1.6.0 in /core (#15)

8b2d44e Merge pull request #183 from abdfnx/main

47bd5be Merge pull request #16 from scmn-dev/main

58d4fe3 Merge branch 'main' into main

c348279 actions(docker-ci): finish from secman docker ci workflow

d3aba5a fix Incomplete string escaping or encoding issue #182

c53cc8f Merge branch 'main' of https://github.com/scmn-dev/secman

56edc22 fix: fix secman core cli linking issue by use npm instead of yarn

0340ed7 docs(README): update secman scoop installation method

84cac9b actions(build-ci): update bfs_windows test to secman info command

725c099 scripts: update go mod tidy command with -compat flag

a7bf8a0 remove bfsw task, add fetch-depth prop in secman build ci

b4d8bf1 actions(build-ci): finish from secman build-ci workflow

d06284e rename .zshrc to zshrc in scripts/docker, update gitattributes

ee9dedc add .gitattributes file

aa9e3fb docker: add secman docker container utils in scripts/docker

dbe4566 add scoop task, build secman scoop generator, update packages

b54d7e8 build(deps): bump write-file-atomic from 3.0.3 to 4.0.1 in /core (#8)

What's Changed

Merge pull request #16 from scmn-dev/main by @abdfnx in #183

build(deps): bump @oclif/core from 1.5.3 to 1.6.0 in /core (#15) by @abdfnx in #184

build(deps): bump github.com/evertras/bubble-table from 0.8.3 to 0.8.4 by @dependabot in #185

build(deps): bump prettier from 2.5.1 to 2.6.0 in /core (#17 by @abdfnx in #186

build(deps): bump @oclif/core from 1.6.0 to 1.6.1 in /core by @dependabot in #187

Full Changelog: v6.2.0...v6.2.1

Contributors

dependabot and abdfnx

Assets

29

1

abdfnx reacted with hooray emoji

1

david-tomson reacted with rocket emoji

All reactions

1 reaction

1 reaction

2 people reacted

0

Join discussion

11 March Release v6.2.0

12 Mar 20:32

abdfnx

v6.2.0

19e4dbc

Compare

Choose a tag to compare

View all tags

11 March Release v6.2.0

Secman v3 ✨

this release is the first release of secman v3

it's comes with new features, new design, new infrastructure, and new secman.

Added

Add secman auth command with create, login, logout, and refresh sub-commands.

Add secman delete command.

Create secman docs and secman doctor commands.

Build secman edit command.

Create secman generate command.

Add secman info and secman init commands.

Build secman insert command.

Create secman read command.

Build secman whoami command.

Initialize @go-task config file.

Add Terminal User Interface (TUI) to secman with @charmbracelet libraries.

Create secman doctor command with secman doctor fix sub-command.

Add secman ui command.

Build SMUI by @david-tomson.

Changed

Move secman v2 to secman core cli (scc).

Convert from typescript to golang with typescript.

Update README.md.

Update vscode config.

Update secman contributing guide.

Fixed

Fix messages.

Fix connections with secman cloud.

Fix Secman Core CLI (scc).

Changelog

19e4dbc goreleaser: update goreleaser config file via update hooks

0ee1c55 add secman v6.2.0 changelog notes, publish secman v6.2.0

8a7aff6 fix api spinner suffix, update and fix secman doctor commands

48d2377 fix: fix secman config initialing in windows #180

b18cad9 update secman package config, update scc vars names

be3d55b downgrade secman core cli (scc) version to v0.1.0

62dc041 fix: update sc to scc to fix issues in windows

0230178 fix secman doctor command, update secman ui open command

b946aff finish from secman ui update, and update ui open command

3a833f4 fix secman doctor ui command, update secman constants

0b69306 add secman ui command with ui open sub-command, update api

1e2091b fix & update doctor fix command, add strings tool in sc

c7a0be5 build(deps): bump write-file-atomic from 3.0.3 to 4.0.1 in /core (#178)

7d3f473 update sc, add doctor and doctor fix commands

fadebde update packages, fix build task, fix secman config

246015e Merge pull request #174 from abdfnx/main

f2aee59 build(deps): bump indent-string from 4.0.0 to 5.0.0 in /core (#2)

eaa4a07 build(deps): bump @oclif/core from 1.1.2 to 1.5.3 in /core (#5)

6c6e2ab build(deps): bump axios from 0.25.0 to 0.26.1 in /core (#4)

eb91d8c build(deps): bump ts-node from 8.10.2 to 10.7.0 in /core (#6)

64b1167 build(deps-dev): bump @types/write-file-atomic in /core (#3)

9d03671 Merge branch 'scmn-dev:main' into main

39a65ae build(deps): bump github.com/spf13/cobra from 1.3.0 to 1.4.0 (#168)

4686a51 build(deps): bump tslib from 1.14.1 to 2.3.1 in /core (#169)

dee72b1 build(deps): bump cli-ux from 5.6.7 to 6.0.9 in /core (#170)

c181532 build(deps-dev): bump @types/node from 16.11.26 to 17.0.21 in /core (#172)

92b2dd9 build(deps-dev): bump @oclif/plugin-plugins in /core (#173)

4fba30b update secman core cli version to v0.1.1, add new packages

9e2fa0b Merge branch 'main' of https://github.com/scmn-dev/secman

3a760e0 chmod: change mode status of scripts/* files

c16f8a5 Bump dotenv from 10.0.0 to 16.0.0 in /core (#164)

20e4e06 Bump @oclif/plugin-help from 5.1.10 to 5.1.12 in /core (#166)

763414b Bump node-fetch from 2.6.7 to 3.2.2 in /core (#167)

52f8fe2 upgrade: start building Secman v3 with new technologies (#162)

fed1281 add npm source file

e8d3a64 add install task, update codeowners, and contributing guide

33bbc72 workflows(release): build and finish from secman release workflow

92fe645 actions(codeql): setup codeql scanning code workflow

02757a9 actions(go): build secman go workflow to check go status every commit

e2fe501 docs(README): update secman readme to the next level

066f4c9 configure goreleaser for secman to automate releaseing

af25c4d setup golangci for secman

dd6f0fc fix errors in auth command and options, update .gitingore

a3694d8 init secman task file, fix errors, update go modules

d5fea08 build secman main file

cc218bf finish from secman root command and add all app commands

c9c0fd8 build secman customize help

aa97054 start building secman help command handlers

e0c04a4 build secman list command in app package

d670c9c create secman read command in app package

44857fb add secman insert command in app package

6d772d3 create secman delete command in app package

cfef27b build secman edit command in app package

00a78dd build secman auth command in app package

9fe4010 add secman auth refresh command functions in pkg/auth/refresh

53dd4cf build secman auth logout command functions in pkg/auth/logout

3393de9 add secman auth login command Login function

f99eb82 finish from secman list command pipe view and list functions

1b35c9e create secman passwords handlers with bubble list

e67da21 start building secman list command pipe in pkg/lister package

61b61a8 finish from secman edit command pipe in pkg/pipe/edit pkg

cda1b88 create secman password editor in pkg/pipe/edit package

f7dd30a build secman insert command pipe in pkg/pipe/insert pkg

c4668a3 create secman delete pipe in pkg/pipe/delete package

67e4df3 add secman password type function in internal/shared

63b688d building pkg/pipe package with secman read pipe

cfcaf56 start building secman commands in app pkg, add new modules

5956780 add abdfnx/gosh module, create pkg/info package

ffd7e64 create secman initializer for secman init command

a92dd30 build secman generator in pkg/generator, update go modules

5565902 create secman cli options in pkg/options package

c0175f0 build the shared style of secman in internal/shared

7b8a9d5 start building internal/shared package, add new go modules

1a3c299 build the version checker of secman in internal/checker

35bde25 start building cmd and internal packages, update modules

a59126a finish from secman iostreams package, add new modules

5415786 finish from secman iostreams colors functions

9de9380 create secman iostrams tty_size functions, update modules

c9fd569 start building ios pkg to build secman cli iostreams

220a019 add new go modules and packages, create constants pkg

3e89897 upgrade secman vscode devcontainer

2a2fefb update go modules, create api package

f8a4276 add new go modules, create tools pkg

ad0b8e9 create secman code scripts

b04685c update vscode configs

0f4e1f8 remove workflows and actions

9e2ac61 update dependabot config file

54a3a11 upgrade secman v2 to secman core (sc) to use it with secman

dc6410c initialize the modfile of secman, update package.json

5ff0247 start building secman v3

1c2fa1b fix: upgrade axios from 0.25.0 to 0.26.0 (#161)

a6056c3 fix: upgrade @oclif/core from 1.3.3 to 1.3.4 (#160)

873a2b8 fix: upgrade @oclif/core from 1.3.2 to 1.3.3 (#159)

714ccc7 Merge branch 'scmn-dev:main' into main

1c330b5 fix: upgrade @oclif/core from 1.3.1 to 1.3.2 (#158)

b447669 fix: upgrade @oclif/core from 1.3.0 to 1.3.1 (#157)

c2401ea fix: upgrade signal-exit from 3.0.6 to 3.0.7 (#156)

37468d0 fix: upgrade @oclif/plugin-help from 5.1.10 to 5.1.11 (#154)

b95c069 fix: upgrade @oclif/core from 1.2.1 to 1.3.0 (#153)

36be00a fix: upgrade @oclif/config from 1.18.2 to 1.18.3 (#152)

6537bd7 Merge branch 'scmn-dev:main' into main

90c7ef9 fix: upgrade @oclif/core from 1.2.0 to 1.2.1 (#151)

8ff65c1 fix: upgrade @oclif/plugin-not-found from 2.2.4 to 2.3.1 (#150)

2a36612 Bump follow-redirects from 1.14.7 to 1.14.8 (#149)

49eb0d5 fix: upgrade @oclif/core from 1.1.2 to 1.2.0 (#148)

94d98e3 fix: upgrade typescript from 4.5.4 to 4.5.5 (#147)

bc425c9 fix: upgrade axios from 0.24.0 to 0.25.0 (#146)

07732d0 Merge branch 'scmn-dev:main' into main

02ca090 Bump github.com/tidwall/gjson from 1.13.0 to 1.14.0 in /tools/editor (#145)

4481b3c fix: upgrade @oclif/core from 1.1.1 to 1.1.2 (#144)

02e6b29 fix: upgrade @oclif/core from 1.1.0 to 1.1.1 (#143)

bbdc257 bump node-fetch version to 2.6.7 to fix security vulnerabilities

838f320 fix: upgrade @oclif/core from 1.0.11 to 1.1.0 (#142)

b11f637 fix: upgrade table from 6.7.5 to 6.8.0 (#141)

adc45e2 bump node-fetch to 3.1.1 to fix security vulnerabilities

e2dcf62 fix: upgrade axios from 0.23.0 to 0.24.0 (#138)

1fce262 fix: upgrade octokit from 1.7.0 to 1.7.1 (#139)

9064d3b fix: upgrade strip-ansi from 6.0.0 to 6.0.1 (#140)

5cb19a1 fix: upgrade string-width from 4.2.0 to 4.2.3 (#136)

dfca6f0 Merge branch 'scmn-dev:main' into main

de7b7a5 bump ansi-regex version to 5.0.1 to fix vulnerabilities

d08e633 create new workflow: add build-ci workflow to check secman every commit

430b89f fix: package.json & yarn.lock to reduce vulnerabilities (#135)

7778409 fix secman auth error message: update flag to --createAccount #133

40c8864 Merge branch 'scmn-dev:main' into main

a3586af bump shelljs version to 0.8.5 to fix security vulnerabilities

cbc271b bump follow-redirects version to 1.14.7 to fix security vulnerabilities

bf1a450 Bump github.com/tidwall/gjson from 1.12.1 to 1.13.0 in /tools/editor (#130)

7952b3f update .gitingore, big upgrade in scripts/brew dir, update packages

b5425ea fix secman settings editor: update gettings value from settings file

1a4958d add sudo permissions to git in pack ci workflow of secman

53b1053 convert from npm to yarn in and update packages, add sudo

8a72981 Merge branch 'scmn-dev:main' into main

414eb6e Merge branch 'scmn-dev:main' into main

ce2d5ca Merge branch 'scmn-dev:main' into main

f30891c Merge branch 'scmn-dev:main' into main

dc556...

Contributors

snyk-bot, go-task, and 4 other contributors

Assets

29

1

abdfnx reacted with rocket emoji

All reactions

1 reaction

1 person reacted

0

Join discussion

10 January Release v6.1.3

10 Jan 19:53

abdfnx

v6.1.3

2259c47

Compare

Choose a tag to compare

View all tags

10 January Release v6.1.3

Added

Add settings_editor_theme prop in ~/.secman/settings.json

Changed

Update pathes

Update Secman V1 url to https://github.com/scmn-dev/secman/tree/v1

Fixed

Fix secman settings command

Full Changelog: v6.1.2...v6.1.3

Assets

10

1

abdfnx reacted with rocket emoji

All reactions

1 reaction

1 person reacted

0

Join discussion

1 January Release v6.1.2

01 Jan 08:05

abdfnx

v6.1.2

96b5f7c

Compare

Choose a tag to compare

View all tags

1 January Release v6.1.2

Added

add just-hash flag to crypto command

Changed

upgrade update command

remove base64 hash from crypto command

Fixed

fix secman core version in info command

Full Changelog: v6.1.1...v6.1.2

Assets

10

1

abdfnx reacted with hooray emoji

1

abdfnx reacted with rocket emoji

All reactions

1 reaction

1 reaction

1 person reacted

0

Join discussion

27 December Release v6.1.1

27 Dec 20:13

abdfnx

v6.1.1

566f4d2

Compare

Choose a tag to compare

View all tags

27 December Release v6.1.1

Changed

remove bcrypt command

Fixed

fix configs in windows

Full Changelog: v6.1.0...v6.1.1

Assets

10

All reactions

0

Join discussion

26 December Release v6.1.0

26 Dec 18:44

abdfnx

v6.1.0

17202e4

Compare

Choose a tag to compare

View all tags

26 December Release v6.1.0

Changed

fix all secman help errors and bugs

Full Changelog: v6.0.9...v6.1.0

Assets

10

All reactions

0

Join discussion

26 December Release v6.0.9

26 Dec 10:11

abdfnx

v6.0.9

794d77a

Compare

Choose a tag to compare

View all tags

26 December Release v6.0.9

Changed

a release to fix a bug in the secman

Full Changelog: v6.0.8...v6.0.9

Assets

10

All reactions

0

Join discussion

Previous 1 2 3 4 5 6 Next

Previous Next

Footer

© 2024 GitHub, Inc.

Footer navigation

Terms

Privacy

Security

Status

Docs

Contact

Manage cookies

Do not share my personal information

You can’t perform that action at this time.

404 Not Found

404 Not Found

Not Found

The requested URL was not found on this server.

secman module - github.com/scmn-dev/secman - Go Packages

secman module - github.com/scmn-dev/secman - Go Packages

Skip to Main Content

Why Go

Case Studies

Common problems companies solve with Go

Use Cases

Stories about how and why companies use Go

Security Policy

How Go can help keep you secure by default

Learn

Docs

Effective Go

Tips for writing clear, performant, and idiomatic Go code

Go User Manual

A complete introduction to building software with Go

Standard library

Reference documentation for Go's standard library

Release Notes

Learn what's new in each Go release

Packages

Community

Recorded Talks

Videos from prior events

Meetups

Meet other local Go developers

Conferences

Learn and network with Go developers from around the world

Go blog

The Go project's official blog.

Go project

Get help and stay informed from Go

Get connected

Why Go

Why Go

Case Studies

Use Cases

Security Policy

Learn

Docs

Docs

Effective Go

Go User Manual

Standard library

Release Notes

Packages

Community

Community

Recorded Talks

Meetups

Conferences

Go blog

Go project

Get connected

  The highest tagged major version is

v6.

Discover Packages

github.com/scmn-dev/secman

secman

module

Version:

v6.1.3+incompatible

Opens a new window with list of versions in this module.

Latest

Latest

This package is not in the latest version of its module.

Go to latest

Published: Jan 10, 2022

License: MIT

Opens a new window with license information.

Main

Versions

Licenses

Details

Valid go.mod file

The Go module system was introduced in Go 1.11 and is the official dependency management

solution for Go.

Redistributable license

Redistributable licenses place minimal restrictions on how software can be used,

modified, and redistributed.

Tagged version

Modules with tagged versions give importers more predictable builds.

Stable version

When a project reaches major version v1 it is considered stable.

Learn more about best practices

Repository

github.com/scmn-dev/secman

Links

Open Source Insights

Jump to ...

README

Secman Products

Features

Examples

show password

edit multiple fields

Installation ⬇

Using npm

Using Homebrew (macOS and Linux)

Using script (Ubuntu/Debian)

Via Docker

Build from source

Getting started with secman

License

Some Resources

Contributing

Code Status

Stargazers over time

Directories

README

README

Secman CLI

Website

  •  

Docs

  •  

Blog

  •  

Twitter

  •  

Secman V1

Secman Products

Secman Desktop

Secman Extension

secman is a password manager can store, retrieves, generates, and synchronizes passwords, and is written in TypeScript! The most important difference is secman is not GPG cored. Instead, it uses a master password to securely store your passwords. and you can easily manage your passwords from everywhere.

Features

Not GPG cored.

It uses a master password to securely store your passwords.

It syncs your passwords.

Easy to use.

It is written in TypeScript.

You can easily manage your passwords from everywhere, desktop, web, terminal, and more.

Examples

Initialize ~/.secman

secman init

Authenticate

secman auth

# with one command

secman auth --username EMAIL --password MASTER_PASSWORD

# read the master password from stdin

cat password.txt | secman auth -u EMAIL --password-stdin

Create a new password

secman new -l

✔ Title › Twitter

✔ URL › https://twitter.com

✔ Username › _secman

✔ Password › *********

✔ Extra › no extra

Password created

List passwords

secman .

.

├──Logins

│ └──Twitter

├──Credit Cards

├──Emails

├──Notes

└──Servers

Read It

secman read -l Twitter

╭─────────┬─────────────────────┬──────────────────┬───────────┬──────────╮

│ Title │ URL │ Username │ Password │ Extra │

├─────────┼─────────────────────┼──────────────────┼───────────┼──────────┤

│ Twitter │ https://twitter.com │ hello@secman.dev │ ••••••••• │ no extra │

╰─────────┴─────────────────────┴──────────────────┴───────────┴──────────╯

show password

secman read -lp Twitter

╭─────────┬─────────────────────┬──────────────────┬───────────┬──────────╮

│ Title │ URL │ Username │ Password │ Extra │

├─────────┼─────────────────────┼──────────────────┼───────────┼──────────┤

│ Twitter │ https://twitter.com │ hello@secman.dev │ hitwitter │ no extra │

╰─────────┴─────────────────────┴──────────────────┴───────────┴──────────╯

Edit password field

secman edit -l Twitter

? Pick a field › - Use arrow-keys. Return to submit.

❯ Title

URL

Username

Password

Extra

edit multiple fields

secman edit -lm Twitter

? Pick a field ›

? Pick a field ›

Instructions:

↑/↓: Highlight option

←/→/[space]: Toggle selection

a: Toggle all

enter/return: Complete answer

◯ Title

◉ URL

◯ Username

◯ Password

◉ Extra

Installation ⬇

Using npm

npm i -g secman

(Windows): if you get an error you might need to change the execution policy (i.e. enable Powershell) via

Set-ExecutionPolicy RemoteSigned -scope CurrentUser

Using Homebrew (macOS and Linux)

brew tap scmn-dev/secman

brew install secman

Using script (Ubuntu/Debian)

curl -sL https://cli.secman.dev | bash

Via Docker

secman cli image

docker run -it smcr/secman-cli

see secman cli docs

secman container image

docker run -it smcr/secman

see secman container docs

Build from source

see building from source doc.

Getting started with secman

Initializing

secman init

Authenticate

secman auth

Insert a New Password

secman insert --[PASSWORD_TYPE]

List Passwords

secman .

Read The Password

secman read --[PASSWORD_TYPE]

Edit Password

secman edit --[PASSWORD_TYPE]

Generate

secman generate

Edit Settings

secman settings

see commands

License

secman is licensed under the terms of MIT License

Some Resources

secman website

docs

changelog

privacy policy of secman

Contributing

Thanks for your interest in contributing to secman . You can start a development environment with gitpod:

Code Status

Stargazers over time

Expand ▾

Collapse ▴

Directories

Show internal

Expand all

Path

Synopsis

api

Click to show internal directories.

Click to hide internal directories.

Why Go

Use Cases

Case Studies

Get Started

Playground

Tour

Stack Overflow

Help

Packages

Standard Library

Sub-repositories

About Go Packages

About

Download

Blog

Issue Tracker

Release Notes

Brand Guidelines

Code of Conduct

Connect

Twitter

GitHub

Slack

r/golang

Meetup

Golang Weekly

Copyright

Terms of Service

Privacy Policy

Report an Issue

Theme Toggle

Shortcuts Modal

Jump to

Close

Keyboard shortcuts

? : This menu

/ : Search site

f or F : Jump to

y or Y

: Canonical URL

Close

go.dev uses cookies from Google to deliver and enhance the quality of its services and to

analyze traffic. Learn more.

Okay

GitHub - scmn-dev/install: Secman CLI installer.

GitHub - scmn-dev/install: Secman CLI installer.

Skip to content

Toggle navigation

Sign in

Product

Actions

Automate any workflow

Packages

Host and manage packages

Security

Find and fix vulnerabilities

Codespaces

Instant dev environments

Copilot

Write better code with AI

Code review

Manage code changes

Issues

Plan and track work

Discussions

Collaborate outside of code

Explore

All features

Documentation

GitHub Skills

Blog

Solutions

For

Enterprise

Teams

Startups

Education

By Solution

CI/CD & Automation

DevOps

DevSecOps

Resources

Learning Pathways

White papers, Ebooks, Webinars

Customer Stories

Partners

Open Source

GitHub Sponsors

Fund open source developers

The ReadME Project

GitHub community articles

Repositories

Topics

Trending

Collections

Pricing

Search or jump to...

Search code, repositories, users, issues, pull requests...

Search

Clear

Search syntax tips

Provide feedback

We read every piece of feedback, and take your input very seriously.

Include my email address so I can be contacted

Cancel

Submit feedback

Saved searches

Use saved searches to filter your results more quickly

Name

Query

To see all available qualifiers, see our documentation.

Cancel

Create saved search

Sign in

Sign up

You signed in with another tab or window. Reload to refresh your session.

You signed out in another tab or window. Reload to refresh your session.

You switched accounts on another tab or window. Reload to refresh your session.

Dismiss alert

This repository has been archived by the owner on May 2, 2022. It is now read-only.

scmn-dev

/

install

Public archive

Notifications

Fork

2

Star

1

Secman CLI installer.

secman.dev/docs/cli

License

Apache-2.0 license

1

star

2

forks

Branches

Tags

Activity

Star

Notifications

Code

Issues

0

Pull requests

0

Actions

Projects

0

Security

Insights

Additional navigation options

Code

Issues

Pull requests

Actions

Projects

Security

Insights

scmn-dev/install

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

 mainBranchesTagsGo to fileCodeFolders and filesNameNameLast commit messageLast commit dateLatest commit History137 Commitsunixunix  windowswindows  .gitattributes.gitattributes  LICENSELICENSE  README.mdREADME.md  View all filesRepository files navigationREADMECode of conductApache-2.0 licenseSecman installer

install Secman (on macOS or Linux)

curl -sL https://u.secman.dev | bash

install Secman (on Windows)

iwr -useb https://w.secman.dev | iex

About

Secman CLI installer.

secman.dev/docs/cli

Topics

windows

macos

linux

shell

cli

powershell

installer

secman

Resources

Readme

License

Apache-2.0 license

Code of conduct

Code of conduct

Activity

Custom properties

Stars

1

star

Watchers

2

watching

Forks

2

forks

Report repository

Releases

No releases published

Packages

0

No packages published

Contributors

3

 

 

 

Languages

Shell

59.0%

PowerShell

41.0%

Footer

© 2024 GitHub, Inc.

Footer navigation

Terms

Privacy

Security

Status

Docs

Contact

Manage cookies

Do not share my personal information

You can’t perform that action at this time.

SeqMan测序结果比对_哔哩哔哩_bilibili

SeqMan测序结果比对_哔哩哔哩_bilibili 首页番剧直播游戏中心会员购漫画赛事投稿SeqMan测序结果比对

1.2万

1

2020-05-12 21:57:03

未经作者授权,禁止转载1187220958知识校园学习知识分享官学习自制学习心得

港都居士司马仲达

发消息

Endnote分享,生物硕士

关注 6006

拒绝低效率学习,高效提高GPA!

接下来播放

自动连播SeqMan多序列测序结果比对港都居士司马仲达

2485

1

我不允许你不会做克隆形成图(下)(新手向)港都居士司马仲达

1.5万

1

笑麻了呀!某UP主用C++仿了一个王者荣耀去tx面试,结果被赶了出来...睡饱了再学习

36.5万

152

SnapGene手把手安装教程港都居士司马仲达

2.8万

20

我不允许你不会做迁移侵袭图(新手向)港都居士司马仲达

1.4万

2

我不允许你不会做WB图(新手向)港都居士司马仲达

6.5万

163

当你接手了一个屎山代码后……吃不饱的小码农

14.3万

141

l一起学R语言实战ggplot2港都居士司马仲达

1870

0

【ppt】设置页码格式,统一PPT字体,设置默认PPT字体港都居士司马仲达

2942

0

sci-hub与endnote的强强结合,文献随心下载,全网首发港都居士司马仲达

10.2万

93

你敢信?世界上竟然有水比沙子还多的沙漠?!【当当地理】当当地理老师

112.5万

145

哭死!要是在中考前刷到就好了初中资料馆

4.1万

23

男生小弟弟庞大的烦恼falise博学的健身学长

4.6万

18

江苏省竞赛题,a²+b²=4068,求a+b,班级模拟全军覆没数学教师周

2.7万

8

毕业论文快速排版核心技巧港都居士司马仲达

169

0

endnote20和scihub相互关联,pdf文献自动导入endnote港都居士司马仲达

1.6万

5

首发,神了3分钟学会endnote查看2021.6.30发布的2020影响因子(含近五年)港都居士司马仲达

2072

2

百度学术也能轻松下载英文文献港都居士司马仲达

1580

0

SnapGene批量导入通用引物,测序不再纠结港都居士司马仲达

2178

10

听懂恍然大悟有趣的灵魂陈老师

4.3万

16

展开

小窗

客服

顶部

赛事库 课堂 2021

SeqMan分析测序后的序列 - 知乎

SeqMan分析测序后的序列 - 知乎首发于生物软件使用方法汇总切换模式写文章登录/注册SeqMan分析测序后的序列Becky​北京大学 化学生物学博士后构建质粒载体后,把提取的质粒/菌株送公司测序,返回的测序结果如何分析呢?特别是双向测序的那种,如果简单序列比对没办法拼接正向和反向的结果,答案是seqman,该软件打开的界面如下,把测序文件和你的目的序列,点击assemble即可~对于两端测序的,也是直接将测序文件拖到这个界面就可以~这个软件我在网上找了好久都没找到,是同实验室分享给我的,如果有需要可私信最近实验缠身,实在没什么可以分享的东西了,分享一下吃到的最贵的雪糕吧:越是忙碌越想放假,这是什么心理呢,上周六和朋友逛街,在veromode家看到了好多漂亮裙子,该个试了以后每条都想要,但想到还没有适合的鞋子,于是转去一楼看鞋,转眼就到了商场下班的时间了,果然逛街适合逛一天~应该早点出门的~我为什么在介绍seqman软件的时候开始唠叨这些琐碎的事情呢,因为文章满300字才可以声明原创~希望我这个举动不会掉粉~发布于 2019-04-09 19:15测序​赞同 21​​97 条评论​分享​喜欢​收藏​申请转载​文章被以下专栏收录生物软件使用方法汇总介绍生物领域相关软件的使

利用SeqMan做少量数据序列拼接的方法介绍 | Public Library of Bioinformatics

qMan做少量数据序列拼接的方法介绍 | Public Library of Bioinformatics Public Library of Bioinformatics 首页分类文章BioinformaticsMachine LearningTranscriptomicsGenomicsSingle CellEpigeneticsStatisticsScriptEvolutionGlossaryncRNAAdvancePopular Science在线文档ggplot2画图教程鸟哥的Linux私房菜Perl教程机器学习关于我们 欢迎光临! 登录 站内百度谷歌必应搜狗360 热门搜索相关samTE数据图首页Genomics利用SeqMan做少量数据序列拼接的方法介绍利用SeqMan做少量数据序列拼接的方法介绍评论19,192下面是DNAstar软件中的SeqMan软件的使用方法介绍,利用SeqMan做少量数据序列拼接Step1:打开Seqman软件Step2:加入你要拼接的序列点击Add sequences查找并选中要拼接的序列(可按住control键进行多选)点击Add按钮填加选择的序列填加完后点击done注:最好用测序的图谱尽量不要直接用测序得到的序列 Step3:去除末端序列主要是去除序列末端测序质量差或是载体序列有两种方法可以用来去除这类末端序列其一:利用Seqman自带的去除工具自动去除(利用Trim ends按钮进行)其二:手工去除个人感觉手工去除方法最有效,因此下边我们以后工去除为例进行演示手工去除侧翼序列双击要去除侧翼序列的目标序列将鼠标放到测序图谱左边的一个黑色的竖线上,此时鼠标会变成一个有两个箭头的水平线按住左键拖动黑竖线,那么你就会发现侧翼序列的颜色变浅,这部分变浅的序列则就被去除,不再参加后面的拼接此步请将测序不准确或认为是载体的序列用这种方法去除。测序准确的峰形图峰形规则,一般在序列的中部,如下图所示测序不准确的峰形图峰形较乱,很难判断是哪个碱基,一般位于序列两端,如下图所示Step4:进行序列拼接点击Assemble按钮在新出现窗口处点击拼接好的contig1在出现的Alignment of contig1 窗口中点击左三角显示序列的测序图谱点击菜单contig->strategy view可以观察序列拼接的宏观图 Step5:查找拼接错误find conflict点击菜单Edit点击Find Previous或Find Next查找接接中出现的错误还可以通过Seqman左下角的快捷按钮查找错误的拼接查找错误的拼接错误的拼接的类型类型1:两条序列的测序结果不一致并明显一条测序质量好而另一条质量差处理:直接将该处修改为正确的碱基类型2:两条序列的测序结果不一致并两条测序质量都比较差处理:重新测序或用新的合适引物重新测定类型3:两条序列的测序结果不一致并明显两条测序质量都好处理:测序过程出现问题,重新测定 Step6:导出拼接的序列可选择合适的格式,导出拼接好的序列通过以上几步我们就能很快将几个测序片段进行拼接,大家可以拿着自己的序列试试!当然如果两个测序片段的拼接片段太短可能利用默认的参数不能完成拼接,大家可以试着修改一下拼接参数试试!如降低Match size及Minimum Match Percentage的值!修改参数命令 GenomicscontigSeqMan序列序列组装如何批量下载指定的序列?使用 Gblocks 提取保守序列MEGA软件——系统发育树构建方法(图文讲解)快速计算fasta序列长度的方法 上一篇Velvet使用方法及参数介绍下一篇 DNA各种序列格式介绍 发表评论 匿名网友 昵称 邮箱 网址 Address 取消 Δ 赞助链接 相关文章 如何批量下载指定的序列? 06/06 12,402 使用 Gblocks 提取保守序列 02/07 16,798 MEGA软件——系统发育树构建方法(图文讲解) 12/02 46,457 快速计算fasta序列长度的方法 10/03 14,764 DNAstar软件的使用(三)Seqman 拼接序列 08/28 12,237 利用bioperl读取复杂序列 07/27 3,439随机文章利用MISA鉴定简单重复序列(SSR)Maximizing Utility of Available RAMs in K-mer WorldAn Intuitive Explanation for Running Velvet with Varying K-mer SizesJBrowse使用说明:如何配置track分面搜索选择器基因组注释分析主要包括哪些内容 ?对应不同版本基因名称Copyright © 2011-2024 Public Library of Bioinformatics (PLoB). All Rights Reserved. Sitemap

SeqAn An efficient, generic C++ library for sequence analysis | BMC Bioinformatics | Full Text

SeqAn An efficient, generic C++ library for sequence analysis | BMC Bioinformatics | Full Text

Skip to main content

Advertisement

Search

Explore journals

Get published

About BMC

My account

Search all BMC articles

Search

BMC Bioinformatics

Home

About

Articles

Submission Guidelines

Collections

join the board

Submit manuscript

SeqAn An efficient, generic C++ library for sequence analysis

Download PDF

Download PDF

Software

Open access

Published: 09 January 2008

SeqAn An efficient, generic C++ library for sequence analysis

Andreas Döring1, David Weese1, Tobias Rausch1,2 & …Knut Reinert Show authors

BMC Bioinformatics

volume 9, Article number: 11 (2008)

Cite this article

26k Accesses

205 Citations

3 Altmetric

Metrics details

AbstractBackgroundThe use of novel algorithmic techniques is pivotal to many important problems in life science. For example the sequencing of the human genome [1] would not have been possible without advanced assembly algorithms. However, owing to the high speed of technological progress and the urgent need for bioinformatics tools, there is a widening gap between state-of-the-art algorithmic techniques and the actual algorithmic components of tools that are in widespread use.ResultsTo remedy this trend we propose the use of SeqAn, a library of efficient data types and algorithms for sequence analysis in computational biology. SeqAn comprises implementations of existing, practical state-of-the-art algorithmic components to provide a sound basis for algorithm testing and development. In this paper we describe the design and content of SeqAn and demonstrate its use by giving two examples. In the first example we show an application of SeqAn as an experimental platform by comparing different exact string matching algorithms. The second example is a simple version of the well-known MUMmer tool rewritten in SeqAn. Results indicate that our implementation is very efficient and versatile to use.ConclusionWe anticipate that SeqAn greatly simplifies the rapid development of new bioinformatics tools by providing a collection of readily usable, well-designed algorithmic components which are fundamental for the field of sequence analysis. This leverages not only the implementation of new algorithms, but also enables a sound analysis and comparison of existing algorithms.

BackgroundBiological sequence analysis is the heart of computational biology. Many successful algorithms (e.g., Myers' bit-vector search algorithm [2], BLAST [3]) and data structures (e.g., suffix arrays [4], q-gram based string indices, sequence profiles) have been developed over the last twenty years. The assemblies of large eucaryotic genomes like Drosophila melanogaster[5], human [1], and mouse [6] are prime examples where algorithm research was successfully applied to a biological problem. However, with entire genomes at hand, large scale analysis algorithms that require considerable computing resources are becoming increasingly important (e.g., Lagan [7], MUMmer [8], MGA [9], Mauve [10]). Although these tools use slightly different algorithms, nearly all of them require some basic algorithmic components, like suffix arrays, string searches, alignments, or the chaining of fragments. This is illustrated in Fig. 1 for the case of genome comparison tools. However, it is non-trivial to obtain efficient implementations of these components. Therefore, suboptimal data types and ad-hoc algorithms are frequently employed in practice, or one has to resort to stringing standalone tools together. Both approaches may be suitable at times, but it would clearly be much more desirable to use an integrated library of state-of-the-art components that can be combined in various ways, either to develop new applications or to compare alternative implementations. In this article we propose SeqAn, a novel C++ library of efficient data types and algorithms for sequence analysis in computational biology.Figure 1Genome comparison tools and their algorithmic components.Full size imageIn other fields, software libraries have greatly advanced the transfer of algorithmic knowledge to the tool programming process. Two of the best known examples are the LEDA library [11] for algorithms on graphs and efficient data types and the CGAL library [12, 13] for computational geometry. In bioinformatics, a comparable library is still missing although there is a need for integrated implementations of algorithms for aligning sequences, computing substring indices in primary and secondary memory, or filter algorithms. In addition, a library that adheres to the principles of algorithm engineering is essential as a means to test and compare existing tools as well as to evaluate the results from algorithmic research. The lack of such a library becomes evident when reviewing the related work of the past years.A few C++ libraries with sequence analysis features have already been developed, including Bio++ [14], Libcov [15], the Bioinformatics Template Library (BTL) [16], the NCBI C++ Toolkit [17], or the Sequence Class Library (SCL) [18]. Bio++ is the most comprehensive library providing re-usable components for phylogenetics, molecular evolution, and population genetics. The sequence analysis part is, however, limited to basic import/export capabilities and string manipulations. In contrast to SeqAn, which is based upon the generic programming paradigm, Bio++ is a purely object-oriented library, favoring ease of development over performance and scalability. Libcov focusses on phylogenetics and clustering algorithms. It offers only basic data structures to handle sets of sequences. Alignment algorithms, database indices, or scoring matrices are not provided. The BTL emphasizes basic mathematical algorithms and data structures. It currently comprises graph classes and linear algebra algorithms but only a single sequence alignment algorithm, Needleman-Wunsch [19] with cubic running time. The NCBI C++ Toolkit also offers, beside other things, some sequence analysis functionality, e.g. alignment algorithms. The SCL, providing some basic sequence analysis components, is to our knowledge not activly developed anymore.Besides these C++ libraries, we are aware of alternative approaches like BioPerl [20] or BioJava [21]. The main purpose of BioPerl is to ease the development of sequence analysis pipelines by providing an interface to already existing tools. BioJava on the other hand is suited for developing new sequence analysis tools by providing many relevant data structures and algorithms and as such is from the overall goals perhaps closest to SeqAn. Some algorithms are shared by both libraries (like Needleman-Wunsch and Smith Waterman). A closer inspection, however, reveals that BioJava does only offer a small part of SeqAn's functionality (no indices, no algorithms for de novo motif search, no algorithms for multiple alignment, etc.). Hence both libraries are in this sense complementary. In addition, we show in the result section that our implementations are for standard alignment problems by a factor of 6 to 350 times faster and by a factor of 600 to 1500 times more space efficient.The exposition is structured as follows: To emphasize the usefulness of SeqAn, this article centers around the contents of the library, described in Section and the practical application of SeqAn, exemplified in Section. In the following section we start by giving a brief outline of the design principles SeqAn is based on.ImplementationLibrary DesignFor developing the basic design, SeqAn has gone through an extensive conceptual phase in which we evaluated many designs and prototypic implementations. SeqAn has now a generic programming design that guarantees high performance, generality, extensibility, simplicity, and easy integration with other libraries. This design is based on four design principles which we will describe now.Generic ProgrammingSeqAn adopts the generic programming paradigm that proved to be a key technique for achieving high performance algorithms in the C++ standard library [22]. Generic programming refers to a special style of programming where concrete types are substituted by exchangeable template types. Hence, classes and algorithms are written only once, but can be applied to different data types.Global Function InterfacesSeqAn uses global functions instead of member functions to access objects (we act here on an advice of [23], see Section 6.10.2.). This strategy improves the flexibility and the scalability of our library, since global functions, unlike member functions, can be added to a program at any time and without changing the existing code. Moreover, global function interfaces enable us to incorporate the C++ built-in types and handle them like user defined types. It is even possible to adapt arbitrary interfaces, i.e. of classes that are implemented in external libraries, to a common interface by using small global functions called 'shims' (Chapter 20 in [24]). Algorithms that access objects only via global functions can therefore be applied to a great variety of types, including built-in types and external classes.TraitsGeneric algorithms usually have to know certain types that correspond to their arguments: An algorithm on strings may need to know which type of characters are stored in the string, or what kind of iterator can be used to browse it. SeqAn uses type traits [25] for that purpose. In C++, trait classes are implemented as class templates that map types or constants given by template arguments to other types but also other C++ enties like constants, functions, or objects at compile time. Most of the advantages we already stated for global functions also apply to traits, i.e. new traits and new specializations of already existing traits can be added without changing other parts of the library.Template Argument SubclassingSeqAn uses a special kind of hierarchical structure that we call 'template argument subclassing', which means that different specializations of a given class template are specified by template arguments. For example, String is a subclass of String in the sense that all functions and traits which are applicable to String can also be applied to String, while it is possible to overload some functions especially for String. The rules of C++ overload resolution guarantee that the compiler always applies the most specific variant out of all existing implementations when an algorithm or trait has been called. This approach resembles class derivation in standard object-oriented programming, but it is often faster, because it does not require a type conversion for a subclass calling a function that is already defined for the base class, and since the actual type of the object used in a function is therefore already known at compile time, it is not necessary to detect it at run time using virtual functions. Non-virtual functions have the advantage that C++ compilers can use function inlining to save their overhead completely. Template argument subclassing enables us both to specialize functions and to delegate tasks soundly to base classes while still maintaining static binding.Design GoalsThese design principles support our design goals in the following way:

Performance: The library produces code that is competitive with manually optimized programs. Template argument subclassing makes it possible to plug in optimized specializations for algorithms whenever needed. Our generic programming design also speeds up the code in avoiding unnecessary virtual function calls.

Generality: All parts of the library are as flexible as possible. Algorithms can be applied to various data types and new types can be added if necessary. For example, generic alignment algorithms in SeqAn work on strings for arbitrary alphabets. However, specialized implementations that make use of certain attributes of the alphabet can still be developed using template argument subclassing.

Integration: SeqAn components are designed to fulfill the requirements specified in the C++ standard. In addition, SeqAn easily interacts with other libraries because the global interface can be expanded. Hence, algorithms and classes of other libraries are at hand.

Extensibility: The open-closed principle ('Be open for extension but closed for modifications!') is satisfied in so far as it is possible to extend the library by simply adding new code. SeqAn has this feature because it relies on stand-alone global functions and traits that can be added at any time without changing the existing code.

Simplicity: While a pure object-oriented library may be more familiar to some users, SeqAn is still simple enough to be used even by developers with average skills in C++.

Library ContentsSeqAn is a software library that is supposed to cover all areas of sequence analysis. Fig. 2 gives an overview of the contents of the library in the current state.Figure 2SeqAn Contents Overview.Full size imageSequencesThe storage and manipulation of sequences is essential for all algorithms in the field of sequence analysis. In SeqAn, sequences are represented as strings of characters over various alphabets. Multiple string classes for different settings are available: Large sequences can be stored in secondary memory using external strings, bit-packed strings can be used to take advantage of small alphabets, or strings allocated on the stack can be used to guarantee fast access. String modifiers can be used to implement distinct views on a given sequence without copying it. A string segment, for instance, is a string modifier used to get access to an infix, suffix, or prefix of a given sequence.AlignmentsAlignments require the insertion of gaps into sequences. SeqAn does not actually insert these gaps directly into the sequence but treats them separately. The benefit is twofold: A single sequence can be used in multiple alignments simultaneously and the actual alphabet of the string must not include a special gap character. SeqAn offers both pairwise and multiple sequence alignment algorithms. Algorithms can be configured for different scoring schemes and different treatments of sequence ends (e.g, ends free-space alignments). In the pairwise case, local and global alignment algorithm are available. Besides the classical Needleman-Wunsch algorithm [19], more sophisticated algorithms are available, including an affine gap cost alignment [26] and Myer's bit vector algorithm [2]. Moreover, SeqAn offers efficient algorithms to chain alignment fragments [27, 28]. We are also currently integrating code for motif finding in multiple sequences.IndicesThe enhanced suffix array (ESA)[29] is probably the most fundamental indexing data structure in bioinformatics with various applications, e.g., finding maximal repeats, super maximal repeats, or maximal unique matches in sequences. An enhanced suffix array is a normal suffix array extended with an additional lcp table that stores the length of the longest common prefix of adjacent suffixes in the suffix array. SeqAn offers an ESA that can be build up in primary or in secondary memory, depending on the sequence size. The user has two choices to access the ESA, either as a regular suffix array or as a suffix tree. The later view on an ESA is realized using the concept of iterators that simulate a tree traversal. A more space and time efficient data structure for top-down traversals through only parts of the suffix tree is the lazy suffix tree [30] which is also implemented in SeqAn. Besides the sophisticated ESA, simpler indices are available, including basic hash tables like gapped- and ungapped q-gram indices (for their use see [31–33]).SearchingFlexible pattern matching algorithms are fundamental to sequence analysis. Exact and approximate string matching algorithms are provided. For the exact string matching task, SeqAn offers the algorithms Shift-And, Shift-Or, Horspool, Backward Oracle Matching, and Backward Nondeterministic Dawg Machine [34]. For searching multiple patterns, SeqAn currently supports the Multiple Shift-And, the Set Horspool, and the Aho-Corasick algorithm [34]. Myer's bit vector algorithm [2] can be used for approximate string matching. Note that SeqAn's index data structures can naturally be used to search for strings as well.GraphsGraphs are increasingly important to a number of bioinformatics problems. Prime examples are string matching algorithms (e.g., Aho-Corasick, Backward Oracle Matching [34]), phylogenetic algorithms (e.g., upgma, neighbor joining tree [35]), or alignment representations [36]. Hence, we decided to include our own graph type implementation, including directed graphs, undirected graphs, trees, automata, alignment graphs, tries, wordgraphs, and oracles. Graph algorithms currently comprise breath-first search, depth-first search, topological sort, strongly-connected components, minimum spanning trees (e.g., Prim's algorithm, Kruskal's algorithm), shortest path algorithms (e.g., Bellman-Ford, Dijkstra, Floyd-Warshall), transitive closure, and the Ford-Fulkerson maximum flow algorithm [37]. Trees are heavily used in clustering algorithms and as guide trees during a progressive multiple sequence alignment. Alignment graphs are used to implement a heuristic multiple sequence alignment algorithm, which is similar to T-Coffee [38] but makes use of segments and a sophisticated refinement algorithm [39] to enable large-scale sequence alignments.BiologicalsBesides the fundamental alphabets for biological purposes, like DNA or amino acids, SeqAn offers different scoring schemes for evaluating the distance of two characters, e.g., PAM, and BLOSUM. SeqAn also supports several file formats that are common in the field of bioinformatics, e.g., FASTA, EMBL, and genbank. Is is possible the access (e.g. to search) sequence data stored in such file formats without loading the whole data into memory. The integration of external tools (e.g., BLAST) and the parsing of metainformation is ongoing work.ResultsWe anticipate two different user groups for SeqAn. The first group is the bioinformatics practitioner with some programming knowledge who wants to quickly prototype efficient tools for analyzing genomic or protein sequences using SeqAn. The other prototypic user is the algorithmicist who is proficient in programming in SeqAn and wants to test and compare an algorithmic component for a specific well-defined algorithmic problem.The next examples will demonstrate how things could be done in SeqAn. We would like to point out the very good performance of SeqAn as well as the fact that the necessary code is small, easy to understand, generic, and greatly profits from using an integrated algorithmic library.Example: String MatchingWe start with a small example of how SeqAn could be used as an experimental platform to test various implementations to solve the same algorithmic problem. In Fig. 3 we show the results of a runtime comparison between three string matching algorithms implemented in SeqAn and the find method for strings from the standard template library. Different pattern lengths and alphabet sizes were used. It turned out that there is always string matching routines in SeqAn that is faster than standard library code. This demonstrates that the coding standard used in SeqAn is competitive to a widely used STL implementation. Note that none of the tested algorithms performs the best for all settings. A library like SeqAn makes it possible to switch between different algorithms easily, so users can apply the best algorithm depending on the requirements. Moreover, SeqAn can act as an experimental platform to compare new string matching methods with the set of well known algorithms present in SeqAn.Figure 3Runtimes of String Matching Algorithms. We compared three exact string matching algorithms from SeqAn with the member function basic_string::find of the standard library, as it was implemented for Microsoft Visual C++. The left figure shows the runtimes (in ms) for searching a DNA sequence (human chromosome 21), the right figure for searching a proteine database. The search pattern was taken randomly from the sequence. The figures show the average time needed to find all occurrences of patterns of a given length.Full size imageExample: Global AlignmentsNow we switch to a more biologically motivated example: Computing a global alignment between two given DNA sequences with minimal edit distance. Alignment problems are very popular in the biological context. Even libraries with little sequence analysis content support one or more relevant functions that are mostly based on the dynamic programming approach by Needleman and Wunsch [19], which is certainly one of the most popular algorithms in bioinformatics. Gotoh's algorithm [26] extends it by affine gap cost models. Some libraries also support Hirschberg's algorithm [40], another well-known alignment method that takes only linear space.Table 1 lists time and space requirements for aligning the genomes of two human influenca viruses. The results show that SeqAn can compete with other libraries regardeless of scoring scheme and gap cost model. In the case of edit distance, SeqAn actually beats all competitors with a special algorithm that combines Hirschberg's algorithm with Myers' bitvector algorithm [2] to compute an optimal alignment one order of magnitude faster than all other programs we observed.Table 1 Runtimes and internal space requirements for computing sequence alignments. The table shows average time and space requirements for aligning the genomes of two human influenca viruses, each of length about 15.6 kbp. Runtimes printed in bold face show for each library the time of the fastest algorithm for computing an alignment using edit distance.Full size tableExample: MUMmerIn this example, we want to convince the reader that programming using SeqAn is not difficult and that SeqAn is simple enough to meet the needs of the first user group while it is efficient and generic enough to allow expert users to use SeqAn as an experimental platform for testing algorithmic components.We choose as an example the well-known MUMmer [8] tool and show in the listing (see Additional File 1) an implementation of a (simplified) version of the tool which reads a number of sequences and computes all maximal unique matches (MUMs) of length at least 20. For the sake of exposition we only show code pieces that are illustrative for SeqAn.A MUM of a set of sequences is a subsequence that occurs exactly once in each sequence and that is not part of any longer such subsequence. To find MUMs MUMmer builds a suffix tree [41] of a reference sequence and streams one or more query sequences against it. The downside of designating one sequence as the reference is that matches are only unique in the reference sequence but not necessarily in the query sequence. To guarantee the uniqueness of a match in all sequences it is necessary to construct a generalized suffix tree. A generalized suffx tree is a suffix tree of the concatenated sequences seperated by unique characters [42]. It is the primary index data structure in SeqAn and based on an enhanced suffix array [43]. In the first part of the example (Additional File 1: Listing 1) we build a string index for a set of strings consisting of characters from the Dna5 alphabet, which is an extension of the Dna alphabet including the 'N' character. SeqAn supports a number of different alphabets of biological relevance (e.g., Dna, Amino Acid, or compressed amino acid alphabets). All these alphabets enable us to store sequences efficiently because of the reduced number of characters compared to normal text. The index is first resized to the appropriate number of sequences. Subsequently, the sequences are imported using the Fasta read function and simultaneously, these sequences are added to the index, which is our enhanced suffix array.SeqAn provides iterators that make it possible to traverse the enhanced suffix array like a suffix tree in a bottom-up fashion. This is illustrated in Additional File 1: Listing 2. The iterator it visits each node u in the generalized suffix tree. To find a MUM u, it suffices to test whether u occurs exactly 2 times (line 16), at most once in each sequence (line 18), and cannot be extended to the left (line 19) (see Chapt. 3.4, [43]). If the length of the representative string of u is also at least 20 (line 17) we report the position and length of the MUM u (lines 26–31). Assuming a computational biologist is not all too interested in these algorithmic details but in performance and a simple interface, SeqAn provides specialized iterators to get all MUMs (Additional File 1: Listing 3), maximal or supermaximal repeats, or MultiMEMs [43]). Since performance is a crucial issue in any kind of sequence analysis task, we compared our code example with the latest MUMmer release [8] and Multimat of the MGA distribution [9]. To the best of our knowledge these are the only tools to find MUMs. None of the libraries introduced in chapter support generalized suffix trees or even algorithms on suffix trees, like those to find MUMs. Our testset consisted of various bacteria strains and vertebrate chromosomes.Table 2 readily reveals that MUMmer is about twice as fast as SeqAn on the 2 sequence datasets and that it uses only half of the space. This is, however, not suprising because MUMmer's index represents only one sequence whereas the generalized suffix tree implemented in SeqAn builds an index over all sequences. But in contrast to SeqAn and MGA, MUMmer is not able to find real MUMs between more than 2 sequences. Similar to SeqAn, MGA also constructs a generalized suffix tree of all sequences and its memory consumption is approximately equal to SeqAn's. However, SeqAn outperforms MGA on all datasets and surprisingly, MGA even takes more than 1 hour on the E. coli strains.Table 2 Runtimes and internal space requirements for finding MUMs. We compared MUMmer 3.19 [8], MGA [9], and SeqAn for different DNA sequences on a 3.2 GHz Intel Xeon computer with 3 GB of internal memory running Linux. Because MUMmer finds MUMs of not more than two sequences, its results on the Chlamydia and Escherichia coli strains are left empty. For the last dataset, we used SeqAn's external memory data strutures to limit the internal memory consumption.Full size tableIndex data structures of whole genomes easily reach 10–30 GB, so they must rely on external memory. SeqAn provides such data structures. They can be used by simply exchanging the standard string of SeqAn by an external memory string in order to construct the generalized suffix tree in external memory. We did this for the last row of Table 1 and simply replaced Dna5String by String> in the code example. This reduces the main memory space requirements of the algorithm at the expense of speed. However, this makes it possible to construct generalized suffix trees for sequences of nearly arbitrary length. As can be seen in Table 1, these external strings enable SeqAn to handle long sequences where MUMmer and MGA simply run out of memory.ConclusionWe presented a new software library with an efficient and generic design that addresses a wide range of problems in sequence analysis. SeqAn is under active development and we hope that it will become one of the standard platforms for algorithmic engineering at the interface of stringology, algorithm design and computational biology. Besides the planned extensions mentioned in Section, we are working on integrating external libraries and plan to intensify our collaborations with other research groups.Availability and requirementsSeqAn is freely distributed under the GNU Lesser General Public Licence (LGPL), both for academic and non-academic use. The library and its documentation can be downloaded from http://www.seqan.de. All parts of the library are tested on Windows with Microsoft Visual Studio 2003 and 2005 and on Linux with G++ compilers version 3.0 and above.

ReferencesVenter JC, Reinert K, et al.: The Sequence of the Human Genome. Science 2001, 291: 1145–1434.Article 

Google Scholar 

Myers EW: A fast bit-vector algorithm for approximate string matching based on dynamic programming. Journal of the ACM 1999, 46(3):395–415.Article 

Google Scholar 

Altschul SF, Gish W, Miller W, Myers EW, Lipman DJ: Basic local alignment search tool. Journal of Molecular Biology 1990, 215: 403–410.Article 

CAS 

PubMed 

Google Scholar 

Manber U, Myers E: Suffix arrays: a new method for on-line string searches. In SODA'90: Proceedings of the first annual ACM-SIAM symposium on Discrete algorithms. Society for Industrial and Applied Mathematics; 1990:319–327.

Google Scholar 

Myers EW, Sutton GG, Delcher AL, Dew IM, Fasulo DP, Flanigan MJ, Kravitz SA, Mobarry CM, Reinert KHJ, Remington KA, Anson EL, Bolanos RA, Chou HH, Jordan CM, Halpern AL, Lonardi S, Beasley EM, Brandon RC, Chen L, Dunn PJ, Lai Z, Liang Y, Nusskern DR, Zhan M, Zhang Q, Zheng X, Rubin GM, Adams MD, Venter JC: A Whole-Genome Assembly of Drosophila. Science 2000, 287: 2196–2204.Article 

CAS 

PubMed 

Google Scholar 

Mural RJ, Adams MD, Myers GW, Reinert K, et al.: A Comparison of Whole-Genome Shotgun-Derived Mouse Chromosome 16 and the Human Genome. Science 2002, 296: 1661–1671.Article 

CAS 

PubMed 

Google Scholar 

Brudno M, Do C, Cooper GM, Kim MF, Davydov E, Program NCS, Green ED, Sidow A, Batzoglou S: LAGAN and Multi-LAGAN: Efficient Tools for Large-Scale Multiple Alignment of Genomic DNA. Genome Research 2003, 13(4):721–731.Article 

PubMed Central 

CAS 

PubMed 

Google Scholar 

Kurtz S, Phillippy A, Delcher AL, Smoot M, Shumway M, Antonescu C, Salzberg SL: Versatile and open software for comparing large genomes. Genome Biology 2004, 5(2):R12.Article 

PubMed Central 

PubMed 

Google Scholar 

Höhl M, Kurtz S, Ohlebusch E: Efficient multiple genome alignment. ISMB (Supplement of Bioinformatics) 2002, 312–320.

Google Scholar 

Darling A, Mau B, Blattner F, Perna N: Mauve: Multiple Alignment of Conserved Genomic Sequence with Rearrangements. Genome Research 2004, 14: 1394–1403.Article 

PubMed Central 

CAS 

PubMed 

Google Scholar 

Mehlhorn K, Näher S: The LEDA Platform of Combinatorial and Geometric Computing. Cambridge University Press; 1999.

Google Scholar 

Overmars MH: Designing the Computational Geometry Algorithms Library CGAL. Proceedings Workshop on Applied Computational Geometry 1996.

Google Scholar 

Fabri A, Giezeman GJ, Kettner L, Schirra S, Schönherr S: The CGAL Kernel: A Basis for Geometric Computation. WACG: 1st Workshop on Applied Computational Geometry: Towards Geometric Engineering, WACG LNCS; 1996. [http://citeseer.ist.psu.edu/fabri96cgal.html]

Google Scholar 

Dutheil J, Gaillard S, Bazin E, Glemin S, Ranwez V, Galtier N, Belkhir K: Bio++: a set of C++ libraries for sequence analysis, phylogenetics, molecular evolution and population genetics. BMC Bioinformatics 2006, 7: 188.Article 

PubMed Central 

PubMed 

Google Scholar 

Butt D, Roger AJ, Blouin C: libcov: A C++ bioinformatic library to manipulate protein structures, sequence alignments and phylogeny. BMC Bioinformatics 2005, 6: 138.Article 

PubMed Central 

PubMed 

Google Scholar 

Pitt WR, Williams MA, Steven M, Sweeney B, Bleasby AJ, Moss DS: The Bioinformatics Template Library – generic components for biocomputing. Bioinformatics 2001, 17(8):729–737.Article 

CAS 

PubMed 

Google Scholar 

Vakatov D, Siyan K, Ostell J, editors:The NCBI C++ Toolkit [Internet]. National Library of Medicine, National Center for Biotechnology Information, Bethesda (MD); 2003. [http://www.ncbi.nlm.nih.gov/books/bv.fcgi?rid=toolkit]

Google Scholar 

Vahrson W, Hermann K, Kleffe J, Wittig B: Object-oriented sequence analysis: SCL-a C++ class library. Bioinformatics 1996, 12(2):119–127.Article 

CAS 

Google Scholar 

Needleman SB, Wunsch CD: A general method applicable to the search for similarities in the amino acid sequence of two proteins. J Molecular Biol 1970, 48: 443–453.Article 

CAS 

Google Scholar 

Stajich J, Block D, Boulez K, Brenner S, Chervitz S, Dagdigian C, Fuellen G, Gilbert J, Korf I, Lapp H, Lehvaslaiho H, Matsalla C, Mungall C, Osborne B, Pocock M, Schattner P, Senger M, Stein L, Stupka E, Wilkinson M, Birney E: The Bioperl toolkit: Perl modules for the life sciences. 2002.

Google Scholar 

Pocock M, Down T, Hubbard T: BioJava: Open Source Components for Bioinformatics. ACM SIGBIO Newsletter 2000, 20(2):10–12.Article 

Google Scholar 

Austern MH: Generic Programming and the STL. Addison Wesley; 1998.

Google Scholar 

Czarnecki K, Eisenecker UW: Generative Programming. Methods, Tools, and Applications. Addison Wesley; 2000.

Google Scholar 

Wilson M: Imperfect C++. Practical Solutions for Real-Life Programming. Addison Wesley; 2004.

Google Scholar 

Vandevoorde D, Josuttis NM: C++ Templates. The Complete Guide. Addison Wesley; 2003.

Google Scholar 

Gotoh O: An improved algorithm for matching biological sequences. J Mol Biol 1982, 162(3):705–708.Article 

CAS 

PubMed 

Google Scholar 

Abouelhoda M, Ohlebusch E: Chaining methods revisited. Proceedings of the 14th Annual Symposium on Combinatorial pattern matching (CPM) 2003 2003, 1–16.

Google Scholar 

Myers G, Miller W: Chaining Multiple-Alignment Fragments in Sub-Quadratic Time. SODA: ACM-SIAM Symposium on Discrete Algorithms (A Conference on Theoretical and Experimental Analysis of Discrete Algorithms) 1995. [http://citeseer.ist.psu.edu/miller95chaining.html]

Google Scholar 

Abouelhoda MI, Ohlebusch E, Kurtz S: Optimal Exact String Matching Based on Suffix Arrays. Proceedings of the Ninth International Symposium on String Processing and Information Retrieval, Lecture Notes in Computer Science 2476 Springer-Verlag; 2002, 31–43. [http://www.zbh.uni-hamburg.de/staff/kurtz/papers/AboOhlKur2002.pdf]

Google Scholar 

Giegerich R, Kurtz S, Stoye J: Efficient Implementation of Lazy Suffix Trees. Software: Practice and Experience 2003, 33(11):1035–1049.

Google Scholar 

Burkhardt S, Crauser A, Ferragina P, Lenhof HP, Rivals E, Vingron M: q-gram based database searching using suffix arrays. Proceedings of the third Annual International Conference on Computational Molecular Biology (RECOMB-99) 1999, 77–83.

Google Scholar 

Burkhardt S, Kärkkäinen J: Better Filtering with Gapped q-grams. In CPM'01: Proceedings of the 12th Annual Symposium on Combinatorial Pattern Matching. London, UK: Springer-Verlag; 2001:73–85.Chapter 

Google Scholar 

Li M, Ma B, Kisman D, Tromp J: PatternHunter II: Highly sensitive and fast homology search. Genome Informatics 2003, 14: 164–175.CAS 

PubMed 

Google Scholar 

Navarro G, Raffinot M: Flexible Pattern Matching in Strings. CUP; 2002.Book 

Google Scholar 

Saitou N, Nei M: The Neighbor-Joining method: a new method, for reconstructing phylogenetic trees. Mol Biol Evol 1987, 4: 406–425.CAS 

PubMed 

Google Scholar 

Kececioglu J: The maximum weight trace problem in multiple sequence alignment. In Proc 4-th Symp Combinatorial Pattern Matching, no 684 in Lecture Notes in Computer Science. Springer-Verlag; 1993:106–119.Chapter 

Google Scholar 

Cormen TH, Leiserson CE, Rivest RL, Stein C: Introduction to Algorithms. Cambridge, MA: MIT Press; 2001.

Google Scholar 

Notredame C, Higgins D, Heringa J: T-Coffee: A Novel Method for Fast and Accurate Multiple Sequence Alignment. Journal of Molecular Biology 2000, 302: 205–217.Article 

CAS 

PubMed 

Google Scholar 

Halpern A, Huson D, Reinert K: Segment Match refinment and applications. Proceedings of the 2nd Workshop on Algorithms Bioinformatics (WABI-02) 2002, 126–139.Chapter 

Google Scholar 

Hirschberg DS: A linear space algorithm for computing maximal common subsequences. Volume 18. ACM Press; 1975:341–343.

Google Scholar 

Weiner P: Linear pattern matching algorithms. Proceedings of the 14th IEEE Symposium on Switching and Automata Theory 1973, 1–11.Chapter 

Google Scholar 

Bieganski P, Riedl J, Carlis J: Generalized Suffix Trees for Biological Sequence Data: Applications and Implementation. Twentyseventh Annual Hawaii International Conference on System Sciences 1994.

Google Scholar 

Abouelhoda M, Kurtz S, Ohlebusch E: Replacing Suffix Trees with Enhanced Suffix Arrays. Journal of Discrete Algorithms 2004, 2: 53–86. [http://www.zbh.uni-hamburg.de/staff/kurtz/papers/AboKurOhl2004.pdf]Article 

Google Scholar 

Download referencesAcknowledgementsWe would like to acknowledge all students of the BSc and MSc program in bioinformatics at the FU Berlin who have contributed to SeqAn so far. Amongst others those are most notably Stephan Aiche, Anne-Katrin Emde, Ji-Hyun Lim, and Henrik Wöhrle.Author informationAuthors and AffiliationsAlgorithmische Bioinformatik, Institut für Informatik, Takustr. 9, 14195, Berlin, GermanyAndreas Döring, David Weese & Tobias RauschInternational Max Planck Research School for Computational Biology and Scientific Computing, Ihnestr. 63 – 73, 14195, Berlin, GermanyTobias RauschAuthorsAndreas DöringView author publicationsYou can also search for this author in

PubMed Google ScholarDavid WeeseView author publicationsYou can also search for this author in

PubMed Google ScholarTobias RauschView author publicationsYou can also search for this author in

PubMed Google ScholarKnut ReinertView author publicationsYou can also search for this author in

PubMed Google ScholarCorresponding authorCorrespondence to

Andreas Döring.Additional informationCompeting interestsThe author(s) declares that there are no competing interests.Authors' contributionsAD worked out the overall design of the library and implemented a large part of the kernel functionality. DW took responsibility mainly for the index data structures and the pipelining in SeqAn. The work of TR includes everything in the library that has to do with graphs. Programming SeqAn was team work, so all three programmers (AD, DW, and TR) left tracks in almost every part of the library. KR supervised the project. All authors participated equally in composing this manuscript.Electronic supplementary material12859_2007_1996_MOESM1_ESM.PDFAdditional file 1: Listings. The listings show C++ code that uses SeqAn to implement a simplified version of the well-known MUMmer tool [8]. (PDF 24 KB)Authors’ original submitted files for imagesBelow are the links to the authors’ original submitted files for images.Authors’ original file for figure 1Authors’ original file for figure 2Authors’ original file for figure 3Rights and permissions

This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Reprints and permissionsAbout this articleCite this articleDöring, A., Weese, D., Rausch, T. et al. SeqAn An efficient, generic C++ library for sequence analysis.

BMC Bioinformatics 9, 11 (2008). https://doi.org/10.1186/1471-2105-9-11Download citationReceived: 21 August 2007Accepted: 09 January 2008Published: 09 January 2008DOI: https://doi.org/10.1186/1471-2105-9-11Share this articleAnyone you share the following link with will be able to read this content:Get shareable linkSorry, a shareable link is not currently available for this article.Copy to clipboard

Provided by the Springer Nature SharedIt content-sharing initiative

KeywordsSuffixSuffix TreeSecondary MemorySuffix ArrayAlgorithmic Component

Download PDF

Advertisement

BMC Bioinformatics

ISSN: 1471-2105

Contact us

General enquiries: journalsubmissions@springernature.com

Read more on our blogs

Receive BMC newsletters

Manage article alerts

Language editing for authors

Scientific editing for authors

Policies

Accessibility

Press center

Support and Contact

Leave feedback

Careers

Follow BMC

BMC Twitter page

BMC Facebook page

BMC Weibo page

By using this website, you agree to our

Terms and Conditions,

Your US state privacy rights,

Privacy

statement and

Cookies policy.

Your privacy choices/Manage cookies we use in the preference centre.

© 2024 BioMed Central Ltd unless otherwise stated. Part of

Springer Nature.

SeqMan Ultra | DNASTAR

SeqMan Ultra | DNASTAR

Software

DNASTAR LASERGENEComprehensive Sequence Analysis

Lasergene Molecular Biology

Lasergene Genomics

Lasergene Protein

NOVA APPLICATIONSProtein Modeling

NovaFold AI

NovaFold

NovaFold Antibody

NovaDock

Workflows

Molecular Biology Workflows

Automated Virtual Cloning

Clone Sequence Verification

Gel Electrophoresis Simulation

Multiple Sequence Alignment

Pairwise Sequence Alignment

PCR Site-Directed Mutagenesis

PCR Primer Design

Phylogenetic Analysis

Plasmid Maps

Sanger Sequence Assembly

Sequence Editing and Annotation

Protein Analysis

Antibody Modeling

Antibody Phage Display

Epitope Prediction

Protein Docking

Protein Sequence Analysis

Protein Stability Prediction

Protein Structural Alignment

Protein Structure Analysis

Protein Structure Prediction

Genomics

Clinical Research

De Novo Genome Assembly

Mauve Genome Alignment

Metagenomic Assembly

Variant Analysis

Viral Genome Analysis

Whole Genome/Whole Exome

Transcriptomics

ChIP-Seq Data Analysis

De Novo Transcriptome Assembly

RNA-Seq Alignment

Services

Protein Services

Genomic Services

Pricing

Resources

KNOWLEDGE CENTER

User Guides and Tutorials

Product Literature

Product Releases

Product Notifications

Supported File Formats

Technical Requirements

WEBINARS & EVENTS

BLOG

LICENSING OPTIONS

About

Careers

Distributors

Legal Information

Privacy Policy

Contact

QUESTIONS? CALL 866.511.5090

REQUEST FREE TRIAL

SHOPPING CART MY ACCOUNT

Software

DNASTAR LASERGENEComprehensive Sequence Analysis

Lasergene Molecular Biology

Lasergene Genomics

Lasergene Protein

NOVA APPLICATIONSProtein Modeling

NovaFold AI

NovaFold

NovaFold Antibody

NovaDock

Workflows

Molecular Biology

Automated Virtual Cloning

Clone Sequence Verification

Gel Electrophoresis Simulation

Multiple Sequence Alignment

Pairwise Sequence Alignment

PCR Site-Directed Mutagenesis

PCR Primer Design

Phylogenetic Analysis

Plasmid Maps

Sanger Sequence Assembly

Sequence Editing and Annotation

Protein Analysis

Antibody Modeling

Antibody Phage Display

Epitope Prediction

Protein Docking

Protein Sequence Analysis

Protein Stability Prediction

Protein Structural Alignment

Protein Structure Analysis

Protein Structure Prediction

Genomics

Clinical Research

De Novo Genome Assembly

Mauve Genome Alignment

Metagenomic Assembly

Variant Analysis

Viral Genome Analysis

Whole Exome/Genome Sequencing

Transcriptomics

ChIP-Seq Data Analysis

De Novo Transcriptome Assembly

RNA-Seq Alignment and Analysis

Services

Protein Services

Genomic Services

Pricing

Resources

KNOWLEDGE CENTER

User Guides and Tutorials

Product Literature

Product Releases

Product Notifications

Supported File Formats

Technical Requirements

WEBINARS & EVENTS

BLOG

LICENSING OPTIONS

About

Careers

Distributors

Legal Information

Privacy Policy

Contact

SEQMAN ULTRA

Accurately trim, assemble, evaluate, and edit Sanger and NGS sequencing data.

Home > Blog > SeqMan Ultra

SeqMan Ultra

SeqMan Ultra is the new face of SeqMan Pro, our longstanding sequence assembly software application, complete with a new modern, intuitive interface, as well as lots of performance improvements under the hood. SeqMan Ultra uses the most accurate contig assembly algorithm for Sanger sequence assemblies, and provides extensive post-assembly analysis tools for both Sanger and NGS assemblies. When compared to the competition, our algorithm does the best job assembling Sanger sequences into a single contig, and calling the most accurate consensus sequence based on trace quality and shape. Following assembly, SeqMan Ultra uniquely offers you the ability to easily edit your assembled data – exposing or trimming ends, introducing mutations – as well as analyzing your assembled data, including viewing chromatograms, evaluating coverage, analyzing variants, and examining multiple samples organized within a single contig.

SEE PRICINGFREE TRIAL DOWNLOAD

Learn more about SeqMan Ultra

Workflows   | Resources   | FAQs   | Compare Packages

UNIVERSITIES TRUST DNASTAR

BIOTECH AND PHARMA COMPANIES RELY ON DNASTAR

JOURNAL CITATIONS OF DNASTAR

DNASTAR USERS WORLDWIDE

SeqMan Ultra-Related Workflows

Sanger Sequence Assembly

Clinical Research

De Novo Genome Assembly

Metagenomic Assembly

Variant Analysis

Viral Genome Analysis

Whole Genome/Exome SequencingResources

Please see our resources below for more information on SeqMan Ultra.

Comprehensive Variant Analysis: from Raw Sequence Data to Aligned Genomes

Watch Webinar

Learn how to easily create the most accurate assemblies of your Sanger sequencing results

Watch Webinar

De novo assembly and analysis of Sanger/ABI data

Watch Video

Sanger Sequence Assembly in SeqMan Ultra

Watch Video

Dr. Michael Pauly of Mapp Biopharmaceutical on Ebola and ZMapp

Read Blog Post

De Novo Sanger Data Assembly in SeqMan Ultra

Read White Paper

SeqMan Ultra Help

User Guide

SeqMan Ultra Tutorials

Tutorials

FAQs

What’s the difference between SeqMan NGen, SeqMan Ultra, and SeqMan Pro?

SeqMan NGen and SeqMan Ultra are two applications that work together to assemble and analyze both Sanger and NGS sequencing data. SeqMan NGen is the…

SeqMan NGen and SeqMan Ultra are two applications that work together to assemble and analyze both Sanger and NGS sequencing data. SeqMan NGen is the application that assembles and aligns the data, and is fully integrated in SeqMan Ultra so that you can go from streamlined project setup to finished assembly all in one application. SeqMan Ultra is one of the sequence assembly tools that allows you to analyze and edit the assembly produced by SeqMan NGen. (Additional applications within Lasergene Genomics are available for analyzing NGS projects and more complex Sanger assemblies).

SeqMan Ultra is the new face of SeqMan Pro, our longstanding contig assembly software application, complete with a new modern, intuitive interface, as well as lots of performance improvements under the hood. SeqMan Ultra is a 64-bit application, which means when compared to the 32-bit SeqMan Pro application, it offers faster project opening, better performance for analyzing large files, increased capacity, and compatibility with macOS 10.15. SeqMan Pro will still be available in Lasergene 17, but will eventually be completely replaced by SeqMan Ultra.

Show more

Which Lasergene package includes SeqMan Ultra?

SeqMan Ultra is included with Lasergene Molecular Biology, Lasergene Genomics, and the complete DNASTAR Lasergene package.

With a Lasergene Molecular Biology license, SeqMan Ultra is available for Sanger sequence assemblies only.

With a Lasergene Genomics or DNASTAR Lasergene license, SeqMan Ultra is available for all NGS assemblies as well as Sanger sequence assemblies.

Can I edit my assembled sequences in SeqMan Ultra?

Yes. An assembly run in SeqMan Ultra or SeqMan NGen produces a fully editable project which can be edited at base-level and contig-level in SeqMan Ultra.

Compare DNASTAR Lasergene Packages

 

MOST POPULARDNASTAR Lasergene

Lasergene Molecular Biology

Lasergene Genomics

Lasergene Protein

Included Applications

SeqBuilder Pro

SeqMan Ultra

MegAlign Pro

GeneQuest

GenVision

SeqNinja

SeqMan NGen

ArrayStar

GenVision Pro

Protean 3D

(+1 prediction per Nova Application)

DNASTAR Navigator

Supported Workflows

Antibody Phage Display

Automated Virtual Cloning

Clone Sequence Verification

Gel Electrophoresis Simulation

Mauve Genome Alignment

Multiple Sequence Alignment

Pairwise Sequence Alignment

PCR Primer Design

PCR Site-Directed Mutagenesis

Phylogenetic Analysis

Plasmid Maps

Sequence Editing and Annotation

Sanger Sequence Assembly

ChIP-Seq Data Analysis

Clinical Research

De Novo Transcriptome Assembly

Large Scale Variant Analysis

Metagenomic Assembly

NGS De Novo Genome Assembly

RNA-Seq Alignment

Viral Genome Analysis

Whole Exome/Genome Sequencing

Antibody Modeling

Epitope Prediction

Protein Docking

Protein Sequence Analysis

Protein Stability Prediction

Protein Structural Alignment

Protein Structure Analysis

Protein Structure Prediction

Integrates with

DNASTAR Cloud Data Drive

DNASTAR Cloud Assemblies

 

NovaDock

NovaFold

NovaFold AI

NovaFold Antibody

See Pricing

See Pricing

See Pricing

See Pricing

 

 

Ready to learn more?

PRICING

DOWNLOAD FREE TRIAL

Would you like to receive technical tips and special offers straight to your inbox?

Pricing

Software

Workflows

Resources

Training

About

Request a free trial of our complete Lasergene package. Try before you buy!

FREE TRIAL REQUEST

© 2024 — DNASTAR Privacy Policy

This website uses cookies to improve user experience and understand our web usage. By continuing to use our website, you consent to our use of cookies. Accept

Privacy & Cookies Policy

Close

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.

Necessary

Necessary

Always Enabled

Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.

Non-necessary

Non-necessary

Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.

SAVE & ACCEPT