This project contains the code for the Doch-ost backend server and web client.
This project is supported on the Windows OS.
dotnet tool install --global dotnet-ef --version 8.0.11
The web client requires Node.js. The project has been tested with the v22.11.0 (LTS).
For generating base64 strings, you'll need to set the environment variable DCH_SECRET
to a
secret value. Otherwise, the value provided in the app settings can be used.
The application relies on the Aspose.Total toolkit and requires a license.
A license has been provided for this project but it will expire less than a month.
After dependencies have been installed you will need to clone a local copy of this repository.
git clone git@github.com:gnerkus/doch-ost.git
You can open the solution file and run with https
.
To run the server from the command line you can use the dotnet run
command. An example is
shown below:
cd doch-ost
dotnet ef database update --project Data
dotnet run --project Dochost.Server
Running the server also starts the web client's server. The servers can be accessed using the following URLs:
- backend server: https://localhost:7119
- API documentation: https://localhost:7119/swagger/index.html
- Web client: https://localhost:57813
The project does not contain any automated tests; manual tests are conducted via the Web client.
Dochost requires a user account to upload files. A user account can be created via the registration form available at the login page (https://localhost:57813/login). The test between the form and the submit button toggles the form between login and registration.
Files can be uploaded with the Upload button at the top-right once logged in. Multiple files can be uploaded at the same time.
The loading indicator at the right of a file's row in the list, shows the status of the file's preview.
The icon at the left of a file's row indicates the file's type.
Once the loading indicator on the file is no longer there, clicking on the file's row displays a preview pane on the right side of the list.
The file can be downloaded using the download button at the top right of the preview pane. A file can be downloaded even if its preview has not yet been generated.
Only single file downloads are supported
The share button at the top of the preview pane, besides the download button, allows the generation of a public link to the file. Once generated, the link is provided in the input on the left of the share button.
Shared files can be accessed by users without a Dochost user account.
Access to a shared file lasts for 5 minutes. This can be configured via the
ExpirationDurationMs
field in the app settings.