From faafb86a4132e2e53d0d1b52c2f0a0ebbe318da8 Mon Sep 17 00:00:00 2001 From: Uncled1023 Date: Sat, 16 Jun 2018 19:35:31 -0700 Subject: [PATCH] Updated ReadMe --- README.md | 59 +++++++++++++++++++++++++++++++++++++------------------ 1 file changed, 40 insertions(+), 19 deletions(-) diff --git a/README.md b/README.md index 1c49163..0470525 100644 --- a/README.md +++ b/README.md @@ -3,12 +3,12 @@ Teknik is a suite of services with attractive and functional interfaces. ## Features - * File Upload w/ encryption + * File Upload w/ client side encryption * Album Support * Pastebin * URL Shortening * Blogs - * Git Repositories + * Git Integration (Gitea) * Podcasts * Easy to use API * Flexible installation and configuration @@ -19,31 +19,24 @@ You can see a live demo [here](https://www.teknik.io). ## Requirements In order to run Teknik on your server, you'll need: - * IIS 7+ with URL Rewrite module or Apache with `mod_rewrite` enabled (Requires conversion of `web.config` files) - * ASP.NET MVC 5 - * .NET Framework 4.6.2 - * MS SQL Server - * hMailServer (If running email as well) + * IIS 7+, Nginx, or Apache + * [.NET Core 2.1 Runtime](https://www.microsoft.com/net/download/) (Or SDK if building the src) + * A SQL Server (MS SQL Server, MySQL, SQLite) + * [hMailServer](https://www.hmailserver.com/download) (If running email service) + * [Gitea](https://github.com/go-gitea/gitea) (If you want to have Git integration) * Web Mail Client (If you would like to have webmail) - * Gogs Service (If you want to have Git integration) ## Installation - * Clone the Teknik repository to your web root directory, or anywhere else you want to run Teknik from - -```nohighlight -cd /var/www -git clone https://git.teknik.io/Teknikode/Teknik -``` - - * Open the `Teknik.sln` file to build the project - * Copy the build files to your `wwwroot` directory - * Create a `ConnectionStrings.config` file in the `App_Data` directory and fill it with the following template and put in your SQL server connection details + * Set up Asp.Net Core to work with your system of choice - [Instructions](https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/?view=aspnetcore-2.1&tabs=aspnetcore2x) + * Download the latest release for your system - [Releases](https://git.teknik.io/Teknikode/Teknik/releases) + * Copy the files to your local web root directory. + * Create a `ConnectionStrings.config` file in the `App_Data` directory and fill it with the following template and put in your SQL server connection details. ```nohighlight + connectionString="" /> ``` @@ -51,6 +44,34 @@ git clone https://git.teknik.io/Teknikode/Teknik That's it, installation complete! If you're having problems, let us know through the [Contact](https://contact.teknik.io/) page. +## Building + +### Linux + * Clone the Teknik repository to a directory of your choosing. + +```nohighlight +cd ~ +mkdir src +cd ./src +git clone https://git.teknik.io/Teknikode/Teknik +``` + +* Install Node.js (Includes npm). +* Run the npm build script `npm run build`. + * This will install, move, bundle, and minify all the client side assets (JavaScript, CSS, Fonts, and Images). + * To see exactly what happens or to modify the bui;d. look at the `gulpfile.js` file. +* Run dotnet publish from the root directory of the repo to build and package the app into the release publish directory (for example: ./Teknik/bin/Release/netcoreapp2.1/publish). + +``` +dotnet publish --configuration Release +``` + +* Copy the files in the publish directory to where you want to run the website from. + +* Test the website: + * In the directory conatining the published files, run `dotnet Teknik.dll` + * In a browser, open http://localhost:5000/?sub=www + ## Authors and contributors * [Chris Woodward](https://www.teknik.io) (Creator, Developer) * [dronedaddy](https://www.behance.net/dronedaddy) (Logo Designer)