This is the third version of the TUMi app you know and love, currently the active client at tumi.esn.world.
Jump to local development here
If you are interested in learning how to use this, read the following docs. This gives you an idea about how the app works and benefits our ESN section.
The TUMi app is meant to improve the day to day business of an ESN section by automating all steps that take time when organising and running events. Additionally, it aims to give the section greater insight to what's going on.
Currently the app is made to support the processes inside the TUMi ESN section which operates in a decentralised and lean way. But it can support other modes of operation as well, just reach out.
- Events (learn more in the Event creation process)
- Template library: A place with templates for every event that the section has organised. Making it easy for members to find inspiration and organise something new.
- Event list: The main public part of the app is the event list that shows all planned events in list and calendar form, students and members can always see what's up here.
- Registration: The app can handle the entire registration process for events, this includes collecting money or additional information from every users.
- Event Organisation: The section members are supported with users lists and collection of Email addresses to easily prepare the event and reach all participants.
- Check in: At the event, every user can present a QR code that verifies their registration to the section member and also captures that the user attended the event.
- Feedback: After every event the users are asked to provide feedback automatically that helps improve future events.
- Section management
- Easily mark your members in the app to give them access to the functionality and keep an overview of your section.
- Collect digital receipts from members running an event and store them securely and easily found for bookkeeping.
- Instantly get a list of all members email addresses to invite them to your Assembly.
- Administration (learn more in the Administration features)
- Keep an overview about what's going on with lists of all users, all registrations and other relevant information.
- Know what you are up to with automatic statistics and graphs to show how you are doing.
- Also support organisers that are not the section if you want to promote an event.
- Registration management
- Users can cancel registrations until a specified time before the event starts and receive automatic refunds
- Users can swap places without having to manage the money as the system handles all transactions.
- Ease of use
- No need to know about development or server hosting as our platform can support multiple ESN sections.
- No need to pay as of now as we are running on a microsoft sponsorship and have no cost.
- Profit from continuous improvements as time goes on.
- Open source: the code is right here.
- Profit form customisation to make the tool right for your section as well.
- You can use a custom domain or get a
<section>.esn.world
domain form us.
Planned features ( also check the issues )
- Finances
- The app should be capable of listing all transactions the section makes and show the financial state at any time.
- Export lists of your events and their costs for taxes or STIBET.
- Keep track of which member paid what at which event and if they got their money back.
- Even support advanced use cases such as cash payment at an event or unforeseen costs.
- Social features
- The app should become more social, allowing the students to build a profile.
- People should be able to connect with others they met at events.
- Add more advanced signup methods such as waitlists or random spot assignments
- Customisation
- Make the app easily configurable for other sections to fit their needs.
- Offer a way to add some content pages in order to promote partners or share relevant information.
Make sure you have node installed, a good option is volta: https://volta.sh/
Install it to handle your node installation. The package.json
includes the node version that should be used and volta will automatically install it.
Clone the project
git clone https://github.com/heddendorp/section-app-client.git
Go to the project directory
cd section-app-client
Install dependencies
yarn install
This uses the server running on server.esn.world
which is also used by the live version.
yarn dev:light
Since the loccalhost
is mapped to TUMi by default, you can set your tenant in the local storage. Open your browsers devtools and run the following command in the console:
localStorage.setItem('tenantId', '<your ID>');
Your tenant id is the first part of your section's domain, e.g. tumi.esn.world
has the tenant id tumi
.
Relevant documentation for this project is listed below to give you a starting point.
- Angular docs
- Angular material docs
For things like the formfields and some buttons, this is the UI library. It would be nice to move further to Tailwind and reduce reliance on this library. - Apollo Angular
For data loading and most server communication. - TailwindCSS
For general styling in the app instead of custom CSS.