App for scheduling appointments, events and to do with the ability to create recurring events, set reminders and tasks, and invite others participants with email notification.
Check it now on webcalendar.tk
This project was created by andrewpetrenko1, RyzhkovaAnastasia and valerachuk under the guidance of ilyaskav on Apriorit's «Advanced .NET Web Development» course.
A large part of code was covered by unit tests.
- Creating project structure (server + client)
- Authentication
- Scheduled email notifications
- Exporting event and calendar
- Unit tests
- Deploying project
- Back-end
- Front-end
- Calendars
- You can crete multiple calendars. For example, personal and business
- Events
- Events are attached to calendars
- Events can be shared to other users
- You can attach a file to an event
- Events can be recurring i.e. repeat every day or week
- Export
- You can export an event or a calendar as ics file
- Email notifications
- You will be notified when an event begins
- Email field
- Password field
- Login button
- Sign Up form link
- First name field
- Last name field
- Email field
- Password field
- Register button
- Sign In form link
- Calendar link - active
- User page link
SignOut
button- First and last name. Can be changed in Account settings
- Account settings link
Create event
button. Opens form to schedule an event- ➕ button. Opens form to create a calendar
- List of calendars
- ☑️. Projects events of selected calendar to the grid (17)
Edit calendar
button. Opens a calendar edit formDelete calendar
button. Deletes a calendar. Default calendar can't be deletedPrevious
button. Navigates to the previous day/week/monthNext
button. Navigates to the next day/week/monthMonth
button. Selects month viewWeek
button. Selects week viewDay
button. Selects day view- Calendar grid
- List of events in selected day. Event can be moved to another day, using drag & drop. Clicking on an event opens info about it. Here the event can be exported
Edit event
button. Opens an event edit formDelete event
button. Deletes an event
- Event info section - active
- Attach file section. Allows you to attach a file to the event
- Name field
- Venue field
- Date and time when the event begins
- Date and time when the event ends
- Calendar select. Calendar where the event will be located
- Reiteration select. Possible options: None, Every day, Every week
- Notification select. Possible options: None, In 10 minutes, In 15 minutes, In 30 minutes, In 1 hour
- List of guests that will be invited to this event. Event will be added to their default calendar
Save
button. Saves the eventClose
button. Closes the form
User page has two sections: Account settings and Calendar export
Allows you to change first and last name, enable / disable email notifications.
- Calendar link
- User page link - active
- Account settings section - active
- Calendar export section
- First name field
- Last name field
- Email field. It can't be changed
- Email notifications ☑️. Enables/disabled email notifications
Save
button. Applies changes
Allows you to export calendars in ics format. You can specify date period to export.
- Account settings section
- Calendar export section - active
- From and To field. Allows you to specify date range of calendars
- When ☑️ is checked you can specify date by clicking field
- Calendar list to export. You can specify calendars to export
Export
button. Starts downloading