- About
- Application features
- GitHub pages
- Building from source
- Building the documentation
- Running the tests
This application is made for Motorola's science cup.
- Translates DNA/RNA sequences to protein sequences.
- Highlights and analyzes peptides.
- Draws a skeletal formula of a peptide.
- Displays various information about peptides.
This project is publicly accessible on GitHub pages under this url.
These are the dependencies required to build this project.
These are common dependencies required to build the project.
git
CMake
Ninja
ormake
Conan
version < 2.0, can be installed usingpip
These are the dependencies required to build and deploy this project on a web server.
These are the dependencies required only to build the c++ library for unit testing.
- C++ compiler (only one)
g++
>= 12clang++
>= 16
ctest
(not required but recommended)
These dependencies are optional.
Doxygen
For building the documentation as html and man pages
Build the c++ library using emscripten.
# Source the `emsdk`.
source <emsdk_installation_path>/emsdk_env.sh
# Clone and cd into the repository
git clone https://www.github.com/Xertes0/msc-bioinformatyka-2022 && cd msc-bioinformatyka-2022
# Create the build directory and configure CMake
mkdir build-emsdk && cd build-emsdk
emcmake cmake -DCMAKE_BUILD_TYPE:STRING="Release" -DDOXYGEN_ENABLED:BOOL=OFF -DTESTS_ENABLED:BOOL=OFF ..
# Build the project
cmake --build . --parallel $(($(nproc)+1))
Build the web application and generate static HTML pages.
# cd into web directory.
cd <project_dir>/web
# Install dependencies using `yarn`
yarn
# Build static HTML pages.
yarn build
Static html pages will be put in <project_dir>/web/dist
which can be now served on a web server.
In case you want to run this application on your own web server
remember to copy the dist
onto the webserver and
rename it to msc-bioinformatyka-2022
so the url looks like this: <address>/msc-bioinformatyka-2022/index.html
.
If you want to change this, modify the vite configuration file <project_dir>/web/vite.config.ts
.
Build the c++ library and test suite for your system.
# Clone and cd into the repository
git clone https://www.github.com/Xertes0/msc-bioinformatyka-2022 && cd msc-bioinformatyka-2022
# Create the build directory and configure CMake
mkdir build-native && cd build-native
emcmake cmake -DCMAKE_BUILD_TYPE:STRING="Release" -DDOXYGEN_ENABLED:BOOL=OFF -DTESTS_ENABLED:BOOL=ON ..
# Build the project
cmake --build . --parallel $(($(nproc)+1))
You can optionally build the documentation as html and man pages with Doxygen
.
For this use any of the two previous build methods
but change the -DDOXYGEN_ENABLED:BOOL=OFF
variable to ON
when configuring CMake
.
Then run:
# Build the doxygen documentation
cmake --build . --parallel $(($(nproc)+1)) --target docs
Documentation will be put in <build_dir>/docs/html
for static html pages and <build_dir>/docs/man
for man pages.
After building the project for unit tests run these commands.
# cd into the build directory
cd <project_dir>/build-native
# Run the tests with ctest (recommended)
ctest
# Or run the tests through the catch2 binary
./tests/tests