Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Magnum | 4,407 | 8 days ago | 91 | other | C++ | |||||
Lightweight and modular C++11 graphics middleware for games and data visualization | ||||||||||
Fips | 443 | 23 days ago | 57 | mit | Python | |||||
High-level build system for distributed, multi-platform C/C++ projects. | ||||||||||
Corrade | 433 | 8 days ago | 44 | other | C++ | |||||
C++11 multiplatform utility library | ||||||||||
Pacman.c | 422 | 9 days ago | 2 | mit | C | |||||
Simple Pacman clone written in C99. | ||||||||||
Crosswindow | 417 | 2 months ago | 17 | mit | C++ | |||||
💻📱 A cross platform system abstraction library written in C++ for managing windows and performing OS tasks. | ||||||||||
Binjgb | 406 | 17 days ago | 8 | mit | C | |||||
Gameboy emulator implemented in C, that also runs in the browser | ||||||||||
Magnum Examples | 247 | a month ago | 13 | unlicense | C++ | |||||
Examples for the Magnum C++11 graphics engine | ||||||||||
Sdl_gui | 217 | a year ago | 7 | mit | C | |||||
GUI library for SDL2 | ||||||||||
Webp Hero | 207 | 4 | 7 | a year ago | 30 | February 17, 2022 | 3 | mit | CMake | |
browser polyfill for the webp image format | ||||||||||
Modern Wasm Starter | 197 | 8 months ago | 26 | October 12, 2022 | 1 | unlicense | TypeScript | |||
🛸 Run C++ code on web and create blazingly fast websites! A starter template to easily create WebAssembly packages using type-safe C++ bindings with automatic TypeScript declarations. |
Note: for the pure-JavaScript DICOM implementation, see github.com/dcmjs-org/dcmjs. The package here may still be useful for specialized tasks.
dcmjs is a javascript cross-compilation of dcmtk (dcmtk.org) for use in a javascript environment. Uses emscripten.
See http://dcmjs.org
See License.txt for information on using and contributing.
This package is intended for use in browser environments. For server side use probably you want to call to the corresponding natively compiled dcmtk executables.
To see javascript that uses dcmjs.js see the
gh-pages branch of
commontk/dcmjs.org repository
which is what hosts dcmjs.org. |
The module dcmjs
allows to selectively execute a dcmtk application.
require('dcmjs').run(['list'])
$ node dcmjs-cli list
Output:
dcm2pnm
dcmdump
dcm2xml
dcmftest
require('dcmjs').run(['dcmdump'])
$ node dcmjs-cli dcmdump
Output:
$dcmtk: dcmdump v3.6.1 DEV $
dcmdump: Dump DICOM file and data set
usage: dcmdump [options] dcmfile-in...
parameters:
dcmfile-in DICOM input file or directory to be dumped
[...]
Notes:
Node executables can access the local file system. Read here for more details.
To use dcmjs on a browser see the demos at http://dcmjs.org/
To learn how to use dcmjs from javascript, see javascripts/utils.js and dump/index.html
Install Git: http://git-scm.com/downloads
Install Docker: https://docs.docker.com/engine/installation/
Install dockcross-web-wasm
:
docker pull dockcross/web-wasm
docker run dockcross/web-wasm > ~/bin/dockcross-web-wasm
chmod u+x ~/bin/dockcross-web-wasm
For more details, see dockcross/dockcross
The following commands will checkout dcmjs project and build dcmjs.js
using dockcross-web-wasm
.
git clone git://github.com/commontk/dcmjs
cd dcmjs
dockcross-web-wasm cmake -Bdcmjs-build -H. -GNinja
dockcross-web-wasm ninja -Cdcmjs-build
When done, you will have these files in the dcmjs-build/dcmjs-build/bin
folder:
$ ls -1 dcmjs-build/dcmjs-build/bin/
dcmjs-cli
dcmjs.js
dcmjs.js.gz
dcmjs.wasm
dcmjs.wasmt
To support using the javascript module with node, the current folder is mounted as /working
. This
means that input files must be in in the current directory or a sub-directory.
For example, assuming we have the these files:
/home/awesome/downloads/dcmjs-cli
/home/awesome/downloads/dcmjs.js
/tmp/data/sr.dcm
The following is expected to work:
cd /tmp
node /home/awesome/downloads/dcmjs-cli dsr2xml /working/data/sr.dcm
Re-configuring the project setting any of these options allows to customize the
list of applications bundled in the dcmjs.js
module:
-DBUILD_cda2dcm_APP:BOOL=[ON|OFF]
-DBUILD_dcm2json_APP:BOOL=[ON|OFF]
-DBUILD_dcm2pdf_APP:BOOL=[ON|OFF]
-DBUILD_dcm2pnm_APP:BOOL=[ON|OFF]
-DBUILD_dcm2xml_APP:BOOL=[ON|OFF]
-DBUILD_dcmcjpeg_APP:BOOL=[ON|OFF]
-DBUILD_dcmcjpls_APP:BOOL=[ON|OFF]
-DBUILD_dcmconv_APP:BOOL=[ON|OFF]
-DBUILD_dcmcrle_APP:BOOL=[ON|OFF]
-DBUILD_dcmdjpeg_APP:BOOL=[ON|OFF]
-DBUILD_dcmdjpls_APP:BOOL=[ON|OFF]
-DBUILD_dcmdrle_APP:BOOL=[ON|OFF]
-DBUILD_dcmdspfn_APP:BOOL=[ON|OFF]
-DBUILD_dcmdump_APP:BOOL=[ON|OFF]
-DBUILD_dcmftest_APP:BOOL=[ON|OFF]
-DBUILD_dcmgpdir_APP:BOOL=[ON|OFF]
-DBUILD_dcmicmp_APP:BOOL=[ON|OFF]
-DBUILD_dcmj2pnm_APP:BOOL=[ON|OFF]
-DBUILD_dcml2pnm_APP:BOOL=[ON|OFF]
-DBUILD_dcmmkcrv_APP:BOOL=[ON|OFF]
-DBUILD_dcmmkdir_APP:BOOL=[ON|OFF]
-DBUILD_dcmmklut_APP:BOOL=[ON|OFF]
-DBUILD_dcmodify_APP:BOOL=[ON|OFF]
-DBUILD_dcmp2pgm_APP:BOOL=[ON|OFF]
-DBUILD_dcmprscp_APP:BOOL=[ON|OFF]
-DBUILD_dcmprscu_APP:BOOL=[ON|OFF]
-DBUILD_dcmpschk_APP:BOOL=[ON|OFF]
-DBUILD_dcmpsmk_APP:BOOL=[ON|OFF]
-DBUILD_dcmpsprt_APP:BOOL=[ON|OFF]
-DBUILD_dcmpsrcv_APP:BOOL=[ON|OFF]
-DBUILD_dcmpssnd_APP:BOOL=[ON|OFF]
-DBUILD_dcmqridx_APP:BOOL=[ON|OFF]
-DBUILD_dcmqrscp_APP:BOOL=[ON|OFF]
-DBUILD_dcmqrti_APP:BOOL=[ON|OFF]
-DBUILD_dcmquant_APP:BOOL=[ON|OFF]
-DBUILD_dcmrecv_APP:BOOL=[ON|OFF]
-DBUILD_dcmscale_APP:BOOL=[ON|OFF]
-DBUILD_dcmsend_APP:BOOL=[ON|OFF]
-DBUILD_dcmsign_APP:BOOL=[ON|OFF]
-DBUILD_dcod2lum_APP:BOOL=[ON|OFF]
-DBUILD_dconvlum_APP:BOOL=[ON|OFF]
-DBUILD_drtdump_APP:BOOL=[ON|OFF]
-DBUILD_dsr2html_APP:BOOL=[ON|OFF]
-DBUILD_dsr2xml_APP:BOOL=[ON|OFF]
-DBUILD_dsrdump_APP:BOOL=[ON|OFF]
-DBUILD_dump2dcm_APP:BOOL=[ON|OFF]
-DBUILD_echoscu_APP:BOOL=[ON|OFF]
-DBUILD_findscu_APP:BOOL=[ON|OFF]
-DBUILD_getscu_APP:BOOL=[ON|OFF]
-DBUILD_img2dcm_APP:BOOL=[ON|OFF]
-DBUILD_mdfconen_APP:BOOL=[ON|OFF]
-DBUILD_mdfdsman_APP:BOOL=[ON|OFF]
-DBUILD_movescu_APP:BOOL=[ON|OFF]
-DBUILD_pdf2dcm_APP:BOOL=[ON|OFF]
-DBUILD_stl2dcm_APP:BOOL=[ON|OFF]
-DBUILD_storescp_APP:BOOL=[ON|OFF]
-DBUILD_storescu_APP:BOOL=[ON|OFF]
-DBUILD_termscu_APP:BOOL=[ON|OFF]
-DBUILD_wlcefs_APP:BOOL=[ON|OFF]
-DBUILD_wlmscpfs_APP:BOOL=[ON|OFF]
-DBUILD_xml2dcm_APP:BOOL=[ON|OFF]
-DBUILD_xml2dsr_APP:BOOL=[ON|OFF]
The list above has been generated using:
cd DCMTK
for file in `find -wholename *apps/*.cc`; do
appname=$( basename ${file%.*} );
echo -e "* [${appname}](http://support.dcmtk.org/docs/${appname}.html): \`-DBUILD_${appname}_APP:BOOL=[ON|OFF]\`";
done | sort
List of options found in CMake/Externals/External_DCMTK.cmake can be generated using:
cd DCMTK
for file in `find -wholename *apps/*.cc`; do
appname=$( basename ${file%.*} );
echo -e "dcmtk_build_app_option(BUILD_${appname}_APP OFF)";
done | sort | column -t
release=<name-of-release>
git fetch
git tag -s -m "${release}" ${release} origin/master
git push origin ${release}