{"id":13678514,"url":"https://github.com/rolling-scopes/rsschool-app","last_synced_at":"2025-05-11T03:46:44.766Z","repository":{"id":37458292,"uuid":"134417832","full_name":"rolling-scopes/rsschool-app","owner":"rolling-scopes","description":"An application for the RS School education process","archived":false,"fork":false,"pushed_at":"2025-05-10T15:03:09.000Z","size":31270,"stargazers_count":10124,"open_issues_count":97,"forks_count":213,"subscribers_count":33,"default_branch":"master","last_synced_at":"2025-05-11T03:46:38.960Z","etag":null,"topics":["hacktoberfest"],"latest_commit_sha":null,"homepage":"https://app.rs.school","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rolling-scopes.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"docs/code-of-conduct.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":["dzmitry-varabei"],"patreon":null,"open_collective":"rsschool","ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2018-05-22T13:18:23.000Z","updated_at":"2025-05-10T22:08:23.000Z","dependencies_parsed_at":"2025-05-08T17:15:29.929Z","dependency_job_id":null,"html_url":"https://github.com/rolling-scopes/rsschool-app","commit_stats":{"total_commits":2418,"total_committers":78,"mean_commits":31.0,"dds":0.5806451612903225,"last_synced_commit":"2577812b4b64c5bd889407bb2ed852497ff223ab"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rolling-scopes%2Frsschool-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rolling-scopes%2Frsschool-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rolling-scopes%2Frsschool-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rolling-scopes%2Frsschool-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rolling-scopes","download_url":"https://codeload.github.com/rolling-scopes/rsschool-app/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253514555,"owners_count":21920334,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hacktoberfest"],"created_at":"2024-08-02T13:00:54.448Z","updated_at":"2025-05-11T03:46:44.744Z","avatar_url":"https://github.com/rolling-scopes.png","language":"TypeScript","funding_links":["https://github.com/sponsors/dzmitry-varabei","https://opencollective.com/rsschool","https://opencollective.com/rsschool/contribute","https://opencollective.com/rsschool/organization/0/website","https://opencollective.com/rsschool/organization/1/website"],"categories":["TypeScript"],"sub_categories":[],"readme":"[![Deploy](https://github.com/rolling-scopes/rsschool-app/actions/workflows/deploy.yaml/badge.svg?branch=master)](https://github.com/rolling-scopes/rsschool-app/actions/workflows/deploy.yaml)\n\n\u003cimg src=\"https://www.rs.school/images/rs_school.svg\" width=\"250px\"/\u003e\n\n# RS School App\n\nThe [app.rs.school](https://app.rs.school) is an application for the [RS School](https://rs.school) education process. It helps thousands students to become Front-end/Back-end/Mobile/Data Science engineers.\n\n\u003cimg src=\"https://user-images.githubusercontent.com/618807/138608245-f00471ce-f982-4901-a32e-7246720ed13b.png\" width=\"600px\"/\u003e\n\n## Monitoring\n\nhttps://status.rs.school/\n\n## Technology Overview\n\n### Stack\n\n- Language: [Typescript](https://www.typescriptlang.org/)\n- Front-end: [Next.js](https://nextjs.org/) / [React](https://reactjs.org/)\n- Back-end: [NestJS](https://nestjs.com/) and [Koa.js](https://koajs.com/) (deprecated backend) / [Node.js](https://nodejs.org/en/)\n- End-to-end: [Playwright](https://playwright.dev/)\n- Database: [PostgreSQL](https://www.postgresql.org/)\n- Deployment: [Podman](https://podman.io/)\n\n### Infrastructure\n\n- Cloud: [AWS EC2](https://aws.amazon.com/ec2/), [AWS RDS](https://aws.amazon.com/rds/postgresql/), [AWS S3](https://aws.amazon.com/s3/), [AWS CloudWatch](https://aws.amazon.com/cloudwatch/)\n- Monitoring: [Sentry](https://rs-school.sentry.io/), [Checkly](https://app.checklyhq.com/)\n- CI/CD: [Github Actions](https://github.com/rolling-scopes/rsschool-app/tree/master/.github/workflows)\n\n## Getting Started\n\n### Prerequisites\n\nPlease install the following software before starting development:\n\n- [Git 2.10+](https://git-scm.com/downloads)\n- [Node.js LTS](https://nodejs.org/en/download/)\n- [Podman](https://podman.io/docs/installation)\n- [podman-compose](https://github.com/containers/podman-compose)\n\n### Steps\n\n- Clone [repository](https://github.com/rolling-scopes/rsschool-app)\n- Run `npm install` (installs dependencies in the root folder and `client` / `server` folders.)\n- Run `npm run db:up` (starts local database)\n- Run `npm run db:restore` (restore a test DB snapshot)\n- Make a copy of `server/.env.example` and `nestjs/.env.example` and rename it to `server/.env` and `nestjs/.env` respectively.\n- Run `npm start` (starts application by running Next.js and REST API server)\n- Open `http://localhost:3000` in a browser\n- See more in [CONTRIBUTING](https://github.com/rolling-scopes/rsschool-app/blob/master/CONTRIBUTING.md) guide\n\n### Running docs locally\n\n- Install docsify globally: `npm i -g docsify-cli`\n- Run `docsify serve -p 4000 docs`\n\n## Contributing\n\nSee [CONTRIBUTING](https://github.com/rolling-scopes/rsschool-app/blob/master/CONTRIBUTING.md) guide\n\n## Contributors\n\n### Code Contributors\n\nThis project exists thanks to all the people who contribute. [[Contribute](CONTRIBUTING.md)].\n\n\u003ca href=\"https://github.com/rolling-scopes/rsschool-app/graphs/contributors\"\u003e\n  \u003cimg src=\"https://contrib.rocks/image?repo=rolling-scopes/rsschool-app\" /\u003e\n\u003c/a\u003e\n\n_Made with [contrib.rocks](https://contrib.rocks)_\n\n### Financial Contributors\n\nBecome a financial contributor and help us sustain our community. [[Contribute](https://opencollective.com/rsschool/contribute)]\n\n#### Individuals\n\n\u003ca href=\"https://opencollective.com/rsschool\"\u003e\u003cimg src=\"https://opencollective.com/rsschool/individuals.svg?width=890\"\u003e\u003c/a\u003e\n\n#### Organizations\n\nSupport this project with your organization. Your logo will show up here with a link to your website. [[Contribute](https://opencollective.com/rsschool/contribute)]\n\n\u003ca href=\"https://opencollective.com/rsschool/organization/0/website\"\u003e\u003cimg src=\"https://opencollective.com/rsschool/organization/0/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/rsschool/organization/1/website\"\u003e\u003cimg src=\"https://opencollective.com/rsschool/organization/1/avatar.svg\"\u003e\u003c/a\u003e\n\n## License\n\n[Mozilla Public License 2.0](https://github.com/rolling-scopes/rsschool-app/blob/master/LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frolling-scopes%2Frsschool-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frolling-scopes%2Frsschool-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frolling-scopes%2Frsschool-app/lists"}