Build Instructions - thomst08/requestrr GitHub Wiki

Building Project from Source Code

This guide is here to help those who want to build their own versions or to help create development environments or new containers.


Table of Content


Pre-requirements

This project runs on dotNet 6, it also uses Node.js, make sure the following things are installed in your development environment:

Note: You can install npm via brew on mac. On mac you might need to re-install your XCode command line tools. See here.


Build Webapp

Before the program can be build, the webapp needs to be build first, follow the steps to build the files.

  1. Open a terminal into the following folders form the root of the project Requestrr.WebApi/ClientApp.
  2. Run the following command to set-up the node environment npm install
  3. Run the following command to build the webapp npm run build

That will build the required files for the next step.

Note: You might see compiling warns from the two commands, these can be ignored. These warning/errors might look like the following:

./src/components/Inputs/MultiDropdown.jsx
  Line 29:  Expected '!==' and instead saw '!='  eqeqeq
  Line 53:  No duplicate props allowed           react/jsx-no-duplicate-props

./src/views/TvShows.jsx
  Line 38:  'Input' is defined but never used  no-unused-vars

./src/views/Movies.jsx
  Line 38:  'Input' is defined but never used  no-unused-vars

Search for the keywords to learn more about each warning.
To ignore, add // eslint-disable-next-line to the line before.

Build Requestrr

  1. Open a terminal into the following folder form the root of the project Requestrr.WebApi
  2. Publish the files and build the program dotnet publish -c release -o publish. This will create a publish folder with your published files.

Note: Add -r to target a build for a select runtime if needed. An example of this is dotnet publish -c release -o publish -r linux-x64


Building Docker Containers

You are welcome to create your own containers if needed, the following can help you make your own.

  1. Create your dockerfile, you can use the one in this projects located in the Requestrr.WebApi folder or here
  2. Create your image using the following command as a guide: docker buildx build -t {build tag e.g. thomst08/requestrr:latest} --platform {platform target, must match the build you made in dotNet} .
⚠️ **GitHub.com Fallback** ⚠️