Giter VIP home page Giter VIP logo

worldcupleague's Introduction

Sample web api service

Aspnet.Core application simulating a drawing competition and storing data in a database.

It uses groups of teams from different countries in a randomized manner - ensuring that no group has 2 teams from the same country. Has a constraint for 4 or 8 groups as required business logic implementation.

Solution structure

./.devcontainer         ->devcontainer structure
./DrawDb                ->database structure project
./src
    ./DrawService       ->actual code implementation
    ./DrawServiceTest   ->unit code testing
    ./Server            ->webapp server
    WorldCupLeague.sln

The application uses OpenApi multi-version service implementation (OAS3 https://swagger.io/specification/) to expose swagger definition structure.

Code overview/running application

Clone this repository to a local folder.

It is recommended to use Docker to run application or for development purposes.

Unit tests and mocking functions are provided to verify that applicaiton is functioning as expected.

Using Visual Studio Code & Docker

To run application simple execute

> docker compose up -d

Then open https://localhost:5001/ - please wait for images to be built and database initialized.

Use Dev Containers ( https://code.visualstudio.com/docs/devcontainers/containers ) extension 'Dev Containers: Open folder in container...' option to open Visual Studio Code and debug application.

Using Microsoft Visual Studio

Open WorldCupLeague.sln solution and build, ensuring that apporpiate .net-sdk version is installed.

Configuration

For changing database hostname or credentials - data need to be updated in the following files :

./.devcontainer/mssql/postCreateCommand.sh ->if Docker is used, before building images

./src/DrawService/drawsettings.json -> new connection string used by application

If Docker is used docker-compose.yml files should be updated with node name.

worldcupleague's People

Contributors

lucianmat avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.