TUMi app
OR: the ESN section app
A web application to help ESN sections manage themselves, their events and payments.
Includes loads of features very specific to ESN sections and is open for anyone to be used.
Contributing
To find something to work on it's recommended to check the issues and look
at the Good first issue tag.
Commits
This repository follows the conventional commits. Please make sure to work you commit
messages according to the guidelines.
Local setup
Follow this guide to get the project up and running on your local machine.
Clone the project
git clone https://github.com/esn-tumi/app.git
cd app
# Install all dependencies
yarn installRun the client
Go to the project directory
cd legacy-appWithout local server (for frontend only)
This uses the server running on server.esn.world which is also used by the live version.
yarn dev:lightIf you need changes in the server and don't want to implement them yourself server you can line
out what the API should return for you feature and open an issue.
With local server
To fetch data you need to have the server running on localhost as well.
yarn devRun the server
The server requires a running instance of Postgres. You can use docker to run it:
docker run --name tumi-postgres -e POSTGRES_PASSWORD=postgres -p 5432:5432 -d postgresTo intialize or reset the database run the following commands:
cd server
yarn prisma:reset-devThis command will drop the entire database and re-create it with the latest schema and seed data.
If you want to inspect the data in the database run the following command:
yarn prisma:studio-devThen you can run the server with:
cd server
yarn install
yarn devTest accounts
You can sign up with any personal email address. However, if you want to use the test accounts, you can use the following credentials:
Admin
email: test1@esn.world
password: testuser1!
Section member
email: test2@esn.world
password: testuser2!
Watch out: sometimes it is surprisingly hard to log out of the app, make sure to clear the entire application storage in you dev tools and log out form tumi.esn.world if your users seems to get stuck.
Projects
As this repo is based on yarn workspaces you can find additional information in the folders for the specific projects.
What's on tumi.esn.world
Legacy App
Check this out for the frontend application that is currently the TUMi app. You can also learn more about the features and usage here.
Server
The server used for data access.
Tech Stack
TUMi Apps (Legacy app + events)
Client: Angular, Apollo Angular, Angular Material, TailwindCSS
Server
Server: Node, Express, Graphql Yoga, Prisma, pothos-graphql
Authentication
All the authentication is done with Auth0.