https://github.com/shchoholiev/student-notes
Web app for students to add notes and help each other in the group to get better studying results.
https://github.com/shchoholiev/student-notes
angular asp-net-core azure-blob-storage dot-net-6 entity-framework-core mssql-database web-api
Last synced: 2 months ago
JSON representation
Web app for students to add notes and help each other in the group to get better studying results.
- Host: GitHub
- URL: https://github.com/shchoholiev/student-notes
- Owner: Shchoholiev
- Created: 2022-05-06T13:54:13.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2025-05-03T21:07:38.000Z (about 1 year ago)
- Last Synced: 2025-11-13T09:03:09.236Z (8 months ago)
- Topics: angular, asp-net-core, azure-blob-storage, dot-net-6, entity-framework-core, mssql-database, web-api
- Language: C#
- Homepage:
- Size: 321 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Student Notes
A web application designed to facilitate collaborative note-taking among students, enabling them to share and enhance their study materials within a group setting.
## Table of Contents
- [Features](#features)
- [Stack](#stack)
- [Installation](#installation)
- [Prerequisites](#prerequisites)
- [Setup Instructions](#setup-instructions)
- [Configuration](#configuration)
- [Examples](#examples)
## Features
- **Collaborative Note-Taking**: Students can create, edit, and share notes with peers.
- **User Authentication**: Secure login and registration system.
- **Note Organization**: Categorize notes by subjects or topics for easy retrieval.
- **Search Functionality**: Quickly find notes using keywords.
- **File Attachments**: Upload and attach files to notes.
- **Commenting System**: Engage in discussions by commenting on notes.
- **Version Control**: Track changes and revert to previous versions of notes.
## Stack
- **Frontend**: Angular
- **Backend**: ASP.NET Core
- **Database**: Microsoft SQL Server
- **ORM**: Entity Framework Core
- **Cloud Storage**: Azure Blob Storage
- **Language**: C# (Backend), TypeScript (Frontend)
- **Framework**: .NET 6
## Installation
### Prerequisites
- **Node.js**: Required for Angular development.
- **Angular CLI**: To manage Angular projects.
- **.NET 6 SDK**: For building and running the ASP.NET Core backend.
- **SQL Server**: Database management system.
- **Azure Account**: For Blob Storage (optional for local development).
### Setup Instructions
1. **Clone the Repository**:
```bash
git clone https://github.com/Shchoholiev/student-notes.git
cd student-notes
```
2. **Backend Setup**:
- Navigate to the backend project directory:
```bash
cd StudentNotes
```
- Restore dependencies:
```bash
dotnet restore
```
- Apply database migrations:
```bash
dotnet ef database update
```
- Run the backend server:
```bash
dotnet run
```
3. **Frontend Setup**:
- Navigate to the frontend project directory:
```bash
cd StudentNotes.App
```
- Install Angular dependencies:
```bash
npm install
```
- Start the Angular development server:
```bash
ng serve
```
The application should now be accessible at `http://localhost:4200`.
## Configuration
- **Database Connection**: Configure the connection string in `appsettings.json` located in the backend project directory.
- **Azure Blob Storage**: Set up Azure Blob Storage credentials in the backend project's configuration files. For local development without Azure, consider using local storage options.
## Examples
- **Creating a Note**: After logging in, navigate to the "Create Note" section, enter the note details, and save.
- **Sharing a Note**: Once a note is created, use the "Share" option to generate a link or invite peers via email.
- **Commenting on a Note**: Open a note and use the comment section at the bottom to add your input or ask questions.
- **Uploading Attachments**: While creating or editing a note, use the "Attach File" option to upload relevant documents or images.