Skip to content

lkurzyniec/DevAdventCalendar

 
 

Repository files navigation

DevAdventCalendar

DevAdventCalendar web app for online competition for programmers.

Follow DevAdventCalendar Follow DevAdventCalendar

Build Deployment Quality
Build Deploy Quality Gate Status

Getting started

  1. Clone repository

    git clone https://github.com/WTobor/DevAdventCalendar.git
    
  2. Open /src/DevAdventCalendarCompetition/DevAdventCalendarCompetition.sln in VisualStudio 2019.

  3. Install CodeMaid to cleanup files (use default config or just import the one from solution /src/DevAdventCalendarCompetition/CodeMaid.config).

  4. Install .Net Core SDK v3.1.

Contributing

  1. Fork it!

  2. Checkout branch develop

    git checkout develop
    
  3. Create your branch (from branch develop)

    git checkout -b my-new-feature
    

    We are using git-flow, so create branch feature/new-feature (for new features) or hotfix/new-hotfix (for fixing bugs).

  4. Commit your changes (remember to check if code compiles without errors and tests pass)

    git commit -m 'Add some feature'
    
  5. Push to the branch

    git push origin my-new-feature
    
  6. Create a pull request to develop branch (the template has already been created, simply complete it)

Debugging

In order to send e-mails:

  • set up an e-mail account in appsettings.development.json file
"Email": {
    "Smtp": {	
      "Host": "smtp.gmail.com",	
      "Port": 587,	
      "Username": "email_to_change",
      "Password": "password_to_change"
    }
}
  • OR execute docker container run -d -p 8025:8025 -p 1025:1025 mailhog/mailhog command to run fake SMTP server in Docker container, then you can visit http://localhost:8025/ to watch your e-mails

Also, it is necessary to add new environment variable ASPNETCORE_ENVIRONMENT: Development for the main DevAdventCalendarCompetition project.

ENVIRONMENT

Start the application

Just run docker-compose up command in the /src/DevAdventCalendarCompetition/ directory and after successful start of services visit http://localhost:8081/ in your browser.

Used Tools

Swagger

Useful tool to check api endpoints. It is generated based on Controllers and attributes and can test any rest calls from this page. It is very helpful if you are using not razer page (Angular etc) or for mobile apps.

Can be access by: pagedomain (or localhost)/swagger/

Swagger

Swagger documentation

Docker

Docker is an open platform that enables developers and administrators to build images, ship, and run distributed applications in a loosely isolated environment called a container. This approach enables efficient application lifecycle management between development, QA, and production environments.

Application is using Docker to work on VPS. Additional Docker-compose helping with configure for all of this

Docker documentation

MailHog

MailHog is an email testing tool for developers. More info on GitHub page.

About

DevAdventCalendar web app

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • CSS 41.9%
  • C# 36.3%
  • HTML 17.7%
  • JavaScript 3.9%
  • Dockerfile 0.2%