Skip to content

marcoklein/impromat

Repository files navigation

Release

website

Impromat

Developed by improvisers — made for improvisers. Impromat offers all necessary features to plan your upcoming improv sessions with all fundamental exercises and games. Impromat is meant to be the go to app for improvisational theatre.

Access the app at impromat.app.

What is the roadmap?

On a visionary level, Impromat should be the supporting application for any improvisational theatre activities.

Our mission is the fostering of knowledge exchange for improv workshops and exercises and build an active global community around it.

As first steps, Impromat will support the workshop facilitation journey from:

  1. Planning a Workshop
  2. Facilitating the Workshop
  3. Sharing the Workshop

For an up-to-date overview see Impromats Milestones.

How can I contribute?

First of all, by using it, creating new exercises and games and share your workshop creations with the community. Contribute with bug reports or new feature ideas through issues.

Second of all, Impromat is open-source, thus you can also get your hands dirty and pick a good first issue for getting started.

How can I join with coding?

The following section describes the technical quick start for running Impromat locally.

Prerequisites

Getting started

Clone repository via SSH:

git clone git@github.com:marcoklein/impromat.git

...or via HTTPS

git clone https://github.com/marcoklein/impromat.git

Install all dependencies:

yarn install

Build impromat frontend and impromat backend:

yarn workspaces foreach --from '{impromat,impromat-api}' run build

Run database migrations:

yarn workspace impromat-api run prisma:migrate

Seed database:

yarn workspace impromat-api run prisma db seed

Start the development server for frontend and backend:

yarn dev

Now you should have a running local version of the impromat application at http://localhost:3000.

Explore project graph:

yarn dlx nx graph

The folke.vscode-monorepo-workspace extension can list all monorepo extensions in the workspace. Use the following command in the command plate after installation to activate them:

>monorepo: Select Workspace Folders

Changelog and Version Bumps

The project uses changesets for maintaining changelogs and version bumps across packages.

For adding a changeset run the following command from any workspace:

yarn changeset:add

Impromat adheres to Semantic Versioning.

Update all dependencies

We use ncu for updating all dependencies across the monorepo.

yarn ncu

Upgrade a workspace to latest dependencies:

yarn ncu --configFileName .ncurc-latest.json --workspace impromat-api -u