Please direct any questions to @Leotsarev or leo@joinrpg.ru
This guide presumes that you have Windows. If you have other OS, you should replace Windows-specific components with respective counterparts. I.e. VS → VS Code.
- Start with forking this repository on github.
- Download Visual Studio 2019. Community Edition should be enough.
- Recommended to install Github Extension (options during install). See more on https://visualstudio.github.com/.
- Download .Net Core 5 SDK.
Download SQL Server Express LocalDB 2017 and important! download the latest cumulative update for SQL Server 2017
- Create an instance of localdb from command prompt, if you don't have
any
sqllocaldb create MSSQLLocalDB
- Input you github credentials into Visual Studio and clone your repository. Or clone repository using Git cmd client or Github for windows or whatever you like.
- Perform the following git commands (you may need to restart VisualStudio in order to see newly added remote repository under TeamExplorer):
git remote add upstream https://github.com/joinrpg/joinrpg-net.git
git fetch upstream
- Compile VS project and observe package restoring and everything happens
- Tap F5 and you should be there.
- First start can take a long time while Local DB will create database for first time.
- If you got error about "The argument 2 of the JSON_MODIFY should be string literal", you have outdated version of LocalDb. Updating it could be tricky, see here
- If you don't have Joinrpg/App_Data folder in your solution directory, create it. Otherwise you
may get
System cannot find the file specified
error on database creation stage. - Some features will be disabled — it's all about integration to Remote systems — email, social services login etc. If you want to test this, you will need to provide correct keys in appsettings.json.
- First logged-in user will have his email automatically confirmed and adminstrator flag will be set. If you want more users, you have to change DB or setup mail integration.
- 1 branch = 1 feature.
- Test your changes locally, etc.
- Execute
dotnet format
, to apply project's code styles - Commit.
- Rebase your changes on top of
upstream/master
- Open pull request via Github UI from your branch to
joinrpg/joirpg-net/master
We using a lot of telegram chats to talk about Joinrpg. Developer's question could be addressed to https://t.me/joinchat/AAAAAEKdDvRjI0Z1n79EJA сhat.
Some common code practices, used amongst this repository
- If possible, avoid the usage of regular expressions