1
0
mirror of https://git.teknik.io/Teknikode/Teknik.git synced 2023-08-02 14:16:22 +02:00
Go to file
2018-06-21 00:14:11 -07:00
Configuration Added security headers, and file download last modified/content type. 2018-06-18 19:07:03 -07:00
GitService Added Runtime Identifiers to all projects 2018-06-17 15:13:15 -07:00
Logging Added Runtime Identifiers to all projects 2018-06-17 15:13:15 -07:00
MailService Modified HMailService to use common initiator for deleting accounts 2018-06-20 20:01:36 -07:00
ServerMaint Changed Status to Stats 2018-05-10 20:12:33 -07:00
Teknik Made sure all cookies were strict and https only 2018-06-21 00:14:11 -07:00
Tracking Added .net core Piwik library. 2018-06-17 21:57:44 -07:00
Utilities Fixed formatting of blog/vault editors. 2018-06-20 21:36:05 -07:00
.editorconfig Ported existing projects to Asp.Net Core (Except ServerMaint) 2018-06-14 17:57:03 -07:00
.gitattributes Initial commit to add default .gitIgnore and .gitAttribute files. 2015-07-14 17:12:45 -07:00
.gitignore Added git version tracking to file, and modified footer to load from that file (not the assembly) 2018-06-16 23:02:26 -07:00
global.json Updated global sdk version 2018-06-16 20:33:59 -07:00
license.txt Added license and readme 2015-07-16 21:19:40 -07:00
README.md Modified install and build instructions to include more detail 2018-06-18 12:43:32 -07:00
Teknik.sln Added git version tracking to file, and modified footer to load from that file (not the assembly) 2018-06-16 23:02:26 -07:00

Teknik Web Services

Build Status

Teknik is a suite of services with attractive and functional interfaces.

Features

  • File Upload w/ client side encryption
  • Album Support
  • Pastebin
  • URL Shortening
  • Blogs
  • Git Integration (Gitea)
  • Podcasts
  • Easy to use API
  • Flexible installation and configuration
  • And much more...

You can see a live demo here.

Requirements

In order to run Teknik on your server, you'll need:

  • IIS 7+, Nginx, or Apache
  • .NET Core 2.1 Runtime (Or SDK if building the src)
  • A SQL Server (MS SQL Server, MySQL, SQLite)
  • hMailServer (If running email service)
  • Gitea (If you want to have Git integration)
  • Web Mail Client (If you would like to have webmail)

Installation

  • Set up Asp.Net Core to work with your system of choice - Instructions
  • Download the latest release of Teknik for your system - 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.
<connectionStrings>
  <add name="TeknikEntities"
    providerName="System.Data.SqlClient"
    connectionString="<Sql Server Connection String>" />
</connectionStrings>
  • After the first run, a Config.json file will be created in the App_Data directory. This will need to be edited with your configuration options.

That's it, installation complete! If you're having problems, let us know through the Contact page.

Building

Linux

  • Clone the Teknik repository to a directory of your choosing.
cd ~
mkdir src
cd ./src
git clone https://git.teknik.io/Teknikode/Teknik
  • Set up .Net Core SDK for you system of choice - Instructions
  • 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 build. 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:

Authors and contributors

License

BSD 3-Clause license

Development

You can view Teknik's Development Branch to see the current new features (It may not work, as it is a development branch).

Contributing

If you are a developer, we need your help. Teknik is a young project and we have lots of stuff to do. Some developers are contributing with new features, others with bug fixes. Any help you can give would be greatly appreciated!

Further information

If you want to know more about the features of Teknik, check the Help page. Also, if you're having problems with Teknik, let us know through the Contact page. Don't forget to give feedback and suggest new features! :)