Skip to content

tobinstultiens/Neuralm-Server

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Neuralm-Server

The neuralm server creates and manages the neural networks in the neuralm project.

These neural networks are created and mutated on the server and then distributed to the client. This way, we can combine the processing power of multiple computers and run numerous training sessions at the same time. This is needed to reduce the overall training time.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisites

You will need the following tools:

Setup

Follow these steps to get your development environment set up:

  1. Clone the repository.

  2. Create an appSettings.json file at the root of the Presentation.CLI layer with the connectionstring to the new database:

    {
        "Jwt": {
          "Secret": "{YOUR SECRET KEY, MINIMUM LENGTH OF 17!}" 
        },
        "Server": {
          "ClientPort": 9999,
    	  "RestPort": 9998,
          "Host": "{COMMON NAME OR FULLY QUALLIFIED DOMAIN NAME}"
        },
        "NeuralmDb": {
          "ConnectionString": "{MSSQL/MYSQL CONNECTION STRING}",
          "UseLazyLoading": true,
          "DbProvider": "{MSSQL/MYSQL (OR LEAVE IT EMPTY FOR IN MEMORY PROVIDER)}"
        } 
    }

    ConnectionString examples:

    MSSQL: "Server=(LocalDb)\\MSSQLLocalDB;Database=NeuralmDbContext;Trusted_Connection=True;MultipleActiveResultSets=true"
    MYSQL: "Server=localhost;Database=NeuralmDbContext;User=root;Password=;"
    
  3. Afterwards generate a self signed certificate using the script in powershell (Administrator mode!)

    New-SelfSignedCertificate -DnsName "{COMMON NAME OR FULLY QUALLIFIED DOMAIN NAME}" -CertStoreLocation "cert:\LocalMachine\My" -FriendlyName "NeuralmCert"
  4. Next, go to Tools > NuGet Package Manager > Package Manager Console in visual studio, To restore all dependencies:

    dotnet restore
    

    Followed by:

    dotnet build
    

    To make sure all dependencies were added succesfully, it should build without dependency warnings else you have probably not installed .NET core 2.2 SDK.

  5. Once the build has run successfully, start the server to confirm that the database connection is successful either by hitting F5 or go to Debug > Start. A console will launch and start initializing. Upon completion, the console will look like this:

    Screenshot

Running the tests

Run the tests using this command:

dotnet test

Deployment

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

See also the list of contributors who participated in this project.

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Acknowledgments

About

Neuralm Server is the backend of the neuralm project. It creates and mutates the neural networks and sends them to the client

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 90.3%
  • Vue 5.2%
  • TypeScript 4.4%
  • Other 0.1%