Website | InNoHassle ecosystem
https://innohassle.ru
Table of contents
Did you know that GitHub supports table of
contents by default π€
About
There are several services in the InNoHassle ecosystem for Innopolis University students.
You can access some of them through the InNoHassle website.
The website uses the API of InNoHassle services: Events, Music Room, Search.
Services
- ποΈ Schedule
- π Check all academic groups, electives, sports sections, cleaning schedules
- π² Export schedules to your favorite calendar app on your devices
- π Add groups to favorites to see them in your personal account
- π Hide and show groups in your personal account
- π Choose the format of the schedule - for a day, for a week, or for a month
- π΅ Music room
- π
See all bookings of the music room on a separate page
- π§ View your own bookings in your personal account
- π° Scholarship
- π Calculate your scholarship based on expected grades or GPA
- π Calculate what grades are needed to get the desired scholarship
- βΉοΈ Get detailed information about the types of scholarships at the University
More features
- π Sign in to your personal account using your student email
- π All relevant academic groups are on your personal dashboard
- π΄ Offline access to the website in case of a bad internet connection
- π Dark and π light theme of the interface
Technologies
Development
Getting started
- Install Node.js 20+, pnpm
- Install dependencies:
pnpm install
- Set up pre-commit hooks (for formatting and linting):
pnpm run prepare
- Copy environment variables file:
cp .env.example .env.local
- Edit variables in
.env.local
if you want to use a different API server
Do not change the ID of the trackers so that they are not enabled in development
- Set up your IDE to autoformat code with Prettier and use ESLint
When the API types change, run pnpm run generate-api
to generate new client types and functions.
Run for development
- Start development server:
pnpm run dev
- Open in the browser: http://localhost:3000
The page will be reloaded when you edit the code
To access API from local server, you have to set up a https proxy from 'local.innohassle.ru':
- Install Docker and Docker Compose
- Run
docker-compose up -d
in the root of the project
- Add
127.0.0.1 local.innohassle.ru
to your /etc/hosts file
- Access the website from the local server using the URL
https://local.innohassle.ru
- This will redirect all requests to
http://localhost:3000
, so don't stop your development server
- To stop the proxy, run
docker-compose down
Run for production
- Build the application:
pnpm run build
- Run the production-like server:
pnpm run preview
- Open in the browser: http://localhost:3000
Contributing
We are open to contributions of any kind.
You can help us with code, bugs, design, documentation, media, new ideas, etc.
If you are interested in contributing, please read our contribution guide.