Dot Net Assignment - Techdome
Dot Net Assignment - Techdome
com/company/techdome-solutions
techdome.io
Assignment
You need to create a .NET Core based Web API with following specification.
2. You need to use a InMemory database which should be accessed via Entity Framework Core
4. TodoController will be protected via [Authorize] header and only authenticated users will have
access to the controller. There will be two roles in the database for user with different set of access.
o User: These users will be able to get list of todo items, when accessing other APIs, they should get a
HTTP 401: Unauthorized error
o Admin: Admin users will be able to access all the APIs
5. In AuthController as response to successful login, a JWT token will return in response. The JWT token
should have following fields encoded:
o First Name
o Last Name
o Email
o IsActive
o Roles
6. The code should be uploaded to a public GitHub repository and its link should be shared with the
moderator or interviewer.
• Please document all the controllers and APIs by using proper comments throughout the application.
• Proper indentation and naming of the variables is highly appreciated.
• Verbose commit messages will be appreciated.
• A ReadMe file in the GitHub repo root folder explaining what the API does and small
documentation of each API can be beneficial.
[email protected]
+91-7987249341 pg. 0
203 Vikram Heights, 25/2, Yashwant Niwas Road, Near SBI Bank, Indore (M.P.), 452009
linkedin.com/company/techdome-solutions
techdome.io
Bonus Points
These are not must-have part of the assignment but good to have. Having these things implemented can
further help to prioritize your profile as well as can help you score better opportunity at Techdome.
• The application is deployed to a accessible endpoint with Swagger documentation.
• The GitHub repository has GitHub actions for automatic deployment.
• Comments inside the code are welcome to explain overall execution.
• A proper readme file with running instructions.
• Configurations stored as environment variables.
• Containerization of the application.
pg. 1
Hyderabad / Indore