From 0cefefb76807146a945d5cdb8b073a7cf615e4f0 Mon Sep 17 00:00:00 2001 From: Polianin Nikita Date: Fri, 28 Jun 2024 22:45:19 +0300 Subject: [PATCH] docs: add README.md --- README.md | 106 ++++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 92 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index 60e98df..0905404 100644 --- a/README.md +++ b/README.md @@ -1,27 +1,105 @@ -# Frontend +# MIREA schedule by Winsomnia -This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 17.1.2. +[![Angular Release](https://img.shields.io/badge/v18.0-8?style=flat-square&label=Angular&labelColor=512BD4&color=606060)](https://github.com/angular/angular-cli) +[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg?style=flat-square)](https://opensource.org/licenses/MIT) -## Development server +This project provides a Web interface for working with the MIREA schedule. -Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The application will automatically reload if you change any of the source files. +The main task is to provide a convenient and flexible interface for accessing the schedule via a web browser. -## Code scaffolding +## Purpose -Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`. +The purpose of this project is designed to provide a user-friendly web interface for working with the schedule of training sessions of the Moscow Technological University (MIREA). -## Build +In a situation where existing resources provide limited functionality or an inconvenient interface, this project aims to provide users with a simple and effective interface for accessing information about the class schedule. -Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory. +Developing your own components and communicating with the schedule API allows you to provide flexibility, extensibility and usability of the application. -## Running unit tests +## Features -Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io). +- View the schedule. +- Select data by professor, by group and other criteria. +- Use the convenient setup wizard (Wizard Installation) to configure the Backend via a Web browser. +- Administer the site through the built-in tools. -## Running end-to-end tests +## Project status -Run `ng e2e` to execute the end-to-end tests via a platform of your choice. To use this command, you need to first add a package that implements end-to-end testing capabilities. +The project is under development. Further development will be aimed at expanding the functionality and improving the user experience. -## Further help +# Environment Variables -To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page. +Before starting the project, you need to fill in your data in the [`environment.ts`](src/environments/environment.ts) file. + +| Variable | Example | Description | +|------------|----------------------------------|----------------------------------------------------| +| apiUrl | https://mirea.winsomnia.net/api/ | Provides an address for accessing the API | +| maxRetry | 5 | The number of attempts in case of a failed attempt | +| retryDelay | 3000 | How long should wait in ms before the next attempt | + +# Installation + +If you want to make a fork of this project or place the Web application on your hosting yourself, then follow the instructions below. + +To install using a pre-built application, follow these steps: + +1. [Install Node.js](#install-nodejs) +2. [Clone Git](#clone-git) +3. [Install dependency](#install-dependency) +4. Serve or build static files + +* [Serve](#serve) +* [Build](#build) + +### Install Node.js + +Install Node.js for further work or building the application. Go to the [official website Node.js](https://nodejs.org/en/download/package-manager ) and select the required packages. + +### Clone Git + +Clone the repository + + ```bash + git clone https://git.winsomnia.net/Winsomnia/MireaFrontend.git + ``` + +Go to the project directory: + +```bash +cd MireaFrontend +``` + +### Install dependency + +Install the necessary dependencies. You can use npm or pnpm: + +```bash +npm install +``` + +### Serve + +Launch the application using: + +```bash +ng serve +``` + +The application will be available at http://localhost:4200. + +### Build + +Run the build of the project using: + +```bash +ng build +``` + +The project files will be in the following directory: `dist/frontend` + +# Contribution and Feedback + +You can contribute to the project by creating pull requests. Any feedback is welcome to improve the project. + +# License + +This project is licensed under the [MIT License](LICENSE.txt).