Now that we've built the basic site, there might be time for some challenges! Below are a list of feature ideas that take advantage of other ASP.NET Core features:
- Add support external authentication like Google or Twitter authentication - https://docs.microsoft.com/en-us/aspnet/core/security/authentication/social/?view=aspnetcore-2.2
Serilog, a 3rd party logger to the front end and disable built in console logging.
- Allow attendees to upload images.
- Resize the image using ImageSharp
- Render Markdown for the session Abstract (instead of HTML) using a custom markdown tag helper.
- Change database provider to Postgres - https://www.nuget.org/packages/Npgsql/
- Change database provider to MySql - https://www.nuget.org/packages/MySql.Data/
- Write unit tests for the BackEnd Controllers
- Write unit tests for the FrontEnd Razor pages
- Write functional tests
- Make the names slugs instead of using IDs in the urls to navigate entities
- Configure retry policy using Polly library
- Support multiple conferences
- Add conference date
- Make the home page show upcoming conferences (within 5 days)
- Move agenda to separate page
- Add admin pages to manage:
- Speakers (allow speaker image upload)
- Add date filtering to the BackEnd APIs
- Add support for returning XML from the APIs
- Add links to related entities in the responses e.g. Attendee has a list of sessions, return URLs for each of the session resources related to Attendee.